Bitcoin Forum
May 05, 2024, 02:57:58 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 [2] 3 4 5 »  All
  Print  
Author Topic: Are GPU's Satoshi's mistake?  (Read 8135 times)
sharky112065
Sr. Member
****
Offline Offline

Activity: 383
Merit: 250



View Profile
October 01, 2011, 11:37:50 PM
 #21

I do not know whether or not he had though about GPU's or FPGA for mining, but he did put in difficulty adjustments, so I'm pretty sure he thought about better hardware coming out in the future.

Donations welcome: 12KaKtrK52iQjPdtsJq7fJ7smC32tXWbWr
1714877878
Hero Member
*
Offline Offline

Posts: 1714877878

View Profile Personal Message (Offline)

Ignore
1714877878
Reply with quote  #2

1714877878
Report to moderator
1714877878
Hero Member
*
Offline Offline

Posts: 1714877878

View Profile Personal Message (Offline)

Ignore
1714877878
Reply with quote  #2

1714877878
Report to moderator
If you want to be a moderator, report many posts with accuracy. You will be noticed.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1714877878
Hero Member
*
Offline Offline

Posts: 1714877878

View Profile Personal Message (Offline)

Ignore
1714877878
Reply with quote  #2

1714877878
Report to moderator
1714877878
Hero Member
*
Offline Offline

Posts: 1714877878

View Profile Personal Message (Offline)

Ignore
1714877878
Reply with quote  #2

1714877878
Report to moderator
1714877878
Hero Member
*
Offline Offline

Posts: 1714877878

View Profile Personal Message (Offline)

Ignore
1714877878
Reply with quote  #2

1714877878
Report to moderator
mrb
Legendary
*
Offline Offline

Activity: 1512
Merit: 1027


View Profile WWW
October 02, 2011, 01:20:29 AM
Last edit: October 02, 2011, 07:42:50 PM by mrb
 #22

Thanks - very revealing quote there. My reading of it is that he became aware of the GPU problem after the 'horse had already bolted' - and is thus appealing for a 'gentleman's agreement' for what he might have otherwise prevented in design from the outset.

Unlikely. You may have discovered the power of GPUs for the first time with Bitcoin; but when Bitcoin was being designed, the cryptographic community was already very well aware of their computing power for ALU-bound workloads like SHA-256 which mining is based on.

I don't understand why you consider GPUs as being a "problem" presumably because the average user without a GPU farm cannot compete... The average user, by definition, owns an average PC that will run workloads at an average performance. It is inevitable that specialized hardware will appear and significantly outperforms him. Even if mining was done by an algorithm designed to be costly to implement in hardware (like Tenebrix using scrypt), this would cause miners to evolve toward specialized hardware like many-core server farms.
worldinacoin
Hero Member
*****
Offline Offline

Activity: 756
Merit: 500



View Profile
October 02, 2011, 01:22:40 AM
 #23

I don't think he has made a mistake, hindsight is always 20/20
d.james
Sr. Member
****
Offline Offline

Activity: 280
Merit: 250

Firstbits: 12pqwk


View Profile
October 02, 2011, 01:42:16 AM
 #24

gpu mining helped btc price to go way up.

You can not roll a BitCoin, but you can rollback some. Cheesy
Roll me back: 1NxMkvbYn8o7kKCWPsnWR4FDvH7L9TJqGG
memvola
Hero Member
*****
Offline Offline

Activity: 938
Merit: 1002


View Profile
October 02, 2011, 01:49:11 AM
 #25

You're ignoring capital expenditures. At-home miners are leveraging existing hardware giving them a huge advantage over specialized businesses.

Thanks - yes, I had forgotten this entirely. Factoring this in, I'm guessing that a sufficiently well designed CPU-friendly currency could make commercial mining entirely unviable.  

The thing is, I just don't see how such a design is possible. Eventually, need for power efficiency will cross the barrier and investments will be made. With GPU's, we had something ordinary computer users could use to get in with little investment. Arguably, it's no longer the case now. With GPU-hostile algorithms, you actually raise the required investment to get a huge advantage, but once the barrier is crossed, no hobbyist will be able to mine for profit. If you can assume that there is an algorithm that is most efficient only on ordinary PC's, then I agree, but it's a very bold assertion.

My take of the matter is, at the point where casual Internet user begins using Bitcoin for payments, mining and even running a node will be out of the question for the ordinary PC, as long as you keep the proof-of-work and blockchain concepts. We could include an additional, alternative CPU friendly proof-of-work protocol in Bitcoin, but I don't think it will help in the long run. At least the current developers were aware of this, deriving from the wiki entries on future obstacles, and I'd assume Satoshi was too. Bitcoin will scale, but the ordinary user will connect to the network with lighter protocols, and obtain bitcoins using conventional methods.

The PC is dying anyway... Wink

(Edit: Also, arguably, mining is something never to be mentioned in the introductions to Bitcoin. IMHO it always had a bad effect on the overall publicity.)
Meni Rosenfeld
Donator
Legendary
*
Offline Offline

Activity: 2058
Merit: 1054



View Profile WWW
October 02, 2011, 05:40:53 AM
 #26

If this is agreed to be a problem, the hashing function can be changed to something for which ordinary PCs are more suitable, and it's possible this was Satoshi's plan.
My understanding is that this kind of agreement would require the agreement of the majority of the computing power of the BTC network and so is next to impossible?
This is a common misconception. Miners are the slaves, not the masters. Protocol changes require primarily the agreement of the majority of the economic power of the network. In theory, if everyone who actually uses Bitcoin - exchanges, eWallets, merchants, end users - switched one day, miners could try mining for the old protocol all they want but their blocks will be rejected by the network and be worthless.

In practice, having a majority of current miners leave will create a shock in the generation rate, and the difficulty adjustment algorithm doesn't handle such things well. But changing the hashing algorithm is actually easier in this regard, because you'll need to hardcode a new difficulty value anyway. There could be a brief period of vulnerability while people adjust to the idea of being able to mine on their CPU.

Am I mistaken that the Bitcoin protocol was built explicitly so that these are difficult to change, not easy?
Oh, I didn't say it would be easy. But the protocol was designed so that things that should be changed, can be changed, if there is a good enough reason and someone makes a case for them and achieves consensus. The only thing which is fundamental and must never be changed is the coin generation schedule. And that's not due to something technically special about that part, just that nobody in their right mind would agree to change this.

Exactly.  What makes it even less likely than other changes is that GPU have the majority of hashing power.  This GPU miners would in essence have to vote against their own interests.
Like I said, miners aren't all-powerful. They do have some bargaining power, which is more reason to do any necessary changes sooner rather than later. The change can be gradual so the people who are already invested won't lose their investment entirely.

1EofoZNBhWQ3kxfKnvWkhtMns4AivZArhr   |   Who am I?   |   bitcoin-otc WoT
Bitcoil - Exchange bitcoins for ILS (thread)   |   Israel Bitcoin community homepage (thread)
Analysis of Bitcoin Pooled Mining Reward Systems (thread, summary)  |   PureMining - Infinite-term, deterministic mining bond
Meni Rosenfeld
Donator
Legendary
*
Offline Offline

Activity: 2058
Merit: 1054



View Profile WWW
October 02, 2011, 05:48:31 AM
Last edit: October 02, 2011, 07:19:00 AM by Meni Rosenfeld
 #27

Not only did Satoshi planned for an increasing amount of power being thrown at mining, but he did know that GPUs would exel at it, way before any GPU miner even existed, in December 2009:

We should have a gentleman's agreement to postpone the GPU arms race as long as we can for the good of the network.  It's much easer to get new users up to speed if they don't have to worry about GPU drivers and compatibility.  It's nice how anyone with just a CPU can compete fairly equally right now.

Thanks - very revealing quote there. My reading of it is that he became aware of the GPU problem after the 'horse had already bolted' - and is thus appealing for a 'gentleman's agreement' for what he might have otherwise prevented in design from the outset.
Did you read the quote in context? (The quote header is a link.) The immediately preceding comment says

Suggestion :
Since the coins are generated faster on fast machines, many people will want to use their GPU power to do this, too.
So, my suggestion is to implement a GPU-computing support using ATI Stream and Nvidia CUDA.
So, this means GPU mining still wasn't implemented (and I think this remained the case for another year). And, like I and others said, GPGPU is old news (and was probably foreseen well before the popular implementations).

1EofoZNBhWQ3kxfKnvWkhtMns4AivZArhr   |   Who am I?   |   bitcoin-otc WoT
Bitcoil - Exchange bitcoins for ILS (thread)   |   Israel Bitcoin community homepage (thread)
Analysis of Bitcoin Pooled Mining Reward Systems (thread, summary)  |   PureMining - Infinite-term, deterministic mining bond
Meni Rosenfeld
Donator
Legendary
*
Offline Offline

Activity: 2058
Merit: 1054



View Profile WWW
October 02, 2011, 05:58:21 AM
 #28

The thing is, I just don't see how such a design is possible.
Did you read the scrypt paper (linked by the alt currency Tenebrix)? It sounds promising. In the end it's a numbers game, and I don't know what the numbers will be. But I think that if the Bitcoin economy as a whole decides it doesn't want specialized mining, it can be done - for example, by deciding to change the hashing function every year, so that noone will want to design chips that will expire by the time they are out.

1EofoZNBhWQ3kxfKnvWkhtMns4AivZArhr   |   Who am I?   |   bitcoin-otc WoT
Bitcoil - Exchange bitcoins for ILS (thread)   |   Israel Bitcoin community homepage (thread)
Analysis of Bitcoin Pooled Mining Reward Systems (thread, summary)  |   PureMining - Infinite-term, deterministic mining bond
memvola
Hero Member
*****
Offline Offline

Activity: 938
Merit: 1002


View Profile
October 02, 2011, 06:36:23 AM
 #29

Did you read the scrypt paper (linked by the alt currency Tenebrix)? It sounds promising. In the end it's a numbers game, and I don't know what the numbers will be. But I think that if the Bitcoin economy as a whole decides it doesn't want specialized mining, it can be done - for example, by deciding to change the hashing function every year, so that noone will want to design chips that will expire by the time they are out.

Yes, this would really eliminate specialized mining. I guess you could also have two or more hashing functions concurrently. You'd still need to update all clients but the switch would not be so dramatic from the miners' aspect (e.g. GPU's would still generate but now CPU mining would be more profitable).

I had tested scrypt, but I guess I'll need to look at the paper more closely. Thanks for the link.
Meni Rosenfeld
Donator
Legendary
*
Offline Offline

Activity: 2058
Merit: 1054



View Profile WWW
October 02, 2011, 06:51:00 AM
 #30

I guess you could also have two or more hashing functions concurrently.
Yes, this is what I alluded to when I said that "the change can be gradual", but it can only be done for a transitional period because you need to hardcode how the difficulties of the two hashing functions relate. Either have a shared difficulty, and you hardcode the ratio of the targets, or you have separate difficulties and you hardcode the difficulty adjustment algorithm to target a certain percentage of the total blocks coming from each method. A "gradual" change would be starting with 100% old method, 0% new method and slowly shifting to to 0% old, 100% new.

But this is only required when we make changes that obsoletes existing investments. It will be necessary at the time we adopt a "change every year" strategy, but once that's adopted there's no need for a gradual transition each year because there will be no investment in hardware specific to the function of the year.

1EofoZNBhWQ3kxfKnvWkhtMns4AivZArhr   |   Who am I?   |   bitcoin-otc WoT
Bitcoil - Exchange bitcoins for ILS (thread)   |   Israel Bitcoin community homepage (thread)
Analysis of Bitcoin Pooled Mining Reward Systems (thread, summary)  |   PureMining - Infinite-term, deterministic mining bond
Meni Rosenfeld
Donator
Legendary
*
Offline Offline

Activity: 2058
Merit: 1054



View Profile WWW
October 02, 2011, 07:14:18 AM
 #31

I don't understand why you consider GPUs as being a "problem" presumably because the average user without a GPU farm cannot compete...
If the vision is that Bitcoin will be completely decentralized and that everyone will mine (and I'm not saying this has to be the vision), then this is a problem, regardless of if it is an inevitable problem.

The average user, by definition, owns an average PC that will run workloads at an average performance. It is inevitable that specialized hardware will appear and significantly outperforms him. Even if mining was done by an algorithm designed to be costly to implement in hardware (like Tenebrix using scrypt), this would cause miners to evolve toward specialized hardware like many-core server farms.
At-home miners use hardware they already purchased for other purposes; they have a place for their PC with presumably sufficient cooling; they can mine only when their PC is on anyway so they pay only for the additional electricity of the CPU load, not to keep their computer running. Commercial miners need to pay for all of this as well as other expenses; they take the risk that Bitcoin value will decrease, that competition will increase, or that the hashing function used will change obsoleting their investment; and they still need it to be profitable enough to make for a viable business. For this, their hardware advantage needs to be huge.

How huge will it be? The idea with scrypt is that every core needs a certain amount of RAM, the exact amount being configurable. So those many-core severs will need lots of RAM to go along with it, which will get pretty expensive.

1EofoZNBhWQ3kxfKnvWkhtMns4AivZArhr   |   Who am I?   |   bitcoin-otc WoT
Bitcoil - Exchange bitcoins for ILS (thread)   |   Israel Bitcoin community homepage (thread)
Analysis of Bitcoin Pooled Mining Reward Systems (thread, summary)  |   PureMining - Infinite-term, deterministic mining bond
P4man
Hero Member
*****
Offline Offline

Activity: 518
Merit: 500



View Profile
October 02, 2011, 07:58:33 AM
 #32

It is even worse than you think.  All commercial SHA coprocessors are built for streaming, which doesn't work for bitcoin.

Care to elaborate? What is streaming in this context?

Gladiator
Newbie
*
Offline Offline

Activity: 42
Merit: 0


View Profile
October 02, 2011, 08:41:59 AM
 #33

GPU-minning is the only thing that saved Bitcoin from being overrun by bot-nets. And one of big reasons of Bitcoin growth.
GPU-minning is much more scalable than CPU-minning. And it attracts much more "investors".
So it's neither a mistake nor a bad thing.
FreeTrade (OP)
Legendary
*
Offline Offline

Activity: 1428
Merit: 1030



View Profile
October 02, 2011, 09:25:07 AM
 #34

So, this means GPU mining still wasn't implemented (and I think this remained the case for another year). And, like I and others said, GPGPU is old news (and was probably foreseen well before the popular implementations).

My reading is that he realised the error after it was too late to easily fix (big blockchain existing), but before any GPU miners had come online. Thus calling for a gentleman's agreement.

Membercoin - Layer 1 Coin used for the member.cash decentralized social network.
10% Interest On All Balances. Browser and Solo Mining. 100% Distributed to Users and Developers.
finway
Hero Member
*****
Offline Offline

Activity: 714
Merit: 500


View Profile
October 02, 2011, 09:41:53 AM
 #35

like Garvin said, the problem is msg relaying

teknohog
Sr. Member
****
Offline Offline

Activity: 519
Merit: 252


555


View Profile WWW
October 02, 2011, 09:59:32 AM
 #36

All commercial SHA coprocessors are built for streaming, which doesn't work for bitcoin.
Care to elaborate? What is streaming in this context?

I believe it means they are built for hashing huge sets of data. Latency is not a problem since you have to wait for entire incoming data anyway. However, Bitcoin miners hash lots of small packets, and the I/O latency becomes important. In FPGA miners, this is solved by generating new datasets inside the chip (by incrementing the nonce), and only getting external data in (from bitcoin getwork) every few seconds.

world famous math art | masternodes are bad, mmmkay?
Every sha(sha(sha(sha()))), every ho-o-o-old, still shines
Prattler
Full Member
***
Offline Offline

Activity: 192
Merit: 100


View Profile
October 02, 2011, 10:16:51 AM
 #37

GPU-minning is the only thing that saved Bitcoin from being overrun by bot-nets. And one of big reasons of Bitcoin growth.
GPU-minning is much more scalable than CPU-minning. And it attracts much more "investors".
So it's neither a mistake nor a bad thing.

I agree. We're talking money! It doesn't have to be fair, it has to be secure! GPU mining is only increasing security and this will not change in the near future. If anything, there should be anti-FPGA and anti-ASIC protocols, but GPU is more than fine!
teknohog
Sr. Member
****
Offline Offline

Activity: 519
Merit: 252


555


View Profile WWW
October 02, 2011, 10:42:57 AM
 #38

It doesn't have to be fair, it has to be secure! GPU mining is only increasing security and this will not change in the near future.

Agreed!

Quote
If anything, there should be anti-FPGA and anti-ASIC protocols, but GPU is more than fine!

Not agreeing with this one, but perhaps it's just because I mine with FPGAs Wink

First of all, FPGAs are more power efficient than GPUs. GPUs get about 2 Mhash/J, but good FPGAs get about 20. Getting the same work done with less wasted energy (and environment) should be the goal of any sane person. Of course, the initial cost of FPGAs is a problem, and GPUs are better in the short run.

Secondly, if the algorithm really only works on a CPU, then I'll download a CPU design on the FPGA and keep on mining Wink Though the point of reconfigurable hardware is that you'll almost always find a more efficient implementation than copying the original hardware.

As for ASICs, I think we should be open to changing the algorithm anyway, so fixed-function chips would not make sense in the long run. For example, if SHA2 is broken.

world famous math art | masternodes are bad, mmmkay?
Every sha(sha(sha(sha()))), every ho-o-o-old, still shines
Etlase2
Hero Member
*****
Offline Offline

Activity: 798
Merit: 1000


View Profile
October 02, 2011, 01:59:10 PM
 #39

First of all, FPGAs are more power efficient than GPUs. GPUs get about 2 Mhash/J, but good FPGAs get about 20. Getting the same work done with less wasted energy (and environment) should be the goal of any sane person. Of course, the initial cost of FPGAs is a problem, and GPUs are better in the short run.

You say this but don't understand the real-world relevance. Bitcoins have most certainly gone up in price due to GPU mining and lack of energy efficiency. The more energy put into the system, the more coins cost to make, the higher the bitcoin price is. If less energy is wasted, more people mine because it is profitable. For now, of course. But the more demand that is created, the more tempted coin hoarders are to sell and waste your effort. Such a self-sustaining system.

DeathAndTaxes
Donator
Legendary
*
Offline Offline

Activity: 1218
Merit: 1079


Gerald Davis


View Profile
October 02, 2011, 02:33:27 PM
 #40

You say this but don't understand the real-world relevance. Bitcoins have most certainly gone up in price due to GPU mining and lack of energy efficiency. The more energy put into the system, the more coins cost to make, the higher the bitcoin price is. If less energy is wasted, more people mine because it is profitable. For now, of course. But the more demand that is created, the more tempted coin hoarders are to sell and waste your effort. Such a self-sustaining system.

Who cares?

I mean it might hurt you personally but bitcoin doesn't need to have any set price.  If the price was stable it wouldn't matter if BTC was $10,000 per coin or $0.01 per coin.  Now GPU miners would be crushed if the price of bitcoin (relative to difficulty) fell 90% but the economy would work at any exchange rate.
Pages: « 1 [2] 3 4 5 »  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!