Bitcoin Mining and other number crunching activities
Genetix
Posts: 1,754
Even though the Propeller lacks an MPU (Mathematics Processing Unit) can it be used for Bitcoin Mining or any other activity that involves number crunching such as Seti?
Comments
is more likely to ask for fast multiply/divide, but even so...
Yes it can be used for number crunching duties. Why not, it's a computer.
No, don't even think about it.
For example to even start to make a few cents worth of bit coin you now need dedicated chips to do it that are crunching those numbers some millions of times faster that a top of the line PC.
The mathematics of bitcoin are such that 99.9% of human beings are never going to understand how it works. Myself included.
However, if you want to get a little idea of how it works plus one guys practical experience and demonstrations watch these two nice videos by Martin Lorton
http://www.youtube.com/watch?v=mb5QxUsiqF4
http://www.youtube.com/watch?v=ae97jo4wtis
That was a year ago already, FPGA's are now too slow to be economically viable. Today you need ASICs. Watch the videos and see why.
I suppose that quantum computation would be the ideal method, if anyone can get it to work properly.
NWCCTV, bitcoin mining is similar to code breaking except the codes gets harder to crack everytime one is released. Bitcoin codes are released periodically and then whomever unlocks it first gets it. Years ago a single PC had a chance of unlocking a bitcoin but now it takes groups of computers or special hardware and the computing needed to unlock each new release only grows.
A Prop executes at 20 million instructions per second, an old PC might be clocked at 2GHz, The Prop is a 100 times slower.
For programs bigger than what fits in COG you need to LMM. At least 4 times slower again gives 400 times slower.
That's only for very small 32KB programs for bigger you need external memory. Another slow down by a factor ten. 4000 times slower.
For scientific number crunching you will want floating point. This is done in software on the Prop so say another 100 times slow down. 400000 times slower.
Of course I have not taken into account that code on the PC's processor that does not fit in cache will slow down by 10 or a 100 or more. But hey what's a couple of zeros when you have such big numbers?
As you see you would almost be better off using a calculator than trying to do serious number crunching on a Propeller.
People have made real performance measurements of the Propeller, for example here:
http://forums.parallax.com/showthread.php/135497-Cache-volatile-memory-options
Where we read "EEPROM XMMC is a little slow at about 0.18 DMIPS. For comparison LMM runs at 4 DMIPS. 2x QuadSPI is at 0.71 DMIPS with the slow version of the driver."
As compared to actual PC results of 10's of thousands of DMIPS. See here: http://www.roylongbottom.org.uk/dhrystone results.htm
Also things like Bitcoin mining were done with GPU's. It's probably not physically possible to build a Propeller system to match that kind of performance.
Use the Propeller for what it is intended, real-time, real world interfacing, control and monitoring. The PC cannot touch it there!
Math is just the beginning.