Bitcoin Forum
December 03, 2016, 01:47:49 PM *
News: Latest stable version of Bitcoin Core: 0.13.1  [Torrent].
 
   Home   Help Search Donate Login Register  
Pages: « 1 2 3 4 [5]  All
  Print  
Author Topic: Are GPU's Satoshi's mistake?  (Read 7344 times)
hmongotaku
Full Member
***
Offline Offline

Activity: 168


View Profile WWW
October 04, 2011, 03:58:39 PM
 #81

Satoshi used google servers and Suupah Komputahz! chi chang!

1480772869
Hero Member
*
Offline Offline

Posts: 1480772869

View Profile Personal Message (Offline)

Ignore
1480772869
Reply with quote  #2

1480772869
Report to moderator
1480772869
Hero Member
*
Offline Offline

Posts: 1480772869

View Profile Personal Message (Offline)

Ignore
1480772869
Reply with quote  #2

1480772869
Report to moderator
1480772869
Hero Member
*
Offline Offline

Posts: 1480772869

View Profile Personal Message (Offline)

Ignore
1480772869
Reply with quote  #2

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

Posts: 1480772869

View Profile Personal Message (Offline)

Ignore
1480772869
Reply with quote  #2

1480772869
Report to moderator
ArtForz
Sr. Member
****
Offline Offline

Activity: 406


View Profile
October 04, 2011, 04:21:37 PM
 #82

Currently 76 bytes? Not using the getwork protocol. A getwork response without http headers is already close to 600 bytes... to transfer 76 bytes of data.

Good to know.  Never looked inside a getwork request.  I just knew it was 76 bytes of actual header information.  600 for 76 seems kinda "fat" but then again as you point out even at 600b per header the bandwidth is trivial so likely there was no concern with making the getwork more bandwidth efficient.

Nice analysis on complete bandwidth economy.  Really shows bandwidth is a non-issue.  We will hit a wall on larger pools computational power long before bandwidth even becomes a topic of discussion.   I think a 64bit nonce solves the pool efficiency problem more elegantly but the brute force method is just to convert a pool server into an associated collection of independent pool servers (i.e. deepbit goes to a.deepbit, b.deepbit, c.deepbit ... z.deepbit) each processing a portion of pool requests.

Still had Satoshi imagines just a few years into this experiment  miners would be getting up to 3GH per machine he likely would have gone with a 64bit nonce.  When he started a high end CPU got what 100KH/s?  4 billion nonce range lasts a long time with sub MH performance. 
That also shouldnt become a major issue, merely the current implementation scaling badly there.
To increment the extraNonce in the coinbase transaction, we rehash every transaction in the block and rebuild the whole merkle tree, so the whole thing ends up scaling with (blocksize * requestrate). Adding the obvious optimization of storing the opposite side for the merkle branch and only rehashing coinbase and its merkle branch, we need an additional (log2(#tx in block) * 32) bytes of memory but scale roughly with (log2(#tx in block) * requestrate) for getwork.
At something like a current average block (~10kB in ~20 transactions), that comes out to ~240 vs. 8 sha 256 operations for 4Ghps worth of work.
Scaling to visa-level 10 kTX/sec (that'd be 3GB blocks containing ~6M transactions ...), it's ... about 50 sha256 operations for 4Ghps worth of work.
So for a pool roughly the size of the current network that'd be... for current tx volume 24k sha256/sec vs 150k sha256/sec for 10k tx/s.
And using something like "miners increment block time themselves", this can be cut down by another factor of 60.
Scaling this for increasing hashrates due to Moore's law... well... that applies to both sides.
So for the getwork+PoW side, I just don't see any hard issues coming up.
I expect to see way bigger problems on the transaction handling side of things scaling to such massive levels, assuming every tx has 2 inputs + outputs on average, you'd be verifying about 20k ECDSA sigs/second and on every block you're marking ~12M outputs as spent and storing ~12M new outputs in some kind of transactional fashion, probably just the list of current unspent outputs would be on the order of 10s of GB ... ugh.

bitcoin: 1Fb77Xq5ePFER8GtKRn2KDbDTVpJKfKmpz
i0coin: jNdvyvd6v6gV3kVJLD7HsB5ZwHyHwAkfdw
Mike Hearn
Legendary
*
Offline Offline

Activity: 1526


View Profile
October 05, 2011, 08:05:52 PM
 #83

Satoshi knew about GPUs back in at least April of 2009, which was only a few months after launch. So for sure he knew about it before the system was designed.

Quote from: satoshi
Eventually, most nodes may be run by specialists with multiple GPU cards.  For now, it's nice that anyone with a PC can play without worrying about what video card they have, and hopefully it'll stay that way for a while.  More computers are shipping with fairly decent GPUs these days, so maybe later we'll transition to that.
worldinacoin
Hero Member
*****
Offline Offline

Activity: 658



View Profile WWW
October 10, 2011, 05:33:57 AM
 #84

I wonder if Satoshi will ever come out to the open.  Or is he already among us? Smiley
Gabi
Legendary
*
Offline Offline

Activity: 1050


View Profile
October 10, 2011, 08:32:18 AM
 #85

What if satoshi is a group of people?
Pages: « 1 2 3 4 [5]  All
  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!