btcrecover icon indicating copy to clipboard operation
btcrecover copied to clipboard

seedrecovery.py running with a 3090 warning error

Open joelqc1 opened this issue 10 months ago • 5 comments

I have this error, when i have been working for some minutes.

Any idea someone? Also what it means "warning generated"? Where i can see the warning.

Thank's!

1 x NVIDIA RTX 3090 24GB 1 x i3-10100 CPU @ 3.60GHz 8GB RAM DDR4


2024-04-24 15:25:53 : Using 8 worker threads
Killed47200  elapsed: 0:45:20  rate: 100.33 kP/s
root@hive1008:~/seed/btcrecover# Process SpawnPoolWorker-4:
Traceback (most recent call last):
  File "/usr/lib/python3.6/multiprocessing/pool.py", line 125, in worker
    put((job, i, result))
  File "/usr/lib/python3.6/multiprocessing/queues.py", line 347, in put
    self._writer.send_bytes(obj)
  File "/usr/lib/python3.6/multiprocessing/connection.py", line 200, in send_bytes
    self._send_bytes(m[offset:offset + size])
  File "/usr/lib/python3.6/multiprocessing/connection.py", line 404, in _send_bytes
    self._send(header + buf)
  File "/usr/lib/python3.6/multiprocessing/connection.py", line 368, in _send
    n = write(self._handle, buf)
BrokenPipeError: [Errno 32] Broken pipe

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.6/multiprocessing/process.py", line 258, in _bootstrap
    self.run()
  File "/usr/lib/python3.6/multiprocessing/process.py", line 93, in run
    self._target(*self._args, **self._kwargs)
  File "/usr/lib/python3.6/multiprocessing/pool.py", line 130, in worker
    put((job, i, (False, wrapped)))
  File "/usr/lib/python3.6/multiprocessing/queues.py", line 347, in put
    self._writer.send_bytes(obj)
  File "/usr/lib/python3.6/multiprocessing/connection.py", line 200, in send_bytes
    self._send_bytes(m[offset:offset + size])
  File "/usr/lib/python3.6/multiprocessing/connection.py", line 404, in _send_bytes
    self._send(header + buf)
  File "/usr/lib/python3.6/multiprocessing/connection.py", line 368, in _send
    n = write(self._handle, buf)
BrokenPipeError: [Errno 32] Broken pipe
Process SpawnPoolWorker-5:
Traceback (most recent call last):
  File "/usr/lib/python3.6/multiprocessing/pool.py", line 125, in worker
    put((job, i, result))
  File "/usr/lib/python3.6/multiprocessing/queues.py", line 347, in put
    self._writer.send_bytes(obj)
  File "/usr/lib/python3.6/multiprocessing/connection.py", line 200, in send_bytes
    self._send_bytes(m[offset:offset + size])
  File "/usr/lib/python3.6/multiprocessing/connection.py", line 404, in _send_bytes
    self._send(header + buf)
  File "/usr/lib/python3.6/multiprocessing/connection.py", line 368, in _send
    n = write(self._handle, buf)
BrokenPipeError: [Errno 32] Broken pipe

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.6/multiprocessing/process.py", line 258, in _bootstrap
    self.run()
  File "/usr/lib/python3.6/multiprocessing/process.py", line 93, in run
    self._target(*self._args, **self._kwargs)
  File "/usr/lib/python3.6/multiprocessing/pool.py", line 130, in worker
    put((job, i, (False, wrapped)))
  File "/usr/lib/python3.6/multiprocessing/queues.py", line 347, in put
    self._writer.send_bytes(obj)
  File "/usr/lib/python3.6/multiprocessing/connection.py", line 200, in send_bytes
    self._send_bytes(m[offset:offset + size])
  File "/usr/lib/python3.6/multiprocessing/connection.py", line 404, in _send_bytes
    self._send(header + buf)
  File "/usr/lib/python3.6/multiprocessing/connection.py", line 368, in _send
    n = write(self._handle, buf)
BrokenPipeError: [Errno 32] Broken pipe
/usr/lib/python3.6/multiprocessing/semaphore_tracker.py:143: UserWarning: semaphore_tracker: There appear to be 7 leaked semaphores to clean up at shutdown
  len(cache))`

joelqc1 avatar Apr 24 '24 14:04 joelqc1

Yea these warnings are normal with the latest drivers, everything still works normally though.

What kind of recovery you doing? Does enabling --no-dupchecks fix it? (You are probably just running out of memory)

3rdIteration avatar Apr 24 '24 20:04 3rdIteration

Yes dupchecks enabled, when i have that error the process ends. And i lose all the job done :C Always around the 1-2 hour of work, stops with that issue.

I'm recovering 3 words from a 12 word seed phrase.

Now in another server: i5 12vCPUs 6 x 3090 32GB RAM

python3 seedrecover.py --wallet-type bip39 --addrs "zzzzzzzzzzzzzzzzz" --no-dupchecks --tokenlist tokenlist.txt --addr-limit 10 --mnemonic-length 12 --bip32-path "m/44'/0'/0'/0/0" --language en --no-eta

I'm not sure if the gpu are working allright, due to without "--enable-opencl" i'm running 48 kP/s.

python3 seedrecover.py --wallet-type bip39 --addrs "zzzzzzzzzzzzzzzzz"--no-dupchecks --tokenlist tokenlist.txt --addr-limit 10 --mnemonic-length 12 --bip32-path "m/44'/0'/0'/0/0" --language en --no-eta --enable-opencl --opencl-devices 0 1 2 3 4 5 --threads 10

But with opencl enabled and 6 x 3090, with thread limit at 10, it works at 100-120 kP/s, lookint at the resources used of the gpus, any gpu is working at all.

joelqc1 avatar Apr 24 '24 21:04 joelqc1

So why are you using tokenlists and GPU if just recovering three missing words? If you know the position of the words it's a straightforward recovery that will be done in a day or less on that cpu?

3rdIteration avatar Apr 24 '24 22:04 3rdIteration

Yes i know the exact position of the three unknow words.

I use tokenlist like this:

^1^word
^2^word
^3^word
^4^word
^5^word
^6^word
abandon ability able about above absent absorb abstract absurd (all english bip39 words)
abandon ability able about above absent absorb abstract absurd (all english bip39 words)
abandon ability able about above absent absorb abstract absurd (all english bip39 words)
^10^word
^11^word
^12^word

How i can set the exact position with straightforward recovery? Also you know why the gpus are not working properly as the example from above?

Thank you!

joelqc1 avatar Apr 24 '24 23:04 joelqc1

That isn't how you should be doing this, but this isn't a support channel, so you can ask about that part in the YouTube comments section.

Python 3.6 also isn't supported, so try with a newer version and see if the issue persists.

3rdIteration avatar Apr 24 '24 23:04 3rdIteration

Duplicate of https://github.com/3rdIteration/btcrecover/issues/467

3rdIteration avatar Jun 18 '24 00:06 3rdIteration