* refactored subprocess and made it 20%+ faster by using ujson
+ added watchdog dep for sneakernet + added ujson dep for faster json esp in powmaster
parent
8d372cccfb
commit
8804c13225
|
@ -14,3 +14,4 @@ psutil==5.7.0
|
||||||
filenuke==0.0.0
|
filenuke==0.0.0
|
||||||
mimcvdf==1.0.0
|
mimcvdf==1.0.0
|
||||||
watchdog==0.10.2
|
watchdog==0.10.2
|
||||||
|
ujson==2.0.3
|
||||||
|
|
|
@ -216,6 +216,15 @@ streamedrequests==1.0.0 \
|
||||||
toomanyobjs==1.1.0 \
|
toomanyobjs==1.1.0 \
|
||||||
--hash=sha256:99e27468f9dad19127be9e2fb086b42acd69aed9ad7e63cef74d6e4389be0534 \
|
--hash=sha256:99e27468f9dad19127be9e2fb086b42acd69aed9ad7e63cef74d6e4389be0534 \
|
||||||
# via -r requirements.in
|
# via -r requirements.in
|
||||||
|
ujson==2.0.3 \
|
||||||
|
--hash=sha256:0c23f21e8d2b60efab57bc6ce9d1fb7c4e96f4bfefbf5a6043a3f3309e2a738a \
|
||||||
|
--hash=sha256:2ab88e330405315512afe9276f29a60e9b3439187b273665630a57ed7fe1d936 \
|
||||||
|
--hash=sha256:3d1f4705a4ec1e48ff383a4d92299d8ec25e9a8158bcea619912440948117634 \
|
||||||
|
--hash=sha256:6217c63a36e9b26e9271e686d212397ce7fb04c07d85509dd4e2ed73493320f8 \
|
||||||
|
--hash=sha256:7ae13733d9467d16ccac2f38212cdee841b49ae927085c533425be9076b0bc9d \
|
||||||
|
--hash=sha256:bd2deffc983827510e5145fb66e4cc0f577480c62fe0b4882139f8f7d27ae9a3 \
|
||||||
|
--hash=sha256:c8369ef49169804944e920c427e350182e33756422b69989c55608fc28bebf98 \
|
||||||
|
# via -r requirements.in
|
||||||
unpaddedbase32==0.2.0 \
|
unpaddedbase32==0.2.0 \
|
||||||
--hash=sha256:4aacee75f8fd6c8cf129842ecba45ca59c11bfb13dae19d86f32b48fa3715403 \
|
--hash=sha256:4aacee75f8fd6c8cf129842ecba45ca59c11bfb13dae19d86f32b48fa3715403 \
|
||||||
--hash=sha256:b7b780c31d27d55e66abf6c221216a35690ee8892c2daacff7f2528e229bd9c3 \
|
--hash=sha256:b7b780c31d27d55e66abf6c221216a35690ee8892c2daacff7f2528e229bd9c3 \
|
||||||
|
|
|
@ -1,22 +1,20 @@
|
||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
"""
|
"""Onionr - Private P2P Communication.
|
||||||
Onionr - Private P2P Communication
|
|
||||||
|
|
||||||
Multiprocess proof of work
|
Multiprocess proof of work
|
||||||
"""
|
"""
|
||||||
|
|
||||||
import os
|
import os
|
||||||
from multiprocessing import Pipe, Process
|
from multiprocessing import Pipe, Process
|
||||||
import threading
|
import threading
|
||||||
import time
|
import time
|
||||||
import json
|
import onionrproofs
|
||||||
import secrets
|
|
||||||
|
import ujson as json
|
||||||
|
|
||||||
import logger
|
import logger
|
||||||
import onionrproofs
|
|
||||||
import onionrcrypto as crypto
|
import onionrcrypto as crypto
|
||||||
from onionrutils import bytesconverter
|
from onionrutils import bytesconverter
|
||||||
from .blocknoncestart import BLOCK_NONCE_START_INT
|
|
||||||
|
|
||||||
"""
|
"""
|
||||||
This program is free software: you can redistribute it and/or modify
|
This program is free software: you can redistribute it and/or modify
|
||||||
|
@ -110,11 +108,12 @@ class SubprocessPOW:
|
||||||
|
|
||||||
def do_pow(self, pipe):
|
def do_pow(self, pipe):
|
||||||
"""find partial hash colision generating nonce for a block"""
|
"""find partial hash colision generating nonce for a block"""
|
||||||
nonce = -secrets.randbelow(10**10)
|
nonce = 0
|
||||||
data = self.data
|
data = self.data
|
||||||
metadata = self.metadata
|
metadata = self.metadata
|
||||||
puzzle = self.puzzle
|
puzzle = self.puzzle
|
||||||
difficulty = self.difficulty
|
difficulty = self.difficulty
|
||||||
|
|
||||||
while True:
|
while True:
|
||||||
# Break if shutdown received
|
# Break if shutdown received
|
||||||
if pipe.poll() and pipe.recv() == 'shutdown':
|
if pipe.poll() and pipe.recv() == 'shutdown':
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
1585619396
|
1585902463
|
Loading…
Reference in New Issue