Bitcoin Forum
December 08, 2016, 12:16:57 AM *
News: Latest stable version of Bitcoin Core: 0.13.1  [Torrent].
 
   Home   Help Search Donate Login Register  
Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 [13] 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 ... 155 »
  Print  
Author Topic: Vanitygen: Vanity bitcoin address generator/miner [v0.22]  (Read 809119 times)
Rassah
Legendary
*
Offline Offline

Activity: 1624


Director of Bitcoin100


View Profile
August 06, 2011, 05:42:01 PM
 #241

Code:
Driver: CAL 1.4.1417 (VM)

Well that's embarassing, Radeon 5830 is supposed to be one of the best tested cards!  Unfortunately I'm not sure how well tested it is with Catalyst 11.6 on either Windows or Linux, which would appear to be the driver you're using?

I'm going to look into this.

There are two things you can try:
  • Safe mode (-S flag), which disables loop unrolling optimizations, but also kills performance.
  • Different versions of the Catalyst driver.  My test environment is 11.5 on Linux.

It worked with the -S flag. Getting 3.12Mkey/s on my 900Mhz 5830. I hope I'm not losing much speed. Still says [50% in 1.8d] for the address I chose with Difficulty: 888446610538 (better than ~50 days that I was getting with my CPU)

1481156217
Hero Member
*
Offline Offline

Posts: 1481156217

View Profile Personal Message (Offline)

Ignore
1481156217
Reply with quote  #2

1481156217
Report to moderator
1481156217
Hero Member
*
Offline Offline

Posts: 1481156217

View Profile Personal Message (Offline)

Ignore
1481156217
Reply with quote  #2

1481156217
Report to moderator
1481156217
Hero Member
*
Offline Offline

Posts: 1481156217

View Profile Personal Message (Offline)

Ignore
1481156217
Reply with quote  #2

1481156217
Report to moderator
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise here.
1481156217
Hero Member
*
Offline Offline

Posts: 1481156217

View Profile Personal Message (Offline)

Ignore
1481156217
Reply with quote  #2

1481156217
Report to moderator
samr7
Full Member
***
Offline Offline

Activity: 140

Firstbits: 1samr7


View Profile
August 06, 2011, 08:41:00 PM
 #242

It worked with the -S flag. Getting 3.12Mkey/s on my 900Mhz 5830. I hope I'm not losing much speed. Still says [50% in 1.8d] for the address I chose with Difficulty: 888446610538 (better than ~50 days that I was getting with my CPU)

That sounds about right for safe mode.  If you manage to get it to run with the optimizations turned on, with a 900 clock, you should be able to get >20Mkey/s out of it.

On the topic of crashing, I managed to get similar behavior to what you described, with a Win7 x64 VM.  Obviously not with a GPU.  But, attempting to compile any sort of OpenCL kernel with a #pragma unroll would cause a crash.  This affected both KernelAnalyzer and oclvanitygen on the CPU device.  It initially had Catalyst 11.6 and APP SDK 2.4.  Upgrading didn't fix it.  I didn't connect it to your problem until a couple days ago when it needed to be reinstalled.  Lo and behold, with a clean install of APP SDK 2.5, #pragma unroll no longer causes everything to crash!  Now, to get it back to the broken state.
samr7
Full Member
***
Offline Offline

Activity: 140

Firstbits: 1samr7


View Profile
August 08, 2011, 07:41:56 PM
 #243

New version posted.  This includes a lot of changes.

  • Bugfix for private key encoder.  It was possible for it to output a shorter-than-expected private key.  If you have a private key that does not start with a 5, or is less than 51 characters long, don't use it.  If you have such a private key with a bitcoin balance, contact me for assistance.
  • Oclvanitygen #pragma unroll has been removed, for Rassah.  If you experienced a crash with a Radeon card, but safe mode (-S) worked, this should fix the problem.
  • Oclvanitygen work size autoconfiguration now sets more reasonable limits for smaller GPUs.
  • Numerous performance tweaks to oclvanitygen, including AMD BFI_INT instruction patching.
  • Edit: Meaning of oclvanitygen -w flag has changed: It now specifies number of work items per hardware thread per job, and constrains the grid size.  -w1 now specifies a smaller overall work size.  The previous effect can be done with -t.
  • Windows binary package now includes x64 build: vanitygen64.exe.  This binary runs about 50% faster, if you have a 64-bit edition of Windows.

I never knew just how slow the 32-bit Windows build was until recently, and must apologize for not posting a 64-bit build sooner.  64-bit arithmetic makes a huge difference.  The Windows binaries for 0.17 are also built and linked with more MSVC optimizations enabled, and now include statically-linked OpenSSL.  Despite all of this, the x64 Windows build seems to run about 10% slower than an equivalent Linux build.
ctoon6
Sr. Member
****
Offline Offline

Activity: 350



View Profile
August 08, 2011, 08:18:11 PM
 #244

x86: 800-850
x64: 1300-1350

Code:
@echo off
vanitygen64.exe -qik -o file3 1ctoon6
pause

pretty good stuff

are Mkeys/s 1024 based or just 1000

and are hashes the same way, always wondered

1090T
8gigs of ram
windows 7 ultimate x64

jackjack
Hero Member
*****
Offline Offline

Activity: 882


May Bitcoin be touched by his Noodly Appendage


View Profile
August 08, 2011, 09:21:30 PM
 #245

  • Bugfix for private key encoder.  It was possible for it to output a shorter-than-expected private key.  If you have a private key that does not start with a 5, or is less than 51 characters long, don't use it.  If you have such a private key with a bitcoin balance, contact me for assistance.
Maybe you should analyse the base58 key, and print the hex private key if the base58 key is not valid

Own address: 19QkqAza7BHFTuoz9N8UQkryP4E9jHo4N3 - Pywallet support: 1AQDfx22pKGgXnUZFL1e4UKos3QqvRzNh5 - Bitcointalk++ script support: 1Pxeccscj1ygseTdSV1qUqQCanp2B2NMM2
Pywallet: instructions. Encrypted wallet support, export/import keys/addresses, backup wallets, export/import CSV data from/into wallet, merge wallets, delete/import addresses and transactions, recover altcoins sent to bitcoin addresses, sign/verify messages and files with Bitcoin addresses, recover deleted wallets, etc.
ctoon6
Sr. Member
****
Offline Offline

Activity: 350



View Profile
August 08, 2011, 09:40:11 PM
 #246

6870
gpu 940mhz



23.5-23.7 Mkeys/s

Code:
@echo off
oclvanitygen.exe -ik -p 0 -d 0 -o ocl 1
pause

dinox
Full Member
***
Offline Offline

Activity: 126


View Profile
August 08, 2011, 10:05:46 PM
 #247

New version posted.  This includes a lot of changes.

  • Bugfix for private key encoder.  It was possible for it to output a shorter-than-expected private key.  If you have a private key that does not start with a 5, or is less than 51 characters long, don't use it.  If you have such a private key with a bitcoin balance, contact me for assistance.
  • Oclvanitygen #pragma unroll has been removed, for Rassah.  If you experienced a crash with a Radeon card, but safe mode (-S) worked, this should fix the problem.
  • Oclvanitygen work size autoconfiguration now sets more reasonable limits for smaller GPUs.
  • Numerous performance tweaks to oclvanitygen, including AMD BFI_INT instruction patching.
  • Windows binary package now includes x64 build: vanitygen64.exe.  This binary runs about 50% faster, if you have a 64-bit edition of Windows.

I never knew just how slow the 32-bit Windows build was until recently, and must apologize for not posting a 64-bit build sooner.  64-bit arithmetic makes a huge difference.  The Windows binaries for 0.17 are also built and linked with more MSVC optimizations enabled, and now include statically-linked OpenSSL.  Despite all of this, the x64 Windows build seems to run about 10% slower than an equivalent Linux build.
Upgrade to OS X Lion fixed my problems, getting 1.6MKeys/s now with my Radeon 6490M.

One question tho: Why do I get 2*0.9kKeys/s when throwing two threads of oclvanitygen at the same GPU, and only 1.6MKeys/s when running one thread?

Edit: Adding one more thread (for a total of 3) gives me 2M+, but 4 threads only gets about 1.6M.

blockchain.info/fb/1dinox - 1Dinox3mFw8yykpAZXFGEKeH4VX1Mzbcxe
Active trader on #bitcoin-otc - See here - Proof that my nick is dinox here
defxor
Hero Member
*****
Offline Offline

Activity: 530


View Profile
August 09, 2011, 12:45:18 AM
 #248

New version posted.  This includes a lot of changes.

  • Oclvanitygen work size autoconfiguration now sets more reasonable limits for smaller GPUs.
  • Numerous performance tweaks to oclvanitygen, including AMD BFI_INT instruction patching.


Unfortunately it's not friendly towards my MBP any longer :/ First time I tried oclvanitygen with default settings after having downloaded it I got a segfault after some error output about running out of CL resources. It was repeatable. I then tried to "fix it" by playing around with the parameters. -w256 made no difference, and -w256 -g256x512 caused oclvanitygen (the CL compilator I assume, the only thing that got displayed was the difficulty) to hang my graphics card completely. Had to hard reboot.

After the reboot, even the default parameters hung the computer. Got two error lines but it never reached the segfault. I've now hard rebooted again and sorry to say won't try to get you the debug output Wink Or is this where I should try the safe switch?

(0.16 still works as before)

samr7
Full Member
***
Offline Offline

Activity: 140

Firstbits: 1samr7


View Profile
August 09, 2011, 04:34:57 AM
 #249

x86: 800-850
x64: 1300-1350

That's an impressive amount of hardware you threw at it!  What CPU gets you 1300??


Maybe you should analyse the base58 key, and print the hex private key if the base58 key is not valid

This is a good idea, running the encoded private key back through the decoder for verification.  I'll try making an online assertion test out of it.  At the very least, it's going into the offline test suite.


Unfortunately it's not friendly towards my MBP any longer :/ First time I tried oclvanitygen with default settings after having downloaded it I got a segfault after some error output about running out of CL resources. It was repeatable. I then tried to "fix it" by playing around with the parameters. -w256 made no difference, and -w256 -g256x512 caused oclvanitygen (the CL compilator I assume, the only thing that got displayed was the difficulty) to hang my graphics card completely. Had to hard reboot.

After the reboot, even the default parameters hung the computer. Got two error lines but it never reached the segfault. I've now hard rebooted again and sorry to say won't try to get you the debug output Wink Or is this where I should try the safe switch?

The meaning of -w changed to be a bit more intuitive.  It specifies the number of addresses to calculate per hardware thread in a work unit.  It constrains the grid size and saves you from having to manually tweak it.  Try -w1 and increase in powers of two.

If it still doesn't work, you can get the old behavior with -t256 -g256x512.

You make a good point about safe mode.  Its only effect right now is to work around issues with optimizations, but given that the work unit problem caused your computer to crash, the work unit problem deserves equal attention and safe mode should also constrain it.
samr7
Full Member
***
Offline Offline

Activity: 140

Firstbits: 1samr7


View Profile
August 09, 2011, 04:57:18 AM
 #250

One question tho: Why do I get 2*0.9kKeys/s when throwing two threads of oclvanitygen at the same GPU, and only 1.6MKeys/s when running one thread?

Edit: Adding one more thread (for a total of 3) gives me 2M+, but 4 threads only gets about 1.6M.

Interesting!

If you run with -v, does it report high GPU idle numbers?

This could be an issue with poor multithreading in oclvanitygen.  Currently the CPU based work is done in one thread, the OpenCL work is dispatched to the GPU by a separate thread, and there is too much synchronization between the two, to the point of adding a lot of turnaround latency to the dispatcher.  It's not surprising that multiple instances improve it.  But I'm not sure why three instances would show even more improvement, unless Apple is doing something very interesting like allowing simultaneous NDRange jobs to run on the GPU at the same time.
Rassah
Legendary
*
Offline Offline

Activity: 1624


Director of Bitcoin100


View Profile
August 09, 2011, 05:01:15 AM
 #251

New version posted.  This includes a lot of changes.

  • Oclvanitygen #pragma unroll has been removed, for Rassah.  If you experienced a crash with a Radeon card, but safe mode (-S) worked, this should fix the problem.


Runs great without crashing now! Thanks!
Though I'm noticing for simple keys, like 1pop for example, vanitygen64 finds a key almost instantly, wile oclvanitygen seems to flash estimated time remaining, and then sit there, just counting up the total. What's preventing it from finding the key I wonder? Is it only useful for more difficult keys?
I ran oclvanitygen -d0 -v 1Pop and output is
Quote
Prefix difficulty:                77178 1Pop
Difficulty: 77178
Device: Cypress
Vendor: Advanced Micro Devices, Inc. (1002)
Driver: CAL 1.4.1417 (VM)
Profile: FULL_PROFILE
Version: OpenCL 1.1 AMD-APP-SDK-v2.4 (650.9)
Max compute units: 14
Max workgroup size: 256
Global memory: 838860800
Max allocation: 209715200
OpenCL compiler flags: -DDEEP_PREPROC_UNROLL -DVERY_EXPENSIVE_BRANCHES -DDEEP_VLIW -DAMD_BFI_INT
Loading kernel binary ce56d53554537b697380a368231a1646.oclbin
Grid size: 1792x1024
Modular inverse: 3584 threads, 512 ops each
Using OpenCL prefix matcher
GPU idle: 11.30%
GPU idle: 1.78%
GPU idle: 1.26%
[19.42 Mkey/s][total 776208384]

samr7
Full Member
***
Offline Offline

Activity: 140

Firstbits: 1samr7


View Profile
August 09, 2011, 05:21:22 AM
 #252

Though I'm noticing for simple keys, like 1pop for example, vanitygen64 finds a key almost instantly, wile oclvanitygen seems to flash estimated time remaining, and then sit there, just counting up the total. What's preventing it from finding the key I wonder? Is it only useful for more difficult keys?

Oh no, it definitely shouldn't be doing this.

Ideally it would have a comprehensive test suite that you could run and validate that the OpenCL kernel is running correctly.  Today, there is something less comprehensive.  You can try:

oclvanitygen -d0 -vkr -w128 "^1B"

It should scroll a list of addresses fairly quickly.  If any of them don't start with 1B, then it's producing incorrect addresses on the GPU.  If this test passes, something is wrong with the GPU prefix checker.

Edit: Does it also fail to find any matches to 1Pop in safe mode?
Rassah
Legendary
*
Offline Offline

Activity: 1624


Director of Bitcoin100


View Profile
August 09, 2011, 05:35:47 AM
 #253

Safe mode does the same ting (never finds anything)
Running oclvanitygen -d0 1 finds something instantly
Running oclvanitygen -d0 -vkr -w128 "^1B" returns
Quote
Device: Cypress
Vendor: Advanced Micro Devices, Inc. (1002)
Driver: CAL 1.4.1417 (VM)
Profile: FULL_PROFILE
Version: OpenCL 1.1 AMD-APP-SDK-v2.4 (650.9)
Max compute units: 14
Max workgroup size: 256
Global memory: 838860800
Max allocation: 209715200
OpenCL compiler flags: -DDEEP_PREPROC_UNROLL -DVERY_EXPENSIVE_BRANCHES -DDEEP_VLIW -DAMD_BFI_INT
Loading kernel binary ce56d53554537b697380a368231a1646.oclbin
Grid size: 896x512
Modular inverse: 3584 threads, 128 ops each
WARNING: Using CPU pattern matcher
GPU idle: 99.34%
GPU idle: 99.75%

followed by more GPU idles. Not sure if that CPU matcher is right. Maybe that -r isn't working for me?  Undecided

samr7
Full Member
***
Offline Offline

Activity: 140

Firstbits: 1samr7


View Profile
August 09, 2011, 08:10:59 AM
 #254

Safe mode does the same ting (never finds anything)
Running oclvanitygen -d0 1 finds something instantly
Running oclvanitygen -d0 -vkr -w128 "^1B" returns
...
followed by more GPU idles. Not sure if that CPU matcher is right. Maybe that -r isn't working for me?  Undecided

Ah!  Perhaps it's repeating the same address indefinitely, or maybe for all results of a particular batch.  Try:

-d0 -vkr -w128 "^1"
Jonathan Ryan Owens
Donator
Sr. Member
*
Offline Offline

Activity: 392



View Profile WWW
August 09, 2011, 09:09:50 AM
 #255

I find this all very interesting. What type of hashing power would it take to get out to 5 - 6 pattern match and/or regex with 1 - 1.1 GH/s? How long?

Furthermore, which one of you can compile this to run on an up to date linuxcoin rig?

Bounty.. I'd like to pregenerate receiving addresses for my server, bitcoinduit.com. I'm adding a bounty feature.

I'd like to be able to advertise 1bounty or 1BoUNTy. i want to pregenerate them when a game starts, and add them to rounds once they've reached a particular threshold. The private key will be part of the game, though I haven't completely decided how yet. I do know that "jackpot / bounty" will be paid to the 1bounty addresses, and the private key will be awarded. There's no really convenient way to import private keys, but I have to imagine that there will be more options soon, and in the meantime, if they want their bitcoin, they'll probably have to learn some command line fu?

The part I'll need help with is this:

1. compiling and running oclvanitygem on one of my rigs
2. talking me through options for importing private keys, that i might pass on to my users.

I appreciate the help, and yours will be rewarded.

Regards,
Jonathan

defxor
Hero Member
*****
Offline Offline

Activity: 530


View Profile
August 09, 2011, 09:31:58 AM
 #256

1. compiling and running oclvanitygem on one of my rigs

Linux? You should be fine just running

Code:
make vanitygen oclvanitygen
./oclvanitygen -d0 -i 1bounty

(play with the options for optimum performance)

Quote
2. talking me through options for importing private keys, that i might pass on to my users.

See the pywallet thread - https://bitcointalk.org/index.php?topic=34028.0

Code:
$ ./pywallet.py --importprivkey=5privatekeystuffyougetfromvanitygen

It's much more simple than you might think, just try it. Give yourself the reward when you've succeeded Wink

Jonathan Ryan Owens
Donator
Sr. Member
*
Offline Offline

Activity: 392



View Profile WWW
August 09, 2011, 10:00:45 AM
 #257

1. compiling and running oclvanitygem on one of my rigs

Linux? You should be fine just running

Code:
make vanitygen oclvanitygen
./oclvanitygen -d0 -i 1bounty

(play with the options for optimum performance)

Quote
2. talking me through options for importing private keys, that i might pass on to my users.

See the pywallet thread - https://bitcointalk.org/index.php?topic=34028.0

Code:
$ ./pywallet.py --importprivkey=5privatekeystuffyougetfromvanitygen

It's much more simple than you might think, just try it. Give yourself the reward when you've succeeded Wink



git clone https://github.com/samr7/vanitygen.git


Jonathan Ryan Owens
Donator
Sr. Member
*
Offline Offline

Activity: 392



View Profile WWW
August 09, 2011, 10:04:26 AM
 #258

user@linuxcoin:~/vanitygen$ make vanitygen oclvanitygen
cc -ggdb -O3 -Wall   -c -o pattern.o pattern.c
pattern.c:32:18: fatal error: pcre.h: No such file or directory
compilation terminated.
make: *** [pattern.o] Error 1

defxor
Hero Member
*****
Offline Offline

Activity: 530


View Profile
August 09, 2011, 10:09:09 AM
 #259

user@linuxcoin:~/vanitygen$ make vanitygen oclvanitygen
cc -ggdb -O3 -Wall   -c -o pattern.o pattern.c
pattern.c:32:18: fatal error: pcre.h: No such file or directory
compilation terminated.
make: *** [pattern.o] Error 1


Right, you need the PCRE lib installed. Download from http://pcre.org/

Code:
./configure; make; make install

Jonathan Ryan Owens
Donator
Sr. Member
*
Offline Offline

Activity: 392



View Profile WWW
August 09, 2011, 10:32:12 AM
 #260

user@linuxcoin:~/vanitygen$ make vanitygen oclvanitygen
cc -ggdb -O3 -Wall   -c -o pattern.o pattern.c
pattern.c:32:18: fatal error: pcre.h: No such file or directory
compilation terminated.
make: *** [pattern.o] Error 1


Right, you need the PCRE lib installed. Download from http://pcre.org/

Code:
./configure; make; make install




root@linuxcoin:/home/user/vanitygen# make vanitygen oclvanitygen
cc -ggdb -O3 -Wall   -c -o pattern.o pattern.c
cc -ggdb -O3 -Wall   -c -o util.o util.c
cc vanitygen.o pattern.o util.o -o vanitygen -ggdb -O3 -Wall -lpcre -lcrypto -lm -lpthread
cc -ggdb -O3 -Wall   -c -o oclvanitygen.o oclvanitygen.c
oclvanitygen.c:37:19: fatal error: CL/cl.h: No such file or directory
compilation terminated.
make: *** [oclvanitygen.o] Error 1

Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 [13] 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 ... 155 »
  Print  
 
Jump to:  

Sponsored by , a Bitcoin-accepting VPN.
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!