當前位置:
首頁 > 最新 > 為什麼不能用CPU挖礦?秒懂

為什麼不能用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不能挖礦,其實只是效率、效益太低了而已。

文章糾錯

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 驅動之家 的精彩文章:

69元!有品上架iPhone X液態硅膠保護殼:五色可選
蘋果發新財報:營收創新高 iPhone X立功!

TAG:驅動之家 |