Bitcoin Forum
December 04, 2016, 08:15:43 AM *
News: Latest stable version of Bitcoin Core: 0.13.1  [Torrent].
 
   Home   Help Search Donate Login Register  
Pages: [1]
  Print  
Author Topic: Using GPU to *verify* blocks?  (Read 2764 times)
noclip
Newbie
*
Offline Offline

Activity: 6


View Profile
February 13, 2011, 06:46:00 PM
 #1

Is there a way to use a GPU to do the initial block verification? If not, I think this is a feature the developer(s) should consider adding.
1480839343
Hero Member
*
Offline Offline

Posts: 1480839343

View Profile Personal Message (Offline)

Ignore
1480839343
Reply with quote  #2

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

Posts: 1480839343

View Profile Personal Message (Offline)

Ignore
1480839343
Reply with quote  #2

1480839343
Report to moderator
1480839343
Hero Member
*
Offline Offline

Posts: 1480839343

View Profile Personal Message (Offline)

Ignore
1480839343
Reply with quote  #2

1480839343
Report to moderator
Martian
Newbie
*
Offline Offline

Activity: 7


View Profile
February 13, 2011, 07:20:52 PM
 #2

Is there a way to use a GPU to do the initial block verification? If not, I think this is a feature the developer(s) should consider adding.
By design it's very very fast to verify a block compared to generating. A CPU has more than enough processing power.
dust
Hero Member
*****
Offline Offline

Activity: 840



View Profile WWW
February 13, 2011, 07:25:14 PM
 #3

The problem with including GPU related features in the main client is that GPU computing is very hardware / operating system dependent.  At the very least, installing additional software or drivers is required.

Cryptocoin Mining Info | OTC | PGP | Twitter | freenode: dust-otc | BTC: 1F6fV4U2xnpAuKtmQD6BWpK3EuRosKzF8U
noclip
Newbie
*
Offline Offline

Activity: 6


View Profile
February 13, 2011, 07:33:44 PM
 #4

Is there a way to use a GPU to do the initial block verification? If not, I think this is a feature the developer(s) should consider adding.
By design it's very very fast to verify a block compared to generating. A CPU has more than enough processing power.

I may be wrong about where the bottleneck is, but I was referring to the initial verification of the 100,000 existing blocks when you first start using the client.

The problem with including GPU related features in the main client is that GPU computing is very hardware / operating system dependent.  At the very least, installing additional software or drivers is required.

Hmm, has some kind of standardized plugin architecture been considered (aside from the current RPC method)? You could even throw in a few default plugins for each OS/popular GPU combination. Would it be unsafe?
grondilu
Legendary
*
Offline Offline

Activity: 1134


View Profile
February 13, 2011, 07:54:05 PM
 #5

I may be wrong about where the bottleneck is, but I was referring to the initial verification of the 100,000 existing blocks when you first start using the client.

It is the downloading part which takes some time.  Not the verification.

It is therefore a matter of bandwith, not computing power.
dirtyfilthy
Member
**
Offline Offline

Activity: 75


View Profile
February 13, 2011, 08:41:12 PM
 #6

I may be wrong about where the bottleneck is, but I was referring to the initial verification of the 100,000 existing blocks when you first start using the client.

It is the downloading part which takes some time.  Not the verification.

It is therefore a matter of bandwith, not computing power.


This becomes much less true if you use getheaders to download the blocks on a comparatively under-powered device like an Android phone.

Address: 1EkSP5Uqf5Fhs8Gg4XJG2b3hrFS7Vm8WFz
grondilu
Legendary
*
Offline Offline

Activity: 1134


View Profile
February 13, 2011, 08:46:43 PM
 #7

I may be wrong about where the bottleneck is, but I was referring to the initial verification of the 100,000 existing blocks when you first start using the client.

It is the downloading part which takes some time.  Not the verification.

It is therefore a matter of bandwith, not computing power.


This becomes much less true if you use getheaders to download the blocks on a comparatively under-powered device like an Android phone.

I very much doubt it is a good idea to run a full bitcoin client on a smartphone.  But this is my personnal opinion.
theymos
Administrator
Legendary
*
Offline Offline

Activity: 2492


View Profile
February 13, 2011, 10:14:52 PM
 #8

It is the downloading part which takes some time.  Not the verification.

It is therefore a matter of bandwith, not computing power.

Downloading and verification are actually quite fast. It's creating the index file that's slow.

1NXYoJ5xU91Jp83XfVMHwwTUyZFK64BoAD
dirtyfilthy
Member
**
Offline Offline

Activity: 75


View Profile
February 13, 2011, 11:17:15 PM
 #9


I very much doubt it is a good idea to run a full bitcoin client on a smartphone.  But this is my personnal opinion.


I'm curious, why do you think this? Lots of people seem to want it. It wouldn't be a "full" client anyway, in the sense of retransmitting blocks or verifying every transaction.

Address: 1EkSP5Uqf5Fhs8Gg4XJG2b3hrFS7Vm8WFz
grondilu
Legendary
*
Offline Offline

Activity: 1134


View Profile
February 13, 2011, 11:39:30 PM
 #10

I'm curious, why do you think this? Lots of people seem to want it. It wouldn't be a "full" client anyway, in the sense of retransmitting blocks or verifying every transaction.

I just don't trust smartphones for security.  Most of them don't even ask for a password to connect.  How is that even possibly secure?
LZ
Staff
Legendary
*
Offline Offline

Activity: 1456


Satoshi everywhere!


View Profile WWW
February 14, 2011, 12:44:32 PM
 #11

Downloading and verification are actually quite fast. It's creating the index file that's slow.
Can it somehow work without creating the index file? It is really slow.

"Never invest unless you can afford to lose your entire investment." © S3052
Mike Hearn
Legendary
*
Offline Offline

Activity: 1526


View Profile
February 17, 2011, 11:11:57 AM
 #12

Yes, the "client mode" that's nearly finished in the client can speed up initial block verification considerably. However a client run in that mode can't mine.

Once mining is better separated from the main client the initial chain can be downloaded much faster.
Hal
VIP
Sr. Member
*
Offline Offline

Activity: 314



View Profile
February 17, 2011, 11:01:14 PM
 #13

I've done some benchmarking suggesting that the main CPU bottleneck on initial block download is verifying digital signatures on all transactions in all blocks. If I download from another client on the LAN, I get up to block 70,000 in about 5 minutes, but the rest takes like half an hour.

Hal Finney
theymos
Administrator
Legendary
*
Offline Offline

Activity: 2492


View Profile
February 18, 2011, 02:48:01 AM
 #14

I've done some benchmarking suggesting that the main CPU bottleneck on initial block download is verifying digital signatures on all transactions in all blocks. If I download from another client on the LAN, I get up to block 70,000 in about 5 minutes, but the rest takes like half an hour.

Gavin mentioned that using the -rescan switch significantly reduces the "download" time. Does -rescan do verification?

1NXYoJ5xU91Jp83XfVMHwwTUyZFK64BoAD
riX
Sr. Member
****
Offline Offline

Activity: 327



View Profile
March 09, 2011, 09:11:12 PM
 #15

I've not tried the -rescan switch, but running the client from a ram disk when doing the initial block chain download speeds up the process quite a bit. Seems like there might be some inefficient disk I/O going on.

Pages: [1]
  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!