一、挖矿疑问解答:挖矿为什么用显卡不用cpu
没说CPU不能挖啊,最开始都是用CPU挖,但是随着对挖矿算法的深入研究,大家发现原来挖矿都是在重复一样的工作,而CPU作为通用性计算单元,里面设计了很多诸如分支预测单元、寄存单元等等模块,这些对于提升算力是根本没有任何帮助的。
另外,CPU根本不擅长于进行并行运算,一次最多就执行十几个任务,这个和显卡拥有数以千计的流处理器差太远了,显卡高太多了,因此大家慢慢针对显卡开发出对应的挖矿算法进行挖矿。
以BTC为例,它最基本的算法原理就是,把已有的10分钟内的所有交易作为一个输入,加上一个随机数,当10分钟内所有交易记录加上你的这个随机数计算出一个SHA256的hash。里面几乎都是整数运算,这个根本就像是为显卡特别打造一样,显卡非常适合这种无脑性算法,流处理器数目越多约占优势。
就Hash计算而言,它几乎都是独立并发的整数计算,GPU简直就是为了这个而设计生产出来的。相比较CPU可怜的2-8线程和长度惊人的控制判断和调度分支,GPU可以轻易的进行数百个线程的整数计算并发(无需任何判断的无脑暴力破解乃是A卡的强项)。
OpenCL可以利用GPU在片的大量unified shader都可以用来作为整数计算的资源。而A卡的shader(流处理器)资源又是N的数倍(同等级别的卡)
不过到了后来大家发现,显卡还是太弱了,直接上ASIC大规模堆ALU单元就能极大程度提升算力,巴掌大的算力板的算力已经是显卡的好几十倍,所以现在比特币不用专门的ASIC矿机根本挖不动。
尽管后期的币种LTC所使用的Scrypt算法还引入了大量相互依赖的、随机的访存指令,当Footprint足够大时,还会在GPU的L2级别、甚至TLB级别出现大量的缓存失效,从而产生更多的DRAM访问,以弱化矿机(ASIC/FPGA)相较于GPU在整数运算性能上的优势,但是依然被人针对性研发出矿机,目前也只有专门矿机才能挖。
不过像第二代虚拟货币(比如说是ETH、ZEC这种)由于吸取了前辈们被爆算法的经验,在挖掘算法上做了更加特别优化,防止出现无脑的运算,对于显存要求特别高,因此可以有效抵抗矿机的入侵。
也因为ETH这种只能靠显卡挖矿,造成了2017年下半年开始的显卡涨价潮、缺货潮,很多矿主都卖了成千张显卡回去组建矿机挖掘这些虚拟货币。
久而久之,大家都认为CPU不能挖矿,其实只是效率、效益太低了而已。
二、为什么比特币挖矿要用显卡
为什么要用显卡挖矿?
相比较于CPU的复杂运算,显卡使用的GPU进行的是通用计算。因此可以堆叠成百上千个流处理器,每一个流处理器就像是小小的CPU,虽然其运行复杂程序的能力远远没有CPU来的给力,但是架不住流处理器多,因此实际性能尤其是单精度浮点性能要比CPU强的多。
图上为显卡的架构图,密密麻麻的就是流处理器
挖包括比特币之内的动作大家可以认为是利用显卡在做不断地通用计算,并且这个计算复杂度比较低而且相当重复,显卡使用的流处理器正好适合这样的算法。就像是不断地解方程组,显卡是2000位中学生,而CPU则是8名数学博士。虽然数学博士的数学知识远远超过中学生,但是像解虚拟货币这样的中等方程组的速度8名数学博士肯定不如2000名中学生来的快。
图上为比特币挖矿机
因此大家一开始就使用显卡来挖掘虚拟货币。之后有人研究出特定的算法,让显卡的流处理器针对的虚拟货币特解进行大幅强化,这就是矿机的由来。
为什么AMD的显卡被矿工抢购?
和Nvidia的显卡相比,AMD的显卡在通用性能上具有比较大的优势,或者通俗来讲就是说流处理器多。普通消费者一般使用显卡主要是玩游戏,而玩游戏则需要显卡进行图形输出,其运算复杂度远超比特币这样的算数学解。因此实际游戏性能,相同定位的N卡和A卡是差不多的。
但是我们之前说到过,A卡由于流处理器多,因此对于获得虚拟货币这样的通用计算来讲十分地适合,获得特定解的速度也比N卡高的多,因此众多矿工如今大量抢购A卡来进行虚拟货币的运算以谋求利润。
当然随着Nvidia推出了Pascal架构的显卡,目前N卡在挖掘虚拟货币上的能力已经不像之前那样和A卡相差巨大。于是在目前A卡普遍缺货的情况下那些中端N卡也就成为矿工们退而求其次的选择。
矿卡有啥坏处?
最后说说为什么大家在淘二手卡的时候不能选择矿卡。由于矿工们挖矿比特币最重要的就是谋求利润。因此他们使用的显卡每时每刻都在运行和计算,其强度远甚于日常的游戏应用。或者说运行这样的计算一天,相当于我们普通人运行显卡一个月。
并且挖掘虚拟货币的场所基本都是多显卡聚集的地方,成千上万的显卡在一个房间内不断地运算,其发热量也是相当巨大的,而矿工们也不可能像普通消费者一样选择散热条件良好的机箱让热量能够顺利放出,这样子显卡还在高温条件下进行7*24小时的运算,更是加深了其老化程度。
如此所作所为导致的结果便是用来挖矿的显卡过早地损耗,如果购买的这些显卡,结果便是运行不稳定,重启等事情会不断发生。
而且目前厂商对于矿卡也是严格要求,比如说严禁二手买卖以及缩短保质期,如果用户购买了这些矿卡显卡,日后维修也将是一个不小的挑战。
三、用显卡挖矿是怎么回事
挖矿,其实是一种解题过程,先弄一个有很多答案的公式,然后庄家每隔一段时间放出一条随机答案,一个答案就是一个虚拟币的雏形,看谁在这个时候正好算到这个答案,那么这个人或者这几个人分这一个虚拟币,在这个结果出来时,虚拟币就附带了解题人的计算机信息和解题时间等信息,让虚拟币比较“实体化”,也就是有追溯性和唯一性属性,这时,虚拟币才算正式被挖出来了。
用显卡是因为显卡的计算方式侧重点与CPU不大一样,CPU侧重逻辑计算,显卡就是单纯的简单计算,挖矿(也就是解题)正好需要简单计算能力,所以用显卡挖矿
比特币矿机就是进行比特币挖矿的设备,挖矿设别可以是普通的电脑,也可以是usb矿机,也可以是专业的ASIC矿机。
普通的电脑cpu确实可以进行比特币挖矿,但由于全世界的比特币挖矿已经形成一个庞大的产业,个人使用普通电脑是很难挖到比特币的。你需要购买昂贵且专业的比特币
ASIC矿机
并加入比特币矿工组织才能挖到比特币也即是加入一个矿池进行挖矿。
首先CPU和GPU在计算机中为了不同的使命,设计上不同:
1、CPU主要为串行指令而优化,而GPU则是为大规模并行运算而优化。
2、现代的多核CPU针对的是指令集并行(ILP)和任务并行(TLP),而GPU则是数据并行(DLP)。
3、GPU往往拥有更大带宽的Memory,也就是所谓的显存,因此在大吞吐量的应用中也会有很好的性能。
四、挖矿为什么要用显卡而不是cpu
首先我们需要了解挖矿这个概念。以比特币、以太坊为代表的数字货币,使用的是区块链技术,计算机向区块链网络贡献算力,即可获得按照算力大小比例分配的数字货币,这一过程是去中心化、由算法保证的,通过贡献算力换取区块链算法生成的数字货币的过程,就是挖矿。
挖矿需要的算力,往往是通过哈希、解密等算法完成的。这类算法有一个特征,那就是复杂程度低,但强度极大,这正是GPU擅长的工作。
CPU和GPU都可以进行计算,但擅长的方面各不相同。CPU核心更少,但架构复杂,拥有复杂的逻辑控制单元,更擅长复杂的运算;而GPU拥有大量的核心,但架构相对简单,非常适合大吞吐量的高密度计算。
做个粗暴的类比,CPU相当于是一个会高数的大学生,而GPU则像是一百个只会四则运算的小学生,要解奥数题那肯定大学生更强,但如果要算1000道加减乘除题,一个大学生无论如何也不可能算得比一百个小学生快——小学生们可以一起做并行计算,而大学生一次才能算几题?
而挖矿的哈希、加密等算法,恰恰就如同海量的加减乘除题一样,它们难度不高,但却需要不断进行重复计算,计算量极大,这就和显卡的长处不谋而合。
在这一轮数字货币暴涨的行情中,显卡价格被大大推高,其中的最大推手,其实并不是大家最为耳熟能详的比特币,而是以太坊。
时至今日,参与比特币挖矿的算力已经非常庞大,光靠显卡已经无法在矿池中取得足够的分配权重,现在需要专门的矿机才能在比特币挖矿中分一杯羹。
而以太坊不同,它目前仍可以通过显卡计算获得,而且它的算法Ethash还对RAM有着非常高的要求,运算后的结果会直接存储在RAM中,当前RAM容量底线是4G。因此,现在算力达到一定程度、大显存的显卡备受青睐,为了达到更强的挖矿性能,不少矿工还会对显存进行超频。可见,目前显卡的确是挖以太坊最适合的工具之一,而CPU则并不擅长此道。
五、***矿机***的算力为什么在显卡上***而不是CPU处理器呢
之所以挖矿用显卡而不用CPU,关键在于显卡的核心部件——GPU,GPU作为图形处理器,它其实也是一种高性能计算芯片,GPU也具备很强的运算能力,只不过GPU的运算能力跟CPU的侧重点不同。
cpu……一个顶级28核心e7怕是都赶不上一个狗屎般的gt1030,在某些方面。
原理来说,假如cpu有二百多个功能,显卡只有几个,矿机的asic芯片只有两个……所以矿机芯片结构很简单,也就很容易可以设计和改进
矿机一般有几百或者上千个芯片,当然比显卡一个芯片强
CPU最多有三位数的核心,可是GPU却都能轻轻松松上几百甚至几千。
本站所有软件信息均由用户上传发布,版权归原著所有。如有侵权/违规内容,敬请来信告知邮箱:764327034@qq.com,我们将及时撤销! 转载请注明出处:https://czxurui.com/jys/149757.html
发表回复
评论列表(0条)