英偉達在 2016 年的強勢崛起,GPGPU (GPU 通用計算)功不可沒。
有許多原因使 2016 稱得上是 GPU 之年。但事實上,除了在核心領域(深度學習、VR、自動駕駛),為什么把 GPU 用于通用計算仍然很模糊。
搞清楚 GPU 的作用,要先從 CPU 開始。大多數(shù)人對計算機 CPU 并不陌生,這可能要歸功于英特爾——作為在事實上壟斷了 PC、服務器平臺 CPU 近十年的供應商,英特爾的巨幅廣告支出,直接導致每個人都或多或少聽說過英特爾從筆記本到超算的各層級產(chǎn)品。
CPU 的設計用途,是對多種應用進行低延遲處理。CPU 非常適合用于多功能任務,比如電子表格、文字處理、 Web 應用等等。于是,傳統(tǒng)上 CPU 是絕大多數(shù)企業(yè)的首選計算方案。
過去,當公司的 IT 部門經(jīng)理說要訂購更多計算設備、服務器,或者增強云端的性能,他們一般想的是 CPU。
雖是個多面手,一枚 CPU 芯片能承載的核心數(shù)量卻有很大限制。大多數(shù)消費級芯片只有八核。至于英特爾的企業(yè)級產(chǎn)品線,除了為并行計算而設計的 Xeon Phi 這個“怪胎”,主流至強產(chǎn)品(E3、E5、E7 系列)最多只有 22 核。
CPU 從單核發(fā)展到今天的多核用了幾十年。對 CPU 這么復雜的芯片進行擴展有極高的技術難度,并且需要綜合多個方面:比如縮小晶體管體積、降低發(fā)熱和優(yōu)化功耗等。今天的 CPU 在性能上所取得的成績,很大程度上要歸功于英特爾和 AMD 工程師的多年努力探索。而至今全球未有第三家足以與其 競爭的 PC CPU 供應商,在側面說明了他們的技術積累,以及研發(fā) CPU 的技術難度。
GPU 才是摩爾定律的寵兒?
用 FLOPS 來衡量,CPU 每年大約有 20% 的性能提升(雷鋒網(wǎng)注:此處有爭議)。而這是對于高度優(yōu)化的代碼而言。
隨著 CPU 性能提升的放緩(雷鋒網(wǎng)注:尤其近幾年來芯片制程工藝進步緩慢。硅基芯片的極限大約在 7nm,而替代硅的新技術尚未成熟),其數(shù)據(jù)處理能力越來越跟不上數(shù)據(jù)增長的速度。做個簡單對比:IDC 估算,全世界數(shù)據(jù)增長的速度大約是 40%,并在不斷加快。
簡單來說,摩爾定律目前已終結,而數(shù)據(jù)卻在指數(shù)級增長。
英特爾 Skylake、Kabylake、Coffelake 路線圖
數(shù)據(jù)增長速度超過 CPU 性能提升速度帶來的后果是:人們不得不利用各種技巧來避免計算性能瓶頸,比如降采樣、索引(indexing),或者采用昂貴的 scale-out 戰(zhàn)術來避免長時間等待系統(tǒng)回應。
我們現(xiàn)在面對的數(shù)據(jù)單位是 exabytes,并正在邁向 zetabytes。而曾經(jīng)顯得無比龐大的 TB,在消費者領域已經(jīng)十分常見。企業(yè)級 Terabyte 存儲的定價已降到個位數(shù)(美元)。
在這個價格,企業(yè)把所有獲取的數(shù)據(jù)保存起來,這過程中,我們生成了足以淹沒 CPU 級別數(shù)據(jù)處理能力的工作集。
這跟 GPU 有什么關系呢?
GPU 的架構與 CPU 很不一樣。首先,GPU 并不具備多功能性。其次,與 消費級 CPU 個位數(shù)的核心數(shù)目不同,消費級的 GPU 通常有上千個核心——特別適合處理大型數(shù)據(jù)集。由于 GPU 在設計之初有且只有一個目的:最大化并行計算。每一代制程縮減直接帶來更多的核心數(shù)量(摩爾定律對于 GPU 更明顯),意味著 GPU 每年有大約 40% 的性能提升——目前來看,它們尚能跟上數(shù)據(jù)大爆炸的腳步。
CPU 與 GPU 的性能增長對比,用 TeraFlops 橫梁
GPU 誕生之初
在 90s 年代,一批工程師意識到:在屏幕上進行多邊形圖像渲染,本質(zhì)上是個能并行處理的任務——每個像素點的色彩可以獨立計算,不需要考慮其它像素點。于是 GPU 誕生,成為比 CPU 更高效的渲染工具。
簡而言之,由于 CPU 在圖像渲染方面的能力不足,GPU 被發(fā)明出來分擔這部分工作,此后就成了專門搞這方面的硬件。
有了上千個更加簡單的核心,GPU 能高效地處理讓 CPU 十分吃力的任務。只要有合適的代碼配合,這些核心就能處理超大規(guī)模的數(shù)學運算,實現(xiàn)逼真的游戲體驗。
但有一點需要指出:GPU 的強大性能,不只來源于增加的核心數(shù)量。架構師們意識到,GPU 的處理性能需要有更快的內(nèi)存相配合才能發(fā)揮。這讓研究人員不斷研發(fā)更高帶寬版本的 RAM 內(nèi)存。今天,GPU 的內(nèi)存帶寬相比 CPU 已經(jīng)有數(shù)量級上的領先,比如前沿顯存技術 GDDR5X,HBM2,還有開發(fā)中的 GDDR6。這使得 GPU 在處理和讀取數(shù)據(jù)上都有巨大優(yōu)勢。
有這兩大優(yōu)勢,GPU 在通用計算領域有了立足點。
評論
查看更多