Pages:
Author

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

sr. member
Activity: 448
Merit: 696
Hello,

I published a new release (1.6).
No new feature, just performance increase (16% GPU, 50% CPU on my hardware).
The performance increase are mainly due to a best ECC calculations ( many thanks to arulbero Wink )
It affects less the GPU because the GPU has no SIMD instructions to speed up the SHA, so the resource goes mainly to it and much less to ECC calculations.

Next Step:
- Add support for multi prefix search and (-i input.txt)
- Optimize CPU/GPU exchange
- Add missing ECC optimizations (some symmetries and endomorphism)
- Add support for GPU funnel shift that should speed up SHA (but I need to find a board with compute capability >3.5, mine is 3.0).

Thanks for testing it Smiley

I almost reached the same performance with my CPU alone (Intel Core i7-4770 3.4GHz) than oclvanitygen with my GPU (GTX 645) Cheesy
but still 10 days of calculation to reach to prefix I want.
sr. member
Activity: 448
Merit: 696
Can VanitySearch look for more than 1 vanity prefix at a time?

Not yet, I will add this in the next release.
As I said, in a previous post, this feature need a refurbishment of the code.
This refurbishment should also allow an optimization of data transfer between GPU and CPU.

Some news:
After very interesting exchanges with arulbero (by PM), we should see significant performance increase in the next release.
donator
Activity: 4648
Merit: 4006
Leading Crypto Sports Betting & Casino Platform
Can VanitySearch look for more than 1 vanity prefix at a time?
sr. member
Activity: 448
Merit: 696
I mean, for example, to set a range for creating an address in a specific range, I want to create an address in 2 ^ 135 - 2 ^ 136 with a specific mask

For VanitySearch, I don't really see the interest of this options and it is a good way to see its funds stolen.
May be it can be useful for bitcrak, if you have detected a failure in a wallet pseudo random generator and you know more or less subspaces of generated key.
jr. member
Activity: 82
Merit: 1


Code:
--keyspace KEYSPACE
    Specify the range of keys to search, where KEYSPACE is in the format,

START:END start at key START, end at key END
START:+COUNT start at key START and end at key START + COUNT
    :END start at key 1 and end at key END
:+COUNT start at key 1 and end at key 1 + COUNT




I mean, for example, to set a range for creating an address in a specific range, I want to create an address in 2 ^ 135 - 2 ^ 136 with a specific mask
legendary
Activity: 1910
Merit: 2065
Compressed
Code:
G:\bit\cuBitCrack.exe -c -d 0 1CF1o6DRBpyGXqQXVJHTGiHNVVu54npgHo
[2019-03-04.21:54:29] [Info] Compression: compressed
GeForce GTX 1060 1083/6144MB | 1 target 58.56 MKey/s (1,473,773,568 total) [00:00:23]

Uncompressed
Code:
G:\bit\cuBitCrack.exe -u -d 0 1CF1o6DRBpyGXqQXVJHTGiHNVVu54npgHo
[2019-03-04.21:53:35] [Info] Compression: uncompressed
GeForce GTX 1060 1083/6144MB | 1 target 51.94 MKey/s (1,238,368,256 total) [00:00:21]


Both
Code:
G:\bit\cuBitCrack.exe -c -u -d 0 1CF1o6DRBpyGXqQXVJHTGiHNVVu54npgHo
[2019-03-04.21:52:18] [Info] Compression: both
GeForce GTX 1060 1083/6144MB | 1 target 46.99 MKey/s (1,696,071,680 total) [00:00:34]

Then with  GeForce GTX 1060:
 
bitcrack: 58.5 MKeys/s

VanitySearch: 580/7 = 82 MKeys/s
sr. member
Activity: 448
Merit: 696
Code:
[quote author=stivensons link=topic=5112311.msg50017516#msg50017516 date=1551710888]
Will there be settings like Bitcrack in the future?
 -i, --in FILE
Read addresses from FILE, one address per line. If FILE is "-" then stdin is read

Yes, I'm thinking to add this. It will need an important refurbishment of the code however it goes in the same way as optimizing data transfer. So probably yes.

Code:
--keyspace KEYSPACE
    Specify the range of keys to search, where KEYSPACE is in the format,

START:END start at key START, end at key END
START:+COUNT start at key START and end at key START + COUNT
    :END start at key 1 and end at key END
:+COUNT start at key 1 and end at key 1 + COUNT

No (if I understand well the purpose of this option).
VanitySearch is a prefix finder in order to generate usable addresses, you can specifie a seed to generate a base key ,it is even recommended. That's all. The seed is then passed into a pbkdf2_hmac_sha512 in order to protect against seed search attack. If you don't specifie the seed, the basekey is generated using timestamps (in us) plus the date and also passed into the pbkdf2_hmac_sha512.
The result of the pbkdf2_hmac_sha512 is then passed into a SHA256 wich is use as the base key.


jr. member
Activity: 82
Merit: 1
To do a comparison with another software, bitcrack (that has a different goal, instead of having a set of same prefix addresses it has as target a set of addresses with funds,  but more or less both programs do the same calculations):

https://bitcointalksearch.org/topic/bitcrack-a-tool-for-brute-forcing-private-keys-4453897

in particular:

Quote
GeForce GTX 1060 3GB = compressed = 60.61 MKeys/s
GeForce GTX 1060 3GB = both = 46.93 MKeys/s

Compressed
Code:
G:\bit\cuBitCrack.exe -c -d 0 1CF1o6DRBpyGXqQXVJHTGiHNVVu54npgHo
[2019-03-04.21:54:29] [Info] Compression: compressed
[2019-03-04.21:54:29] [Info] Starting at: 0000000000000000000000000000000000000000000000000000000000000001
[2019-03-04.21:54:29] [Info] Ending at:   FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364140
[2019-03-04.21:54:29] [Info] Counting by: 0000000000000000000000000000000000000000000000000000000000000001
[2019-03-04.21:54:29] [Info] Initializing GeForce GTX 1060 6GB
[2019-03-04.21:54:29] [Info] Generating 262,144 starting points (10.0MB)
[2019-03-04.21:54:29] [Info] 10.0%
[2019-03-04.21:54:29] [Info] 20.0%
[2019-03-04.21:54:29] [Info] 30.0%
[2019-03-04.21:54:29] [Info] 40.0%
[2019-03-04.21:54:29] [Info] 50.0%
[2019-03-04.21:54:29] [Info] 60.0%
[2019-03-04.21:54:29] [Info] 70.0%
[2019-03-04.21:54:29] [Info] 80.0%
[2019-03-04.21:54:30] [Info] 90.0%
[2019-03-04.21:54:30] [Info] 100.0%
[2019-03-04.21:54:30] [Info] Done
GeForce GTX 1060 1083/6144MB | 1 target 58.56 MKey/s (1,473,773,568 total) [00:00:23]

Uncompressed
Code:
G:\bit\cuBitCrack.exe -u -d 0 1CF1o6DRBpyGXqQXVJHTGiHNVVu54npgHo
[2019-03-04.21:53:35] [Info] Compression: uncompressed
[2019-03-04.21:53:35] [Info] Starting at: 0000000000000000000000000000000000000000000000000000000000000001
[2019-03-04.21:53:35] [Info] Ending at:   FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364140
[2019-03-04.21:53:35] [Info] Counting by: 0000000000000000000000000000000000000000000000000000000000000001
[2019-03-04.21:53:35] [Info] Initializing GeForce GTX 1060 6GB
[2019-03-04.21:53:36] [Info] Generating 262,144 starting points (10.0MB)
[2019-03-04.21:53:36] [Info] 10.0%
[2019-03-04.21:53:36] [Info] 20.0%
[2019-03-04.21:53:36] [Info] 30.0%
[2019-03-04.21:53:36] [Info] 40.0%
[2019-03-04.21:53:36] [Info] 50.0%
[2019-03-04.21:53:36] [Info] 60.0%
[2019-03-04.21:53:36] [Info] 70.0%
[2019-03-04.21:53:36] [Info] 80.0%
[2019-03-04.21:53:36] [Info] 90.0%
[2019-03-04.21:53:36] [Info] 100.0%
[2019-03-04.21:53:36] [Info] Done
GeForce GTX 1060 1083/6144MB | 1 target 51.94 MKey/s (1,238,368,256 total) [00:00:21]


Both
Code:
G:\bit\cuBitCrack.exe -c -u -d 0 1CF1o6DRBpyGXqQXVJHTGiHNVVu54npgHo
[2019-03-04.21:52:18] [Info] Compression: both
[2019-03-04.21:52:18] [Info] Starting at: 0000000000000000000000000000000000000000000000000000000000000001
[2019-03-04.21:52:18] [Info] Ending at:   FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364140
[2019-03-04.21:52:18] [Info] Counting by: 0000000000000000000000000000000000000000000000000000000000000001
[2019-03-04.21:52:18] [Info] Initializing GeForce GTX 1060 6GB
[2019-03-04.21:52:19] [Info] Generating 262,144 starting points (10.0MB)
[2019-03-04.21:52:19] [Info] 10.0%
[2019-03-04.21:52:19] [Info] 20.0%
[2019-03-04.21:52:19] [Info] 30.0%
[2019-03-04.21:52:19] [Info] 40.0%
[2019-03-04.21:52:19] [Info] 50.0%
[2019-03-04.21:52:19] [Info] 60.0%
[2019-03-04.21:52:19] [Info] 70.0%
[2019-03-04.21:52:19] [Info] 80.0%
[2019-03-04.21:52:19] [Info] 90.0%
[2019-03-04.21:52:19] [Info] 100.0%
[2019-03-04.21:52:20] [Info] Done
GeForce GTX 1060 1083/6144MB | 1 target 46.99 MKey/s (1,696,071,680 total) [00:00:34]
jr. member
Activity: 82
Merit: 1
I get the same ~ 580mk\s

OK Thank you for the test.
With the optimizations suggested by arulbero , with few memory transfer improvements, by adding specific GPU intrinsic (notably the funnel shift that should improve SHA and RIPE performance), I hope to reach 1GK/s on your config. Wink



Waiting for a new version  Smiley

Will there be settings like Bitcrack in the future?
Code:
 -i, --in FILE
Read addresses from FILE, one address per line. If FILE is "-" then stdin is read

Code:
--keyspace KEYSPACE
    Specify the range of keys to search, where KEYSPACE is in the format,

START:END start at key START, end at key END
START:+COUNT start at key START and end at key START + COUNT
    :END start at key 1 and end at key END
:+COUNT start at key 1 and end at key 1 + COUNT
sr. member
Activity: 448
Merit: 696
I get the same ~ 580mk\s

OK Thank you for the test.
With the optimizations suggested by arulbero , with few memory transfer improvements, by adding specific GPU intrinsic (notably the funnel shift that should improve SHA and RIPE performance), I hope to reach 1GK/s on your config. Wink

jr. member
Activity: 82
Merit: 1
To do a comparison with another software, bitcrack (that has a different goal, instead of having a set of same prefix addresses it has as target a set of addresses with funds,  but more or less both programs do the same calculations):

https://bitcointalksearch.org/topic/bitcrack-a-tool-for-brute-forcing-private-keys-4453897

in particular:

Quote
GeForce GTX 1060 3GB = compressed = 60.61 MKeys/s
GeForce GTX 1060 3GB = both = 46.93 MKeys/s


I will test and write the results
jr. member
Activity: 82
Merit: 1
OK Thanks
So it is similar.
Could try now
vanitysearch -stop -t 0 -gpu -gpuId 0,1,2,3,4,5,6 -g 160,160,160,160,160,160,144 1Testtttt.
It we still have same perf, that means that the default setting are rather good.


I get the same ~ 580mk\s
sr. member
Activity: 448
Merit: 696
On my hardware, bitcrak (cuda version) is rather slow. With a single target, compressed, I reach only 15 MK/s against 26MK/s with vanitysearch.
legendary
Activity: 1910
Merit: 2065
To do a comparison with another software, bitcrack (that has a different goal, instead of having a set of same prefix addresses it has as target a set of addresses with funds,  but more or less both programs do the same calculations):

https://bitcointalksearch.org/topic/bitcrack-a-tool-for-brute-forcing-private-keys-4453897

in particular:

Quote
GeForce GTX 1060 3GB = compressed = 60.61 MKeys/s
GeForce GTX 1060 3GB = both = 46.93 MKeys/s
sr. member
Activity: 448
Merit: 696
OK Thanks
So it is similar.
Could try now
vanitysearch -stop -t 0 -gpu -gpuId 0,1,2,3,4,5,6 -g 160,160,160,160,160,160,144 1Testtttt.
It we still have same perf, that means that the default setting are rather good.
jr. member
Activity: 82
Merit: 1
Done

~580 mk\s
Code:
G:\vanitysearch>vanitysearch -stop -t 0 -gpu -gpuId 0,1,2,3,4,5,6 1Testtttt
Start Mon Mar  4 19:44:19 2019
Search: 1Testtttt
Difficulty: 2988734397852221
Base Key:7AE06275083610799006F50B0FE5BBD967F3DD8F9961CB07C69A006610F1F58D
Number of CPU thread: 0
GPU: GPU #0 GeForce GTX 1060 6GB (10x128 cores) Grid(80x128)
GPU: GPU #3 GeForce GTX 1060 6GB (10x128 cores) Grid(80x128)
GPU: GPU #5 GeForce GTX 1060 6GB (10x128 cores) Grid(80x128)
GPU: GPU #4 GeForce GTX 1060 6GB (10x128 cores) Grid(80x128)
GPU: GPU #1 GeForce GTX 1060 6GB (10x128 cores) Grid(80x128)y]
GPU: GPU #2 GeForce GTX 1060 6GB (10x128 cores) Grid(80x128)
GPU: GPU #6 GeForce GTX 1060 3GB (9x128 cores) Grid(72x128)fy]
578.045 MK/s (GPU 578.045 MK/s) (2^36.43) [P 0.00%][50.00% in 41.7d]]
member
Activity: 117
Merit: 32
For me Jean_Luc increase 25%
Start Mon Mar  4 13:37:46 2019
Search: 1test
Difficulty: 264104224
Base Key:28FB7A9193F49D3D8F63B1E05F0556D3EF57AF1F0ADCD83F8D6A399C8C110D5B
Number of CPU thread: 4
1.970 MK/s (GPU 0.000 MK/s) (2^26.47) [P 29.69%][50.00% in 00:00:50][0]
Pub Addr: 1testwtBewKHpZTwLYggYLzv4rNohko9X

1.970 vs 1.616
sr. member
Activity: 448
Merit: 696
jr. member
Activity: 82
Merit: 1
CPU 20-25%  Cool

OK, thanks. Could you try this release:
http[Suspicious link removed]
I changed the number of thread per block to 128 and divided by 2 the default number of block per grid.
I would like to know if, on your config, it improves performance, it is the same or it is worst ?
Thank you Smiley


link removed  Sad, upload to github as test release  Smiley
sr. member
Activity: 448
Merit: 696
CPU 20-25%  Cool

OK, thanks. Could you try the release 1.5.1 (Available on gitbub)
I changed the number of thread per block to 128 and divided by 2 the default number of block per grid.
I would like to know if, on your config, it improves performance, it is the same or it is worst ?
Thank you Smiley


Edit :
Changed the link
Pages:
Jump to: