呵呵,这么红火的东东,不了解就长不了见识。
转一下两个东东,这挖矿机天天在算什么内容,还有,当前为什么GPU比CPU有优势:
~~~~~~~~~~~~~~
比特币说的是计算的特定数学问题到底是什么问题?那个数学问题有什么用啊??求解啊?
所谓的计算特定数学问题(挖矿),其实是在生成 block (一种用于维护 系统的安全性的机制). 它所涉及的本质导致它越来越难算.
这个计算与其他的分布计算项目没有任何关系, 只是一种用于内部的计算, 只是为了维护 系统的安全性.原文:The computations done when mining are internal to Bitcoin and not related to any other distributed computing projects. They serve the purpose of securing the Bitcoin network, which is useful.1、计算的就是本身。这一计算过程就是的发行过程。
2、因上述原因,我觉得可以理解为没有实际意义。~~~~~~~~~~~~~~~
比特币挖矿越发火热的现在,想必很多人都知道靠显卡GPU运算挖矿速度远远高于CPU,当然即使GPU运算不能与专业矿机对比,但这不妨碍业余矿工对GPU运算的推崇。那么为什么GPU 运算相对 CPU 在比特币矿业中会占有绝对优势呢?今天就来解读一下 GPU 运算与比特币挖矿。
首先CPU和GPU在计算机中为了不同的使命,设计上不同:
1 CPU 主要为串行指令而优化,而GPU则是为大规模并行运算而优化。
2 现代的多核 CPU 针对的是指令集并行(ILP)和任务并行(TLP),而 GPU 则是数据并行(DLP)。
3 GPU 往往拥有更大带宽的 Memory,也就是所谓的显存,因此在大吞吐量的应用中也会有很好的性能。
CPU需要很强的通用性来处理各种不同的数据类型,同时又要逻辑判断又会引入大量的分支跳转和中断的处理。这些都使得CPU的内部结构异常复杂。而GPU面对的则是类型高度统一的、相互无依赖的大规模数据和不需要被打断的纯净的计算环境。GPU采用了数量众多的计算单元和超长的流水线,但只有非常简单的控制逻辑并省去了Cache。而CPU不仅被Cache占据了大量空间,而且还有有复杂的控制逻辑和诸多优化电路,相比之下计算能力只是CPU很小的一部分。所以与CPU擅长逻辑控制和通用类型数据运算不同,GPU擅长的是大规模并发计算,适合于密码破解。
简单来说,CPU是通用运算简单说就是无脑算、暴力算不管是100个小朋友分苹果还是模拟地球都能分解成 1+1=2这类最基本的给暴力算出来。GPU 就是专门来处理高阶数学算法的,比如算出、光源、物体、视点、阴影的相对位置,这就要三角函数给堆出来。而比特币挖掘器采用的是SHA-256,这是由美国国家安全局发明的一种安全散列函数,一般用于密码加密与解密。这种算法会进行大量32位整数循环右移运算(Right-Rotate),很适合擅长大规模并发计算,破解密码的 GPU来运算。
以Folding@home为例,Folding@home是一个研究蛋白质折叠、误折、聚合及由此引起的相关疾病的分布式计算工程(与比特币模式类似)。最开始F@H仅支持CPU,后来加入了对PS3游戏机的支持,但同样是使用内置的CELL处理器做运算。F@H因ATI的加入为GPU计算翻开了新的一页,如今F@H第二代GPU客户端已经能够支持ATI和NVIDIA的全系列DX10 11 GPU。
使用CPU计算时间需要52天以上(i7-2600K)
使用GPU计算时间仅需要 7小时11分钟(GTS450)
不仅CPU 和 GPU存在巨大差距,不同架构的GPU也有相当大的差别。比特币的计算是基于SHA-256算法的,这个算法会有大量的位操作“Right-Rotate”,对于这个操作AMD显卡原生只需要1个硬件指令,而NVIDIA卡则需要用3个硬件指令来模拟,因此即使运算单元数量接近,AMD显卡的挖矿效率仍然比NVIDIA显卡要高。
当然现在也出现了使用动态Hash算法,达到仅限CPU挖矿的YaCoin,目前不支持GPU或者ASIC矿机。想用CPU挖矿的可以关注一下。偶尔玩玩主流的比特币的话,GPU还是最好的选择。