Pages:
Author

Topic: VanitySearch (Yet another address prefix finder) - page 60. (Read 30952 times)

jr. member
Activity: 82
Merit: 1
Ok Thanks.

So it seems that the CPU is not able to handle the key rate. If i believe the output you give, it seems that your CPU is a dual core ?
If you launch the task manager, your CPU is at 100% ?
I think I have to optimize the exchange between CPU and GPU. This is also in my task list.
A good challenge would be to reach 1GK/s on your config Cheesy



CPU 20-25%  Cool
member
Activity: 117
Merit: 32
ok thank you for the answer jean_luc I thought well that he had a problem with the old age of my equipment. good I’ll try to see it gets there but given my great talent I don’t think:-)
sr. member
Activity: 462
Merit: 696
Hello on my side being on a GPU GeForce GT 520 M/ Cuda 8/ driver 391.35/ windows 10 64 /  version of appi direct3D 11.2/CUDA 48 ...I have the following error message with the command -gpu 1TEST

Aie !
The problem is that the current CUDA SDK does not support anymore old compute capabilities.
The GeForce GT 520 M has compute capability 2.1 (as my old Quadro 600).
To make my old Quadro work I had to compile VanitySearch with CUDA SDK 8.0 (under Linux)
The current release of VanitySearch (for windows) is compiled with CUDA SDK 10.0.
So you can try to compile VanitySearch by yourself.
Visual Studio Community Edition 2017 is free.
CUDA SDK 8.0 is still available from nVidia site.
Follow the instruction on the VanitySearch HomePage.
member
Activity: 117
Merit: 32
Hello on my side being on a GPU GeForce GT 520 M/ Cuda 8/ driver 391.35/ windows 10 64 /  version of appi direct3D 11.2/CUDA 48 ...I have the following error message with the command -gpu 1TEST

-gpu 1test
Start Sun Mar  3 17:38:59 2019
Search: 1test
Difficulty: 264104224
Base Key:FB566C95AB1A65C55F3B3B2608708D53FF1913130D1FB445369683CA2EF7DB8D
Number of CPU thread: 3
GPUEngine: CudaGetDeviceCount CUDA driver version is insufficient for CUDA runtime version
GPU:
GPUEngine: Kernel: CUDA driver version is insufficient for CUDA runtime version

how to fix it? Is this a problem due my old hardware or driver not up to date?
if I move to a higher version of Cuda on my pc impossible to install ca tells me not compatible   Undecided

otherwise it works fine but I’m on that speed there  Cry
Start Sun Mar  3 17:42:11 2019
Search: 1test
Difficulty: 264104224
Base Key:906001ED1C80550A53E5BCEA4C797442E8A698379040155C046F3CC9ADD665C2
Number of CPU thread: 4
1.616 MK/s (GPU 0.000 MK/s) (2^21.67) [P 1.26%][50.00% in 00:01:51][0]
sr. member
Activity: 462
Merit: 696
Ok Thanks.

So it seems that the CPU is not able to handle the key rate. If i believe the output you give, it seems that your CPU is a dual core ?
If you launch the task manager, your CPU is at 100% ?
I think I have to optimize the exchange between CPU and GPU. This is also in my task list.
A good challenge would be to reach 1GK/s on your config Cheesy

jr. member
Activity: 82
Merit: 1
Code:
G:\vanitysearch>vanitysearch -stop -t 0 -gpu -gpuId 0,1,2,3,4,5,6 1Testtttt
Start Sun Mar  3 22:19:31 2019
Search: 1Testtttt
Difficulty: 2988734397852221
Base Key:F0407AC53C32B6FD85A9EE9AB912B9650426BC87C5FB4470B89FEF71A853CF
Number of CPU thread: 0
GPU: GPU #5 GeForce GTX 1060 6GB (10x128 cores) Grid(160x64)
GPU: GPU #2 GeForce GTX 1060 6GB (10x128 cores) Grid(160x64)
GPU: GPU #0 GeForce GTX 1060 6GB (10x128 cores) Grid(160x64)
GPU: GPU #1 GeForce GTX 1060 6GB (10x128 cores) Grid(160x64)y]
GPU: GPU #3 GeForce GTX 1060 6GB (10x128 cores) Grid(160x64)
GPU: GPU #6 GeForce GTX 1060 3GB (9x128 cores) Grid(144x64)
GPU: GPU #4 GeForce GTX 1060 6GB (10x128 cores) Grid(160x64)
581.006 MK/s (GPU 581.006 MK/s) (2^35.94) [P 0.00%][50.00% in 41.5d]]

sr. member
Activity: 462
Merit: 696
everything works perfectly  Smiley  windows-10x64

Thank you very much for testing. Amazing config Cheesy
Just curious, try with -t 0 option. It will free the CPU cores. With such a config, the CPU may be a bottleneck (GPU/CPU transfers).

must I use nvidia gpu's with this?

Yes, I'll try to develop an OpenCL version.

Edit:
Next step will be to increase performance following precious advices from arulbero Wink
legendary
Activity: 4102
Merit: 7763
'The right to privacy matters'
must I use nvidia gpu's with this?

I have a thread ripper 1920x cpu with 4 amd vegas'

on hand.



I also have a ryzen 1800x with 2 gtx 1050ti's on hand
jr. member
Activity: 82
Merit: 1
Multi-GPU support is ready (Release 1.5), I tested it on Linux only, so If a Windows user can test it It would be great.

Example of usage (on a old PC here running Ubuntu 18-04, with 2 Quadro 600 inside):

Code:
$ ./VanitySearch -l
GPU #0 Quadro 600 (2x48 cores) (Cap 2.1) (963.3 MB) (Multiple host threads)
GPU #1 Quadro 600 (2x48 cores) (Cap 2.1) (964.5 MB) (Multiple host threads)

Code:
$ ./VanitySearch -stop -gpu -gpuId 0,1 1Test
Start Sun Mar  3 12:16:26 2019
Search: 1Test
Difficulty: 264104224
Base Key:593CB755EB63B403F247F9890BE2F0FEAB3E9023A779E18A6EA62FD6C3D1FDF5
Number of CPU thread: 1
GPU: GPU #1 Quadro 600 (2x48 cores) Grid(32x64)
GPU: GPU #0 Quadro 600 (2x48 cores) Grid(32x64)
11.009 MK/s (GPU 10.221 MK/s) (2^27.61) [P 53.96%][60.00% in 00:00:03]
Pub Addr: 1Test2JF73wznXjD3LYEfCw4kPqArkvAp
Prv Addr: 5JVb2RQC5APQXti4yaGyNwEyo4phmvm773YaxD6rG9jGyZZtP32
Prv Key : 0x593CB755EB63B403F247F9890BE2F0FEABBF9023A7FBE18A6EA62FD6C3D2BAEE
Check   : 1LZeyhprPQq64ctexwc4Bgo5h15ZSGRWkE
Check   : 1Test2JF73wznXjD3LYEfCw4kPqArkvAp (comp)

Thanks for testing Wink


everything works perfectly  Smiley  windows-10x64

Code:
G:\vanitysearch>vanitysearch -stop -gpu -gpuId 0,1,2,3,4,5,6 1Testtttt
Start Sun Mar  3 19:31:49 2019
Search: 1Testtttt
Difficulty: 2988734397852221
Base Key:3A7BB2F81F78F539A33498862C05256FA4BFE84B9550082788661B3A48F7DDD6
Number of CPU thread: 1
GPU: GPU #0 GeForce GTX 1060 6GB (10x128 cores) Grid(160x64)
GPU: GPU #2 GeForce GTX 1060 6GB (10x128 cores) Grid(160x64).6661y]
GPU: GPU #6 GeForce GTX 1060 3GB (9x128 cores) Grid(144x64)
GPU: GPU #5 GeForce GTX 1060 6GB (10x128 cores) Grid(160x64)
GPU: GPU #3 GeForce GTX 1060 6GB (10x128 cores) Grid(160x64)
GPU: GPU #1 GeForce GTX 1060 6GB (10x128 cores) Grid(160x64)
GPU: GPU #4 GeForce GTX 1060 6GB (10x128 cores) Grid(160x64)
546.837 MK/s (GPU 545.374 MK/s) (2^35.49) [P 0.00%][50.00% in 44.0d]
sr. member
Activity: 462
Merit: 696
Multi-GPU support is ready (Release 1.5), I tested it on Linux only, so If a Windows user can test it It would be great.

Example of usage (on a old PC here running Ubuntu 18-04, with 2 Quadro 600 inside):

Code:
$ ./VanitySearch -l
GPU #0 Quadro 600 (2x48 cores) (Cap 2.1) (963.3 MB) (Multiple host threads)
GPU #1 Quadro 600 (2x48 cores) (Cap 2.1) (964.5 MB) (Multiple host threads)

Code:
$ ./VanitySearch -stop -gpu -gpuId 0,1 1Test
Start Sun Mar  3 12:16:26 2019
Search: 1Test
Difficulty: 264104224
Base Key:593CB755EB63B403F247F9890BE2F0FEAB3E9023A779E18A6EA62FD6C3D1FDF5
Number of CPU thread: 1
GPU: GPU #1 Quadro 600 (2x48 cores) Grid(32x64)
GPU: GPU #0 Quadro 600 (2x48 cores) Grid(32x64)
11.009 MK/s (GPU 10.221 MK/s) (2^27.61) [P 53.96%][60.00% in 00:00:03]
Pub Addr: 1Test2JF73wznXjD3LYEfCw4kPqArkvAp
Prv Addr: 5JVb2RQC5APQXti4yaGyNwEyo4phmvm773YaxD6rG9jGyZZtP32
Prv Key : 0x593CB755EB63B403F247F9890BE2F0FEABBF9023A7FBE18A6EA62FD6C3D2BAEE
Check   : 1LZeyhprPQq64ctexwc4Bgo5h15ZSGRWkE
Check   : 1Test2JF73wznXjD3LYEfCw4kPqArkvAp (comp)

Thanks for testing Wink
jr. member
Activity: 82
Merit: 1
Hello,

CUDA support for Linux is ok. I added few notes about compilation under Linux using CUDA in the README.
It tested it successfully on Ubuntu 18-04 with the CUDA SDK 8.0 ( for my old Quadro 600 Wink ).

https://github.com/JeanLucPons/VanitySearch/blob/master/README.md

I'm working now on multi-GPU support.


This is good news, I’m waiting for support multi-GPU, if you need help, I’m ready to help with testing  Smiley
sr. member
Activity: 462
Merit: 696
Hello,

CUDA support for Linux is ok. I added few notes about compilation under Linux using CUDA in the README.
It tested it successfully on Ubuntu 18-04 with the CUDA SDK 8.0 ( for my old Quadro 600 Wink ).

https://github.com/JeanLucPons/VanitySearch/blob/master/README.md

I'm working now on multi-GPU support.
sr. member
Activity: 462
Merit: 696
Thanks for the link Smiley
On the GPU, I must say I don't have a clear idea. Nsight is not obvious and its difficult to interpret results. It's good for determining if the GPU is well used (grid size, stream processor occupancy, memory transfers, ...) but I didn't manage to get a clear profile function by function. The GPU does not make Base58, it computes up to the hash160 and send them back to the CPU which check full base58 addresses.
Concerning the OpenCL version, I will see, I'm not familiar with it.

legendary
Activity: 1914
Merit: 2071
Hello,

I would like to thanks arulbero who gave me by MP a great tip to improve speed by MP using some symmetries Wink
I missed this, shame on me.
It will save few modular mult. But however, ~40% of cpu is used for modular mult, other 60% mainly go to SHA,RIPE,Base58,ModInv and byteswapping, so I don't know if I can reach the 2.0MKey/s (x 1.66)
For linux (cpu side), I have to work on code generation optimization but assembly using AT&T syntax makes me crazy.

As reference for SHA and RIPE, you could look here: https://github.com/klynastor/supervanitygen

I don't use Base58 in my code, because I need only address in hex format, not Base58.

When an OpenCL implementation?  Smiley


EDIT: on cpu 40% is used for ecc arithmetic; on gpu? I'm curious.
sr. member
Activity: 462
Merit: 696
Hello,

I would like to thanks arulbero who gave me by MP a great tip to improve speed by MP using some symmetries Wink
I missed this, shame on me.
It will save few modular mult. But however, ~40% of cpu is used for modular mult, other 60% mainly go to SHA,RIPE,Base58,ModInv and byteswapping, so I don't know if I can reach the 2.0MKey/s (x 1.66)
For linux (cpu side), I have to work on code generation optimization but assembly using AT&T syntax makes me crazy.

Anyway, I managed to set-up CUDA sdk 8.0 on the old Ubuntu PC. I had to patch the nvidia driver, a nightmare.
But now CUDA works, I managed to compile sample code and make it work, so i will be able to develop the multi GPU release of vanitysearch.
sr. member
Activity: 462
Merit: 696
I have to way 1 hour to answer to your last MP Sad
It's time for me to go to sleep.
See you Smiley
sr. member
Activity: 462
Merit: 696
b) a * b = c mod p   a*b --> 8 * 64 bit, then first 4 limbs * (2**256 - p) + lower 4 limbs.

I tried this. ~same performance as the multiplication by P (for secpk1) for mmult  can be reduced in a single 64bit mult. So I'm interested in c.
OK, on linux, performace are still bad, i'm sorry. Some problem with intrinsic....
legendary
Activity: 1914
Merit: 2071
Linux or windows ?
Is it open source ? Can i try it ?
Linux. You have a PM
sr. member
Activity: 462
Merit: 696
Linux or windows ?
Is it open source ? Can i try it ?
legendary
Activity: 1914
Merit: 2071
A group size of 512 does not bring significant improvement (less than 1%). The DRS62 ModInv is fast and almost negligible with a group size of 256.
If you have a modular mult faster than the digit serial Montgomery mult on a 256bit field, I'm obviously fully open. A folding does not improve thing on 256 bit when working with 64bit digits. I'm not sure if Barrett could be faster, I must say I didn't try and for "medium size field", there can be traps.


On my pc:

VanitySearch -stop -u -t 1 1tryme --> 1,2 MKeys/s

my ecc library  --> 2,0 MKeys/s  (17 M Public keys/s)

EDIT:
I use:

a) group of 4096 points
b) a * b = c mod p   a*b --> 8 * 64 bit, then first 4 limbs * (2**256 - p) + lower 4 limbs.
c) exploit some properties of secp256k1 curve



Pages:
Jump to: