挑戰(zhàn)卡皇TITAN!GTX 780 SLI巔峰測試
Kepler GK110的新SMX引入幾個架構(gòu)創(chuàng)新,使其不僅成為有史以來最強大的多處理器,而且更具編程性,更節(jié)能。
SMX: 192個單精度CUDA核、64個雙精度單元、32個特殊功能單元(SFU)和32 個加載/存儲單元(LD/ST)。
SMX 處理核架構(gòu)
每個Kepler GK110 SMX單元具有192單精度CUDA核,每個核完全由浮點和整數(shù)算術(shù)邏輯單元組成。Kepler完全保留Fermi引入的IEEE 754-2008 標準的單精度和雙精度算術(shù),包括積和熔加(FMA)運算。
Kepler GK110 SMX 的設(shè)計目標之一是大大提高GPU的雙精度性能,因為雙精度算術(shù)是許多HPC應用的核心。Kepler GK110 的SMX還保留了特殊功能單元 (SFU)以達到和上一代GPU類似的快速超越運算,所提供的SFU數(shù)量是Fermi GF110 SM的8倍。
與GK104 SMX單元類似,GK110 SMX單元內(nèi)的核使用主GPU頻率而不是2倍的著色頻率。2x著色頻率在 G80 Tesla 架構(gòu)的 GPU 中引入,并用于之后所有的 Tesla 和 Fermi‐架構(gòu)的GPU。在更高時鐘頻率上運行執(zhí)行單元使芯片使用較少量的執(zhí)行單元達到特定目標的吞吐量,這實質(zhì)上是一個面積優(yōu)化,但速度更快的內(nèi)核的時鐘邏輯更耗電。對于Kepler,我們的首要任務是的性能/功率比。雖然我們做了很多面積和功耗方面的優(yōu)化,但是我們更傾向優(yōu)化功耗,甚至以增
加面積成本為代價使大量處理核在能耗少、低GPU頻率情況下運行。
Quad Warp Scheduler
SMX以32個并行線程為一組的形式調(diào)度進程,這32個并行線程叫做Warp。而每個SMX中擁有四組 Warp Scheduler 和八組 Instruction Dispatch 單元,允許四個Warp同時發(fā)出執(zhí)行。Kepler 的 Quad Warp Scheduler 選擇四個 Warp,在每個循環(huán)中可以指派每 Warp 2 個獨立的指令。與 Fermi 不同,F(xiàn)ermi 不允許雙精度指令和部分其他指令配對,而 Kepler GK110 允許雙精度指令和其他特定沒有注冊文件讀取的指令配對 例如加載/存儲指令、紋理指令以及一些整數(shù)型指令。
每個Kepler SMX 包含4組Warp Scheduler,每組Warp Scheduler包含兩組 Instruction Dispatch單元。單個Warp Scheduler單元如上所示。
我們努力優(yōu)化SMX Warp Scheduler邏輯中的能源。例如,Kepler和Fermi Scheduler 包含類似的硬件單元來處理調(diào)度功能。其中包括:
a) 記錄長延遲操作(紋理和加載的寄存器
b) Warp 內(nèi)調(diào)度決定(例如在合格的候選 Warp 中挑選出非常好的 Warp 運行)
c) 線程塊級調(diào)度(例如,GigaThread 引擎)
然而,F(xiàn)ermi的scheduler還包含復雜的硬件以防止數(shù)據(jù)在其本身數(shù)學數(shù)據(jù)路徑中的弊端。多端口寄存器記錄板會紀錄任何沒有有效數(shù)據(jù)的寄存器,依賴檢查塊針對記錄板分析多個完全解碼的 Warp指令中寄存器的使用情況過,確定哪個有資格發(fā)出。
對于 Kepler ,我們認識到這一信息是確定性的(數(shù)學管道延遲是不變量),因此,編譯器可以提前確定指令何時準備發(fā)出,并在指令中提供此信息。這樣一來,我們就可以用硬件塊替換幾個復雜、耗電的塊,其中硬件塊提取出之前確定的延遲信息并將其用于在 Warp 間調(diào)度階段屏蔽Warp,使其失去資格。
關(guān)注我們
