GPU顯示卡能取代CPU處理器嗎?這比喻絕了

codebay發表於2018-04-07

  GPU是替代不了CPU的,同樣,CPU也替代不了GPU。

  如果形象點理解,GPU就像一群螞蟻,這些螞蟻都做著同樣的事,而CPU就像一隻猴子,這隻猴子做著各種不同的事。

圖0:GPU顯示卡能取代CPU處理器嗎?這比喻絕了

  從根本上說CPU和GPU它們的目的不同,且有不同側重點,也有著不同的效能特性,在某些工作中CPU執行得更快,另一工作中或許GPU能更好。

  當你需要對大量資料做同樣的事情時,GPU更合適,當你需要對同一資料做很多事情時,CPU正好。

  然而在實際應用中,後一種情形更多,也就是CPU更為靈活能勝任更多的任務。GPU能做什麼?關於圖形方面的以及大型矩陣運算,如機器學習演算法、挖礦、暴力破解密碼等,GPU會有所幫助。

  簡單地說,CPU擅長分支預測等複雜操作,GPU擅長對大量資料進行簡單操作。一個是複雜的勞動,一個是大量並行的工作。

  其實GPU可以看作是一種專用的CPU,專為單指令在大塊資料上工作而設計,這些資料都是進行相同的操作。

  要知道處理一大塊資料比處理一個一個資料更有效,執行指令開銷也會大大降低,因為要處理大塊資料,意味著需要更多的電晶體來並行工作,現在旗艦級顯示卡都是百億以上的電晶體。

  CPU呢,它的目的是儘可能快地在單個資料上執行單個指令。由於它只需要使用單個資料單條指令,因此所需的電晶體數量要少得多。

  目前主流桌面CPU電晶體都是十億以下,和頂級GPU相差十倍以上,但它需要更大的指令集,更復雜的ALU(算術邏輯單元),更好的分支預測,更好的虛擬化架構、更低的延遲等等。

  另外,像我們的作業系統Windows,它是為x86處理器編寫的,它需要做的任務執行的程式,在CPU上肯定更為高效,你想每個執行緒的任務並不相同,基本上難以並行化,完全發揮不了GPU的長處。

  那麼,可以預見在未來,隨著CPU進一步強化處理資料塊的能力,我們將看到CPU和GPU架構之間的融合,而且隨著製造技術的進步和晶片的縮小,GPU也可以承擔更復雜的指令。

  CPU與GPU間的分工雖然還是大有不同,但彼此間的交集無疑會更多。

圖2:GPU顯示卡能取代CPU處理器嗎?這比喻絕了

相關文章