


下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、gpu的體系結(jié)構(gòu)與通用計(jì)算(gpgp)u1、總體框架可編程圖形流水線的總體框架如圖 3 所示,左邊用實(shí)線表示的流程就是傳統(tǒng)的圖形流水線的流程; 在這種通用的流水線中, 首先經(jīng)過(guò)頂點(diǎn)級(jí)的光照計(jì)算和坐標(biāo)變換,求出每個(gè)頂點(diǎn)的光照顏色值, 同時(shí)還將頂點(diǎn)坐標(biāo)從物體坐標(biāo)系轉(zhuǎn)換到裁剪空間 (clip space。)然后,對(duì)每個(gè)三角形進(jìn)行光柵化處理并將對(duì)三角形頂點(diǎn)的顏色進(jìn)行雙線性插值,得到了三角形中每一個(gè)象素的顏色值。接著進(jìn)行紋理映射, 即根據(jù)每一個(gè)象素的紋理坐標(biāo)值將紋理圖顏色分配到每個(gè)象素上。最后進(jìn)行顏色混合計(jì)算 (blending)和霧化效果計(jì)算,得到的結(jié)果將會(huì)放進(jìn)幀緩存(frame buffer) 并顯
2、示到屏幕上。 目前的可編程的圖形硬件中, 除了光柵化這一部分依然保持固化的硬件實(shí)現(xiàn)不變以外,其他部分都引入了可編程性。也就是圖中的虛線部分。圖 3 可編程圖形流水線的總體框架頂點(diǎn)著色器 (vertex shader)的功能正是為了實(shí)現(xiàn)頂點(diǎn)的光照計(jì)算和坐標(biāo)變換, 在過(guò)去的硬件中, 人們只能實(shí)現(xiàn)一些固定的光照模型和坐標(biāo)系轉(zhuǎn)換計(jì)算,但是在現(xiàn)在的可編程的圖形硬件中, 用戶可以通過(guò)編寫(xiě)代碼自由地設(shè)計(jì)自己所需要的光照模型和坐標(biāo)系轉(zhuǎn)換計(jì)算公式,只要不超出硬件的功能即可。象素著色器 (pixel shader,)功能相對(duì)比較復(fù)雜,同時(shí)限制較多。它幾乎包括了所有光柵化以后的操作:采樣紋理,顏色混合計(jì)算 (ble
3、nding)和霧化效果計(jì)算等, 傳統(tǒng)圖形硬件中每個(gè)頂點(diǎn)的紋理坐標(biāo)值需要人工指定或者根據(jù)空間坐標(biāo)來(lái)計(jì)算,而在象素著色器中,允許采用多種紋理訪問(wèn)方式;每個(gè)象素的繪制信息 (例如,象素顏色值、紋理坐標(biāo)等 )均保存在寄存器中,象素著色器通過(guò)完成這些寄存器之間的加法,乘法或者點(diǎn)積等運(yùn)算操作, 從而在象素級(jí)別上實(shí)現(xiàn)光照明模型的計(jì)算。2、頂點(diǎn)著色器頂點(diǎn)著色器由算術(shù)邏輯單元和相應(yīng)的寄存器組成。頂點(diǎn)著色器和像素著色器都沒(méi)有內(nèi)存的概念, 所有的運(yùn)算都在寄存器之上進(jìn)行。每一個(gè)寄存器都是4 維向量寄存器, 指令集中的指令可以同時(shí)對(duì)4 個(gè)分量進(jìn)行運(yùn)算, 因此可以把它們看作是一個(gè)基于寄存器的向量處理器。l輸入寄存器用于存
4、放當(dāng)前被處理的頂點(diǎn)的屬性,例如頂點(diǎn)位置、法向量、顏色和紋理坐標(biāo)。l常量寄存器用于為頂點(diǎn)程序提供只讀常量參數(shù),由 cpu控制,也就是通過(guò)外界函數(shù)調(diào)用進(jìn)行賦值。l只寫(xiě)的輸出寄存器則用于輸出處理后的頂點(diǎn)屬性。l可讀寫(xiě)的寄存器則可在頂點(diǎn)繪制編程器的計(jì)算過(guò)程中作為臨時(shí)寄存器使用。這些寄存器通常有固定的表達(dá)方式:輸入寄存器為vn ,輸出寄存器為on , 常量寄存器為 cn ,而可讀寫(xiě)寄存器則為rn ,這里的 n 就是具體的寄存器編號(hào)。如第十號(hào)的輸入寄存器就寫(xiě)作v10 。而且每個(gè)寄存器都可以用xyzw 后綴名來(lái)訪問(wèn)寄存器中的rgba各個(gè)分量,比如說(shuō) :r1.w表示的就是第 1 號(hào)可讀寫(xiě)寄存器的第四個(gè)分量a分
5、量。圖 4 頂點(diǎn)著色器3、像素著色器像素著色器和頂點(diǎn)著色器的組成類(lèi)似,但多了紋理尋址的功能。圖 5 像素著色器4、與 cpu的區(qū)別圖 6 gpu與 cpu流水處理線圖形應(yīng)用的特點(diǎn)是大運(yùn)算量、大規(guī)模并行性、允許較長(zhǎng)的延遲與深度前向流水。這就決定了圖形處理器和微處理器在體系結(jié)構(gòu)上存在著很大的差別。首先圖形處理器要盡可能的實(shí)現(xiàn)高度并行性。這種并行性分為兩種 :數(shù)據(jù)并行性與流水線并行性。 為了充分利用數(shù)據(jù)并行性, 圖形處理器在兩個(gè)層次上進(jìn)行并行處理。第一層利用輸入數(shù)據(jù)流中數(shù)據(jù)元素之間的無(wú)關(guān)性,多個(gè)頂點(diǎn)(或像素)處理器運(yùn)行一個(gè)頂點(diǎn) (或者像素 )著色程序的多個(gè)拷貝,同時(shí)作用于輸入數(shù)據(jù)流中的多個(gè)數(shù)據(jù)元素之
6、上。 從這個(gè)意義上說(shuō), 圖形處理器是一個(gè)流處理器。第二層是利用圖形運(yùn)算包含大量向量運(yùn)算的特點(diǎn), 實(shí)現(xiàn)指令級(jí)并行性。 具體地說(shuō)就是把多個(gè)同類(lèi)型的標(biāo)量運(yùn)算合并到一個(gè)向量運(yùn)算之中。 因此,圖形處理器又是一個(gè)向量處理器。其次,流水并行性允許頂點(diǎn)著色程序與像素著色程序同時(shí)運(yùn)行,前者的輸出恰為后者的輸入,構(gòu)成一種生產(chǎn)者和消費(fèi)者的關(guān)系。再次,為了保證大規(guī)模并行運(yùn)算,圖形處理器基本上不支持轉(zhuǎn)移指令或者只提供有限的支持,著色程序的靜態(tài)長(zhǎng)度和動(dòng)態(tài)可執(zhí)行長(zhǎng)度也非常短。最后,圖形處理器有著比微處理器多的多的算術(shù)邏輯運(yùn)算單元。圖形處理器的所有指令都具有相同的延遲,不存在各類(lèi)流水競(jìng)爭(zhēng)。5、通用計(jì)算 gpgpu圖形處理器強(qiáng)
7、大的運(yùn)算能力吸引著研究者們思考這樣的問(wèn)題:能不能利用gpu做一些 3d 繪制以外的工作?;趃pu的通用計(jì)算 (general purpose gpu,gpgpu的) 概念應(yīng)運(yùn)而生,它指的是利用圖形卡來(lái)實(shí)現(xiàn)一般意義上的計(jì)算,而不單純是 3d 繪制。在可編程圖形處理器迅速發(fā)展的同時(shí),相關(guān)的軟件開(kāi)發(fā)技術(shù)也在不斷進(jìn)步。目前,常用的三維圖形編程接口是opengl和 direct3d,其擴(kuò)充功能由 gpu廠家提供,或由 api軟件開(kāi)發(fā)者提供。 利用高級(jí)語(yǔ)言而不依賴于具體的硬件及計(jì)算平臺(tái)的編程一直是應(yīng)用的努力目標(biāo), 并陸續(xù)出現(xiàn)了基于各種編程接口的高級(jí)渲染語(yǔ)言。繪制程序 (shader)設(shè)計(jì)的思想源自于早年
8、pixar 設(shè)計(jì)的 renderman 繪制軟件。此軟件多年來(lái)廣泛應(yīng)用于好萊塢電影制作的繪制。關(guān)于新型標(biāo)準(zhǔn)繪制語(yǔ)言的研究工作,近年來(lái)具有較大影響的是:opengl shading languag,e 斯坦福大學(xué)的rtsl(real-time shading language,) microsoft的 hlsl (high-level shading language)以及 nvidia 的 cg( c for graphics)。盡管還未形成統(tǒng)一的繪制語(yǔ)言,這些語(yǔ)言的研究和應(yīng)用為用戶提供了直接基于api(opengl或 directx)編程的較為方便和高層次的工具 ,尤其是 nvidia 的 cg。圖 7 gpu通用計(jì)算cg代表(用于圖形的 c語(yǔ)言),是由 nvidia 認(rèn)公司推出的圖形硬件高級(jí)著
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 風(fēng)能發(fā)電行業(yè)分析
- 廠房屋頂分布式光伏項(xiàng)目長(zhǎng)期維護(hù)與管理方案
- 科技創(chuàng)新驅(qū)動(dòng)的商業(yè)生態(tài)圈建設(shè)
- 電子商務(wù)平臺(tái)的網(wǎng)絡(luò)安全防護(hù)措施
- 香港雇傭合同范本
- 簽訂租賃住房合同范本
- 寵物房間出租合同范本
- PCNA-IN-1-生命科學(xué)試劑-MCE
- 重載車(chē)型出售合同范本
- Lead-bamzireotide-navoxetan-生命科學(xué)試劑-MCE
- 棗莊學(xué)院《電力拖動(dòng)與自動(dòng)控制系統(tǒng)》2023-2024學(xué)年第一學(xué)期期末試卷
- 醫(yī)師手術(shù)權(quán)限申請(qǐng)流程
- 2025年四川省宜賓敘州區(qū)事業(yè)單位考調(diào)83人歷年管理單位筆試遴選500模擬題附帶答案詳解
- 米非司酮使用培訓(xùn)
- 二氧化碳捕集、運(yùn)輸和地質(zhì)封存 - 地質(zhì)封存 征求意見(jiàn)稿
- 2024-2030年中國(guó)淀粉糖行業(yè)運(yùn)行態(tài)勢(shì)與發(fā)展趨勢(shì)分析報(bào)告
- 診所信息保密和安全管理制度
- 護(hù)士臨床護(hù)理組長(zhǎng)
- 土建、裝飾、維修改造等零星工程施工組織設(shè)計(jì)技術(shù)標(biāo)
- 高速公路養(yǎng)護(hù)作業(yè)安全培訓(xùn)內(nèi)容
- 2024年江蘇經(jīng)貿(mào)職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)適應(yīng)性測(cè)試題庫(kù)
評(píng)論
0/150
提交評(píng)論