革命性DX11架構(gòu)!GTX480/470權(quán)威評測
第五章/第三節(jié) Fermi計(jì)算架構(gòu):恐怖的雙精度性能
Fermi是NVIDIA新一代圖形架構(gòu)的開發(fā)代號,包括GeForce、Quadro、Tesla在內(nèi)的三種產(chǎn)品都將基于Fermi架構(gòu)設(shè)計(jì);GF100是該架構(gòu)第一顆GPU的核心代號;GTX400系列則是NVIDIA第一代DX11顯卡,GTX480和GTX470是該系列基于GF100核心的高端顯卡產(chǎn)品。基于Fermi架構(gòu)的計(jì)算處理器則被稱為Tesla C2050/C2070。
第一款基于Fermi架構(gòu)的GPU就是GF100,不管是民用級的GeForce還是專業(yè)級的Tesla,其GPU核心及架構(gòu)是完全相同的。此前已經(jīng)詳細(xì)介紹了它的圖形架構(gòu),此處著重介紹并行計(jì)算方面的內(nèi)容。
首先我們來看看Fermi的計(jì)算架構(gòu)與圖形架構(gòu)有何不同呢?原來對于圖形架構(gòu)最重要的光柵化引擎與多形體引擎都不見了,GF100的四塊GPC也不再區(qū)分,剩下的只有SM、CUDA核心還有緩存。
Fermi的16個SM分布在通用L2緩存的周圍。每個SM都是一個垂直的矩形條,包含一塊橘色區(qū)域(調(diào)度和分配)、一塊綠色區(qū)域(執(zhí)行單元)和一塊淡藍(lán)色區(qū)域(寄存器和L1緩存)。
Fermi的流處理器簇已經(jīng)是第三代了,其改進(jìn)其實(shí)之前在圖形架構(gòu)部分也介紹過,因?yàn)檫@些對于圖形渲染或多或少還是有點(diǎn)用的,當(dāng)然對于科學(xué)計(jì)算來說簡直是革命性的:
首先CUDA內(nèi)核中的FPU采用了最新的IEEE 754-2008浮點(diǎn)標(biāo)準(zhǔn),為單精度和雙精度算法都提供了FMA指令,F(xiàn)MA在做乘法和加法運(yùn)算的時候只在最后作一次舍入,不會在執(zhí)行加法的時候就出現(xiàn)精度損失,F(xiàn)MA的精度比把操作分開執(zhí)行時更高。
其次,NVIDIA上代的GT200和對手最新的RV870在執(zhí)行整數(shù)型加、乘指令時僅支持24bit精度,因此整數(shù)算法需要多指令的模擬序列。而對于Fermi,全新設(shè)計(jì)的整數(shù)ALU支持32位精度,面向所有符合標(biāo)準(zhǔn)編程語言要求的指令。同時,還對該整數(shù)ALU進(jìn)行了優(yōu)化,使其有效地支持64位及擴(kuò)展的精度操作。它支持各種指令,包括Boolean(布爾)、shift(位移)、move(數(shù)據(jù)傳輸或賦值)、compare(比較)、convert(轉(zhuǎn)換)、bit-field extract(位平面提取)、bit-reverse insert(位反轉(zhuǎn)插入)和population count(計(jì)數(shù))。
最最重要的一點(diǎn),F(xiàn)ermi的雙精度運(yùn)算能力達(dá)到了單精度的一半,而上代GT200的雙精度能力只有單精度的1/8,對手的RV870是1/5,顯而易見此次雙精度運(yùn)算能力的提升是革命性的。
此外,F(xiàn)ermi架構(gòu)中的雙Warp調(diào)度器是完全獨(dú)立的,無需對指令流內(nèi)的相依性進(jìn)行檢測,在這種雙指令發(fā)射模型下,Fermi的硬件性能非常接近與理論峰值。
關(guān)注我們



