一定要用cpu挖礦
『壹』 為什麼挖礦只用顯卡不用CPU
CPU擅長的復雜運算,顯卡使用的GPU進行的是簡單通用計算。因此可以堆疊成百上千個流處理器,每一個流處理器就像是小小的CPU,雖然其運行復雜程序的能力遠遠沒有CPU來的給力,但是集成的流處理器多,因此實際性能尤其是單精度浮點性能要比CPU強的多。
挖礦可以認為是利用顯卡在做不斷地通用計算,並且這個計算復雜度比較低而且相當重復,顯卡使用的流處理器正好適合這樣的演算法。
就像是不斷地解方程組,顯卡是2000位中學生,而CPU則是8名數學博士。雖然數學博士的數學知識遠遠超過中學生,但是像解虛擬貨幣這樣的中等方程組的速度8名數學博士肯定不如2000名中學生來的快。
而且顯卡可以很容易的組成多顯卡平台,顯卡越多,運算數量也大大增加。
『貳』 為什麼顯卡適合挖礦而不是CPU
原因是因為btc所執行的任務是很簡單的一個解密碼的計算,
並不需要太多的指令.也就是說,btc的任務只需要一些特定的晶體管就可以執行了.
用cpu執行挖礦的任務,cpu因為需要很多晶體管來執行各種不同的指令,一個周期內很多晶體管都是閑置的.速度慢正常.
顯卡為了加強顯示圖像的能力,省掉了很多與顯示功能無關的晶體管,所以顯卡只能顯示畫面,但是在顯示畫面這個任務上,比cpu快很多.
而btc所需要執行的任務和顯卡正好差不多,所以顯卡挖礦比cpu快.
同是顯卡,a卡的任務的執行方式比n卡更接近btc的計算方式,所以a卡更適合挖礦.
『叄』 有沒有可能設計一種只能使用CPU的挖礦演算法
CPU擅長的是像操作系統、系統軟體和通用應用程序這類擁有復雜指令調度、循環、分支、邏輯判斷以及執行等的程序任務。它的並行優勢是程序執行層面的,程序邏輯的復雜度也限定了程序執行的指令並行性,上百個並行程序執行的線程基本看不到。GPU擅長的是圖形類的或者是非圖形類的高度並行數值計算,GPU可以容納上千個沒有邏輯關系的數值計算線程,它的優勢是無邏輯關系數據的並行計算
『肆』 為什麼都用顯卡挖礦不是用CPU挖礦
因為btc所執行的任務是很簡單的一個解密碼的計算, 並不需要太多的指令.也就是說,btc的任務只需要一些特定的晶體管就可以執行了。
用cpu執行挖礦的任務,cpu因為需要很多晶體管來執行各種不同的指令,一個周期內很多晶體管都是閑置的.速度慢正常。
顯卡為了加強顯示圖像的能力,省掉了很多與顯示功能無關的晶體管,所以顯卡只能顯示畫面,但是在顯示畫面這個任務上,比cpu快很多. 而btc所需要執行的任務和顯卡正好差不多,所以顯卡挖礦比cpu快. 同是顯卡,a卡的任務的執行方式比n卡更接近btc的計算方式,所以a卡更適合挖礦。
『伍』 為什麼挖礦只用顯卡不用cpu
原因是因為btc所執行的任務是很簡單的一個解密碼的計算, 並不需要太多的指令.也就是說,btc的任務只需要一些特定的晶體管就可以執行了.
用cpu執行挖礦的任務,cpu因為需要很多晶體管來執行各種不同的指令,一個周期內很多晶體管都是閑置的.速度慢正常.
顯卡為了加強顯示圖像的能力,省掉了很多與顯示功能無關的晶體管,所以顯卡只能顯示畫面,但是在顯示畫面這個任務上,比cpu快很多. 而btc所需要執行的任務和顯卡正好差不多,所以顯卡挖礦比cpu快. 同是顯卡,a卡的任務的執行方式比n卡更接近btc的計算方式,所以a卡更適合挖礦.
『陸』 挖礦疑問解答:挖礦為什麼用顯卡不用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不能挖礦,其實只是效率、效益太低了而已。
『柒』 為什麼挖礦要用gpu而不是cpu
挖礦的軟體,從編程原理上來說,講究的是大規模並行運算。
顯卡GPU的流處理器數量非常多,比如古老的HD5770內置了800個流處理器,相當於擁有800個計算核心。而近幾年的主流高端顯卡,內置的流處理器個數更多,計算性能更加的強大。利用GPU進行挖礦運算,流處理器進行的就是並行運算,並且挖礦程序還對GPU並行運算進行了專門的優化,運算效率特別高,挖出比特幣的效率獲得了大大的提升。
CPU的核心是比較少,目前最牛逼的主流桌面級處理器核心數也不超過一二十個(很多還是超線程技術虛擬出來的邏輯核心),並行計算能力遠遠不如GPU。