簡而言之,就是特別重視低成本化,英特爾的CPU已是普遍銷售了,但圖形核心還沒達(dá)到此種程度。這是因?yàn)槠湫阅苄室约俺绦蛲ㄓ眯远急容^弱。與此相反的是,Sandy Bridge的圖形核心比較注重GPU性能和電源效率之間的成本比,更多的考慮了通用性。
Sandy Bridge圖形核心的目標(biāo)在于,將較高的3D圖形性能和面向通用計(jì)算功能,以及有效進(jìn)行媒體處理組合為一體。具體來說,(1)固定在處理器上的功能單元組合保證了3D圖形的有效實(shí)現(xiàn),(2)補(bǔ)充面向通用計(jì)算和媒體處理的指令和功能,(3) 由此強(qiáng)化媒體處理的固定功能單元。這些的改進(jìn)將從新一代Sandy Bridge開始。
這些改進(jìn)多半是為了跟進(jìn)其他公司在GPU內(nèi)核上的發(fā)展。而英特爾獨(dú)有的部分與其他公司的GPU內(nèi)核技術(shù)上還存在著許多差距。英特爾在其9月舉辦的英特爾信息技術(shù)峰會(IDF)上已做過簡要的說明,從其說明看來,傳統(tǒng)英特爾圖形的弱點(diǎn)還是顯而易見的。而NVIDIA和AMD的GPU的優(yōu)勢也是相當(dāng)明顯的。
基本的整體架構(gòu)繼承了傳統(tǒng)的英特爾圖形核心
Sandy Bridge圖形核心的整體架構(gòu)遵循了英特爾傳統(tǒng)的內(nèi)核架構(gòu)。下圖是根據(jù)英特爾的基本描述而得到的標(biāo)準(zhǔn)GPU結(jié)構(gòu)圖。利用這樣的方式可以清楚地說明英特爾所保持的大框架相關(guān)內(nèi)容。
Sandy Bridge圖形內(nèi)核的整體架構(gòu)
圖上方的排列是3D通道和控制單元群。這些圖形通道頂部是必要的像素處理單元,可進(jìn)行早期的Z檢驗(yàn)。
Intel架構(gòu)中的各個(gè)處理器被稱之為"EU(執(zhí)行單元)"。如果要計(jì)算Intel圖形處理器的數(shù)量,一般以EU來計(jì)數(shù),EU實(shí)際上就是SIMD(單指令多數(shù)據(jù)流)型的運(yùn)算處理器。
EU陣列右上角是媒體堆棧。除有固定功能的視頻解碼器, EU陣列還運(yùn)行媒體處理和控制單元。
EU陣列右邊是從內(nèi)存中讀取數(shù)據(jù)的紋理采樣器處理單元。紋理采樣器在內(nèi)存中讀取紋理以過濾3D圖形管道,它為各個(gè)EU所共有。
紋理采樣器內(nèi)存(Sandy Bridge內(nèi)部的環(huán)形總線)直接連接在總線的內(nèi)存接口。傳統(tǒng)的英特爾圖形核心從緩存中讀取紋理。從圖中可推斷,Sandy Bridge的圖形核心可能采用了相同的結(jié)構(gòu)。而核心的存儲器層次結(jié)構(gòu)則可能發(fā)生了變化。
另一個(gè)是媒體采樣器,是媒體處理專用的過濾器。它也與系統(tǒng)內(nèi)存接口相連,并有可能與紋理采樣器共享。
此外,也像普通的GPU一樣進(jìn)行像素單位操作(ROP)。像素操作內(nèi)存(Sandy Bridge內(nèi)部的環(huán)形總線)也是與系統(tǒng)內(nèi)存接口直接相連。
因此,Sandy Bridge圖形核心具備了一般的GPU單元。而這一點(diǎn),即使是同樣的英特爾架構(gòu)幾乎也沒有固定處理功能塊,而軟件處理器Larrabee就大為不同。Larrabee的光柵和ROP單元沒有GPU所必需的功能塊。
固定硬件的處理器運(yùn)行EU的卸載
Sandy Bridge圖形核心的基本結(jié)構(gòu)遵循了英特爾傳統(tǒng)的圖形核心。而在3D圖形和媒體處理方面卻與傳統(tǒng)存在著很大區(qū)別。這是處理器的軟件處理等固定功能單元執(zhí)行的硬件處理。
軟件處理和硬件處理的比較
據(jù)說新一代英特爾集成顯卡設(shè)計(jì)已在處理器EU的3D圖形管道中模擬了許多內(nèi)核程序的固定處理。英特爾表示這是為了減少圖形核心的晶片面積。減少固定單元所占有的晶片面積,可降低核心的可編程單元。
這種方法使得每晶片面積的性能有所提高,但在電力消耗方面卻表現(xiàn)不佳。通常,固定功能單元功耗最低,而可編程處理器功耗更多。因此,傳統(tǒng)的英特爾圖形核心每瓦的性能決不會很高。于是,3D圖形管道的固定功能基本是封裝在固定硬件上。
英特爾研究員兼圖形架構(gòu)總監(jiān)Thomas Piazza 表示:"過去曾考慮過每部分管道是否可以運(yùn)行程序,如果可能的話,將會被設(shè)計(jì)用于運(yùn)行程序。然而,Sandy Bridge考慮是否需要運(yùn)行程序,如果沒有必要,將通過硬件封裝固定功能來實(shí)現(xiàn)"。
卸載固定硬件的驅(qū)動(dòng)程序
處理器運(yùn)行的同時(shí),也盡可能多的卸載固定功能單元。這是優(yōu)先考慮吞吐量和電力效率的常規(guī)性方法。這樣一來便可提高圖形處理的電源效率,降低延遲,增加吞吐量。
Sandy Bridge圖形核心的這些改進(jìn)結(jié)果原理上不只提高了每瓦的性能,還卸載了驅(qū)動(dòng)程序。因?yàn)榫哂泄潭üδ艿腁PI,將不再需要處理器程序的JIT編譯器進(jìn)行轉(zhuǎn)換。Piazza表示:"驅(qū)動(dòng)程序相比之前在運(yùn)行時(shí)間上將有顯著的減少"。
英特爾表示降低了驅(qū)動(dòng)程序所需的CPU性能如時(shí)鐘,也降低CPU功耗。換句話說,當(dāng)圖形處理時(shí),圖形核心的電源效率以及驅(qū)動(dòng)程序的運(yùn)行時(shí)間都將有所改善。
英特爾新的圖形核心改善了固定功能硬件效率,它對比于其他廠商,并沒多大創(chuàng)新。而重要的一點(diǎn)是,英特爾設(shè)計(jì)策略的180度大轉(zhuǎn)彎–"GPU圖形核心猜想"。
這和Larrabee時(shí)"CPU的圖形核心猜想"是完全相反的。固定硬件將盡可能消除英特爾Larrabee試圖用處理器進(jìn)行處理的情況。
擴(kuò)展現(xiàn)有EU運(yùn)行的應(yīng)用軟件
由于在3D圖形管道中固定處理,固定處理硬件可實(shí)現(xiàn)高效率運(yùn)行3D圖形。EU將本來集中處理的利用固定功能模擬分開。Sandy Bridge架構(gòu)這樣的改進(jìn)已經(jīng)開始。
Sandy Bridge的改進(jìn)點(diǎn)
同時(shí)Sandy Bridge處理器EU的改進(jìn)使它們可以得到更廣泛的應(yīng)用。更復(fù)雜的著色器和非圖形通用計(jì)算程序的改善使得處理器更容易運(yùn)行媒體處理程序。
具體來說,擴(kuò)展寄存器文件,強(qiáng)化控制矢量的流量控制,減少數(shù)量的復(fù)合必須加強(qiáng)定點(diǎn)整數(shù)運(yùn)算,通過削減指令步驟來減少 CISC(復(fù)雜指令集計(jì)算機(jī))指令復(fù)合,強(qiáng)化固定硬件的整數(shù)運(yùn)算,附加數(shù)據(jù)格式轉(zhuǎn)換及其他指令,變換矢量大小,增加超越函數(shù)吞吐量,以上均由官方在IDF 上發(fā)布。Sandy Bridge EU的這些改進(jìn)部分不僅提高了架構(gòu)的吞吐量,還拓展了程序有效的運(yùn)行范圍。
消除在增加寄存器時(shí)寄存器的溢出量
首先, EU寄存器文件大小增加了。到目前為止,英特爾圖形核心寄存器文件是有限的,但寄存器是不夠的。因此,EU必須有能力處理寄存器文件溢出,這就不得不從高速緩存和內(nèi)存寄存器撤出數(shù)據(jù)。
然而,這樣處理寄存器溢出可降低吞吐量,通過移動(dòng)不必要的數(shù)據(jù)也可減少電力消耗。因此,英特爾Sandy Bridge擴(kuò)展寄存器文件,在大多數(shù)情況下,都必須存儲在物理寄存器中。Piazza 解釋道,據(jù)估計(jì)寄存器溢出功能都是由硬件負(fù)責(zé)處理。
Sandy Bridge的晶片布局
一般而言,GPU在每線程的物理寄存器的數(shù)量是不固定的,比如在本地著色器在運(yùn)行期間被分配給圖形指令。通常圖形只需要少量的寄存器(一般4到8個(gè)),而通用程序最佳情況是需要32個(gè)寄存器。但當(dāng)啟動(dòng)一個(gè)線程時(shí),必須減少寄存器的每個(gè)線程。
GPU的多線程較強(qiáng)的隱藏了內(nèi)存延遲,大量的啟動(dòng)線程需要大量的寄存器。如果限制啟動(dòng)線程數(shù)量,將有可能停頓內(nèi)存延遲。隱藏CPU緩存延遲,也將隱藏GPU的寄存器延遲。
通用程序和復(fù)雜著色器需要更多的寄存器來壓入寄存器文件。在這種情況下,要啟動(dòng)一定數(shù)量的線程,物理寄存器將從內(nèi)部和外部存儲器上讀取數(shù)據(jù)以避免不回收而造成的數(shù)據(jù)丟失。據(jù)推測目前的英特爾圖形就是這種情況。
這將解決寄存器文件擴(kuò)展名的問題。當(dāng)然增加寄存器數(shù)量也會占據(jù)晶片面積。事實(shí)上,NVIDIA和AMD的GPU都存在著寄存器占用晶片面積的情況。英特爾圖形核心也將面臨這種情況。