国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

UnityShader——03圖形硬件簡(jiǎn)史與可編程管線

這篇具有很好參考價(jià)值的文章主要介紹了UnityShader——03圖形硬件簡(jiǎn)史與可編程管線。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

圖形硬件簡(jiǎn)史與可編程管線

GPU發(fā)展簡(jiǎn)史

GPU英文全稱(chēng)Graphic Processing Unit,中文翻譯為“圖形處理器”,在現(xiàn)代計(jì)算機(jī)系統(tǒng)中的作用變得越來(lái)越重要

20世紀(jì)六七十年代,受硬件條件的限制,圖形顯示器只是計(jì)算機(jī)輸出的一種工具,限于硬件發(fā)展水平。人們只是純粹從軟件實(shí)現(xiàn)的角度來(lái)考慮圖形用戶界面的規(guī)范問(wèn)題,此時(shí)還沒(méi)有GPU的概念

GPU概念在20世紀(jì)70年代末和80年代初被提出,使用單片集成電路作為圖形芯片,此時(shí)的GPU被用于視頻游戲和動(dòng)畫(huà)方面,它能夠很快的進(jìn)行幾張圖片的合成(僅限于此)。在20世紀(jì)80年代末到90年代初這段時(shí)間內(nèi),基于數(shù)字信號(hào)處理芯片的GPU被研發(fā)出來(lái),與前代相比速度更快,功能更強(qiáng),當(dāng)然價(jià)格是非常的昂貴。在1991年,S3 Graphics公司研制出第一個(gè)單芯片2D加速器,到了1995年,主流的PC圖形芯片廠商都在自己的芯片上增加了對(duì)2D加速器的支持

1998年NVIDA公司宣布modern GPU研發(fā)成功,標(biāo)志著GPU研發(fā)的歷史性突破成為現(xiàn)實(shí),通常將20世紀(jì)70年代末到1998年的這一段時(shí)間,稱(chēng)為pre-GPU時(shí)期,而自1998年往后的GPU稱(chēng)為modern GPU,在pre-GPU時(shí)期,一些圖形廠商如SGI、Evans & Sutherland,都研發(fā)了各自的GPu,這些GPU在現(xiàn)在并沒(méi)有被淘汰,依然在持續(xù)改進(jìn)和被廣泛的使用,當(dāng)然價(jià)格也是非常的高昂。modern GPU使用晶體管( transistors)進(jìn)行計(jì)算,在微芯片( microchip)中,GPU所使用的晶體管已經(jīng)遠(yuǎn)遠(yuǎn)超過(guò)CPU。例如,Intel在2.4GHz 的Pentium lV上使用5千5百萬(wàn)(55million)個(gè)晶體管;而NVIDIA在GeForce FX GPU上使用超過(guò)1億2千5百萬(wàn)( 125 million)個(gè)晶體管,在NVIDDIA 7800 GXT上的晶14體管達(dá)到3億2百萬(wàn)( 302 million)個(gè)。

回顧GPU的發(fā)展歷史,自1998年后可以分為4個(gè)階段。NVIDIA于1998年宣布Modern GPU研發(fā)成功,這標(biāo)志著第一代Modern GPU的誕生,第一代GPU包括NVIDIA TNT2,ATI 的Rage和3Dfx的Voodoo。這些GPU可以獨(dú)立于CPU進(jìn)行像素緩存區(qū)的更新,并可以光柵化三角面片以及進(jìn)行紋理操作,但是缺乏三維頂點(diǎn)的空間坐標(biāo)變換能力,這意味著“必須依賴(lài)于CPU執(zhí)行頂點(diǎn)坐標(biāo)變換的計(jì)算”。這一時(shí)期的GPU功能非常有限,只能用于紋理組合的數(shù)學(xué)計(jì)算或者像素顏色值的計(jì)算。

1999年,nvidia推出了一款可以用“驚變”來(lái)形容的顯示核心代號(hào)NV10的geforce 256。nVidia率先將硬體T&L整合到顯示核中。T&L原先由CPU負(fù)責(zé),或者由另一個(gè)獨(dú)立處理機(jī)處理。T&L是一大進(jìn)步,原因是顯視核心從CPU接管了大量工作。硬件T&L引擎帶來(lái)的效果是,3D模型可以用更多的多邊形來(lái)描繪,這樣就擁有了更加細(xì)膩的效果。而對(duì)于Lighting來(lái)說(shuō),CPU不必冉計(jì)算大重的光照數(shù)據(jù),直接通過(guò)顯卡就能獲得更好的效能。同時(shí),這一階段的GPU對(duì)于紋理的操作也擴(kuò)展到了立方體紋理(cube map) 。NVIDIA的GeForce MAX,ATI的Radeon 7500等都是在這一階段研發(fā)的。

2001年是第三代modern GPU的發(fā)展時(shí)期,這一時(shí)期研發(fā)的GPU提供vertex programmability (頂點(diǎn)編程能力),如GeForce 3,GeForce 4Ti,ATI的8500等。這些GPU允許應(yīng)用程序指定一個(gè)序列的指令進(jìn)行頂點(diǎn)操作控制(GPU編程的本質(zhì)! ),這同樣是一個(gè)具有開(kāi)創(chuàng)意義的時(shí)期,這一時(shí)期確立的GPU編程思想一直延續(xù)到今天,不但深入到工程領(lǐng)域幫助改善人類(lèi)日常生活(醫(yī)療、地質(zhì)勘探、游戲、電影等),而且開(kāi)創(chuàng)或延伸了計(jì)算機(jī)科學(xué)的諸多研究領(lǐng)域(體繪制、光照模擬、人群動(dòng)畫(huà)、通用計(jì)算等)。同時(shí),Direct8和OpenGL都本著與時(shí)俱進(jìn)的精神,提供了支持vertexprogrammability 的擴(kuò)展。不過(guò),這一時(shí)期的GPU還不支持像素級(jí)的編程能力,即fragment programmability (片段編程能力)。

所謂Vertex,就是我們熟悉的組成3D圖形的頂點(diǎn),由于設(shè)計(jì)3D模型是基于坐標(biāo)空間內(nèi)部設(shè)計(jì)的,所以Vertex信息包含了3D模型在空間內(nèi)的坐標(biāo)等信息。Vertex Shader則是對(duì)于Vertex信息的運(yùn)算編程器,可以通過(guò)賦予特定的算法而在工作中改變3D模型的外形,Vertex Shader頂點(diǎn)運(yùn)算單元可以直接檢索顯存中的材質(zhì)數(shù)據(jù)。現(xiàn)在的游戲場(chǎng)景越來(lái)越復(fù)雜了。所涉及到的材質(zhì)和多邊形數(shù)量都非常驚人。頂點(diǎn)材質(zhì)技術(shù)可以極大的提高GPU在處理復(fù)雜的游戲場(chǎng)景時(shí)的效率。并且游戲開(kāi)發(fā)人員還可以利用Vertex Shader的這一新的特性,充分發(fā)揮想象,實(shí)現(xiàn)很多非常漂亮的特效。例如在星際爭(zhēng)霸2demo片中展示的神族母艦黑洞的技能效果。

第四代GPU的發(fā)展時(shí)期從2002年末到2003年。NVIDIA的GeForceFX和ATI Radeon 9700同時(shí)在市場(chǎng)的舞臺(tái)上閃亮登場(chǎng),這兩種GPU都支持vertex programmability和fragmentProgrammability。同時(shí)DirectX和OpenGL也擴(kuò)展了自身的API,用以支持vertex programmability和fragment programmability。自2003年起,可編程圖形處理器正式誕生,并且由于DirectX和OpenGL鍥而不舍的追趕潮流,導(dǎo)致基于圖形硬件的編程技術(shù)簡(jiǎn)稱(chēng)GPU編程,也宣告誕生。

GPU的優(yōu)越性

由于GPU具有高并行結(jié)構(gòu),所以GPU在處理圖形數(shù)據(jù)和復(fù)雜算法方面擁有比CPU更高的效率。CPU大部分面積為控制器和寄存器,與之相比,GPU擁有更多的ALU (Arithmetic Logic Unit,邏輯運(yùn)算單元)用于數(shù)據(jù)處理,這樣的結(jié)構(gòu)適合對(duì)密集型數(shù)據(jù)進(jìn)行并行處理。

UnityShader——03圖形硬件簡(jiǎn)史與可編程管線,UnityShader,unity

GPU采用流式并行計(jì)算模式,可對(duì)每個(gè)數(shù)據(jù)進(jìn)行獨(dú)立的并行計(jì)算,所謂“對(duì)數(shù)據(jù)進(jìn)行獨(dú)立計(jì)算”,即,流內(nèi)任意元素的計(jì)算不依賴(lài)于其它同類(lèi)型數(shù)據(jù),例如,計(jì)算一個(gè)頂點(diǎn)的世界位置坐標(biāo),不依賴(lài)于其他頂點(diǎn)的位置,所謂“并行計(jì)算”是指“多個(gè)數(shù)據(jù)可以同時(shí)被使用,多個(gè)數(shù)據(jù)并行運(yùn)算的時(shí)間和1個(gè)數(shù)據(jù)單獨(dú)執(zhí)行的時(shí)間是一樣的”。所以,在頂點(diǎn)處理程序中,可以同時(shí)處理N個(gè)頂點(diǎn)數(shù)據(jù)。

GPU的缺陷

由于“任意一個(gè)元素的計(jì)算不依賴(lài)于其它同類(lèi)型數(shù)據(jù)”,導(dǎo)致“需要知道數(shù)據(jù)之間相關(guān)性的”算法,在GPU上難以得到實(shí)現(xiàn),一個(gè)典型的例子是射線與物體的求交運(yùn)算。GPU中的控制器少于cPU,致使控制能力有限。另外,進(jìn)行GPU編程必須掌握計(jì)算機(jī)圖形學(xué)相關(guān)知識(shí),以及圖形處理APl,入門(mén)門(mén)檻較高,學(xué)習(xí)周期較長(zhǎng),尤其國(guó)內(nèi)關(guān)于GPU編程的資料較為匱乏,這些都導(dǎo)致了學(xué)習(xí)的難度。在早期,GPU編程只能使用匯編語(yǔ)言,開(kāi)發(fā)難度高、效率低,不過(guò),隨著高級(jí)Shader language的興起,在GPU上編程已經(jīng)容易多了。

GPU的更多應(yīng)用

科學(xué)可視化計(jì)算:由于人體CT、地質(zhì)勘探、氣象數(shù)據(jù)、流體力學(xué)等科學(xué)可視化計(jì)算處理的數(shù)據(jù)量極大,僅僅基于CPU進(jìn)行計(jì)算完全不能滿足實(shí)時(shí)性要求,而在GPU上進(jìn)行計(jì)算則可以任雙率上運(yùn)到質(zhì)的突破,許多在CPU上非常耗時(shí)的算法,如體繪制中的光線投射算法,都可以成功移植到GPu上,所以基于GPU的科學(xué)可視化研究目前已經(jīng)成為主流。

通用算法:基于GPU進(jìn)行通用計(jì)算的研究逐漸成為熱點(diǎn),被稱(chēng)之為GPGPU ( General-Purpose Computing on Graphics ProcessingUnits,也被稱(chēng)為GPGP,或GP2),很多數(shù)值計(jì)算等通用算法都已經(jīng)在GPU上得到了實(shí)現(xiàn),并有不俗的性能農(nóng)現(xiàn),日E,線t八效,物理仿真和光線跟蹤算法都已經(jīng)成功的移植到GPu上。在國(guó)內(nèi),中國(guó)科學(xué)院計(jì)算技術(shù)研究所進(jìn)行了基于GPU的串匹配算法的實(shí)現(xiàn)。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-825508.html

到了這里,關(guān)于UnityShader——03圖形硬件簡(jiǎn)史與可編程管線的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 什么是 FPGA(現(xiàn)場(chǎng)可編程門(mén)陣列)?

    現(xiàn)場(chǎng)編程門(mén)陣列是一種由半導(dǎo)體材料制成的集成電路,用戶購(gòu)買(mǎi)后可以重新編程或配置,而不是單獨(dú)由原始設(shè)備制造商(OEM)進(jìn)行。 現(xiàn)場(chǎng)可編程門(mén)陣列 (FPGA) 是一種半導(dǎo)體器件,由與可編程互連相結(jié)合的可配置邏輯塊 (CLB) 網(wǎng)格構(gòu)成。制造完成后,F(xiàn)PGA 可以重新編程以滿足特定

    2024年02月19日
    瀏覽(26)
  • SG-8201CJA(汽車(chē)可編程晶體振蕩器)

    SG-8201CJA(汽車(chē)可編程晶體振蕩器)

    nbsp; nbsp; nbsp; nbsp; nbsp;愛(ài)普生的SG-8021CJA是一款符合AEC-Q100標(biāo)準(zhǔn)的晶體振蕩器,專(zhuān)為要求苛刻的汽車(chē)/ADAS應(yīng)用(如激光雷達(dá)和相機(jī)ECU)而設(shè)計(jì)。它采用愛(ài)普生的內(nèi)部低噪聲小數(shù)NPLL,輸出nbsp;頻率高達(dá)170MHz,相位抖動(dòng)小于1/25,穩(wěn)定性比之前的產(chǎn)品SG-8101CGA高出約2倍。此外,2.0*1.6m

    2024年02月21日
    瀏覽(21)
  • 可編程網(wǎng)關(guān):如何助力智慧工廠實(shí)現(xiàn)智能化管理

    可編程網(wǎng)關(guān):如何助力智慧工廠實(shí)現(xiàn)智能化管理

    一個(gè)具體的實(shí)際案例,詳細(xì)說(shuō)明可編程網(wǎng)關(guān)在某汽車(chē)零部件智慧工廠中的應(yīng)用細(xì)節(jié): 案例背景: 某大型汽車(chē)零部件制造企業(yè),致力于提升生產(chǎn)效率、降低運(yùn)營(yíng)成本、確保產(chǎn)品質(zhì)量,決定對(duì)其傳統(tǒng)工廠進(jìn)行全面數(shù)字化改造,構(gòu)建智慧工廠。其中,可編程網(wǎng)關(guān)作為關(guān)鍵組件,被

    2024年04月08日
    瀏覽(29)
  • FPGA的可編程邏輯單元(LUT和寄存器)

    FPGA的可編程邏輯單元(LUT和寄存器)

    提示:文章寫(xiě)完后,目錄可以自動(dòng)生成,如何生成可參考右邊的幫助文檔 文章目錄 前言 一、pandas是什么? 二、使用步驟 1.引入庫(kù) 2.讀入數(shù)據(jù) 總結(jié) 1.根據(jù)PLD器件單片集成度的高低,可將PLD分為低密度可編程邏輯器件和高密度可編程邏輯器件。 2.按器件結(jié)構(gòu)類(lèi)型劃分 ?????

    2024年02月19日
    瀏覽(25)
  • 可編程交易區(qū)塊為DeFi機(jī)器人提供強(qiáng)大動(dòng)力

    可編程交易區(qū)塊為DeFi機(jī)器人提供強(qiáng)大動(dòng)力

    對(duì)于選擇基金投資的人來(lái)說(shuō),一個(gè)基本指導(dǎo)原則就是尋找那些管理費(fèi)最低的基金。資本應(yīng)該是在運(yùn)轉(zhuǎn),而不是用于支付費(fèi)用。同樣,Mysten Lab的Capy交易機(jī)器人利用可編程交易區(qū)塊(Programmable Transaction Blocks ,PTBs)將資本集中用于交易,而不是gas費(fèi),并且能夠執(zhí)行復(fù)雜的輸入策

    2024年02月07日
    瀏覽(23)
  • SG-9101CGA(汽車(chē)+125°C可編程晶體振蕩器)

    SG-9101CGA(汽車(chē)+125°C可編程晶體振蕩器)

    nbsp; nbsp; nbsp; nbsp;SG-9101CGA是用于汽車(chē)CMOS輸出的可編程晶體振蕩器,彩用2.5 x 2.0 (mm)封裝,0.67 MHz至170 MHz頻率范圍、工作溫度范圍為-40℃~+125℃,符合車(chē)規(guī)級(jí)晶振,無(wú)鉛,綠色環(huán)保,滿足汽車(chē)工業(yè)標(biāo)準(zhǔn),電源電壓范圍為1.62 V ~ 3.63 V,具有低功耗特性。廣泛應(yīng)用于汽車(chē)多媒體、車(chē)

    2024年01月22日
    瀏覽(37)
  • Verilog實(shí)現(xiàn)FPGA可編程電路中的RAM存儲(chǔ)器

    Verilog實(shí)現(xiàn)FPGA可編程電路中的RAM存儲(chǔ)器 在FPGA可編程電路的設(shè)計(jì)中,RAM存儲(chǔ)器通常被廣泛使用。而手寫(xiě)RAM存儲(chǔ)器則可以提供更加靈活、高效的設(shè)計(jì)方案。本文將介紹如何使用Verilog語(yǔ)言來(lái)手寫(xiě)FPGA中的RAM存儲(chǔ)器。 首先,我們需要確定RAM存儲(chǔ)器的大小和寬度。假設(shè)我們需要實(shí)現(xiàn)一個(gè)

    2024年02月04日
    瀏覽(38)
  • 使用 zk-SNARKs 的可編程零知識(shí)證明:第 3 部分

    使用 zk-SNARKs 的可編程零知識(shí)證明:第 3 部分

    之前,我們已經(jīng)展示了如何使用稱(chēng)為零知識(shí)密鑰聲明證明 (ZKKSP) 的技術(shù)為以下聲明構(gòu)建零知識(shí)證明 (ZKP)。 基本上,它證明了不僅證明者知道給定公鑰的密鑰,而且還證明知道給定摘要的秘密哈希,而不會(huì)泄露秘密。 圖片來(lái)自 CoinGeek 雖然 ZKKSP 有效,但它有一個(gè)嚴(yán)重的限制:它

    2024年02月02日
    瀏覽(48)
  • 零基礎(chǔ)學(xué)FPGA(八):可編程邏輯單元(基本結(jié)構(gòu),Xilinx+Altera)

    零基礎(chǔ)學(xué)FPGA(八):可編程邏輯單元(基本結(jié)構(gòu),Xilinx+Altera)

    ??????在寫(xiě)這篇文章之前,對(duì)這個(gè)專(zhuān)欄做一個(gè)補(bǔ)充解釋。本來(lái)按我之前的想法是,把這個(gè)專(zhuān)欄寫(xiě)成一個(gè)比較層次化,一層一層慢慢深入的系統(tǒng)化專(zhuān)欄。但是,在工作的時(shí)候,剛好在做某一件事,在這個(gè)時(shí)間段,對(duì)這個(gè)知識(shí)點(diǎn)比較深刻,所以就提前把這篇文章寫(xiě)了,導(dǎo)致此專(zhuān)

    2024年02月01日
    瀏覽(29)
  • 藍(lán)橋杯嵌入式 STM32G4 MCP4017可編程電阻

    藍(lán)橋杯嵌入式 STM32G4 MCP4017可編程電阻

    MCP4017為可編程電阻 查閱產(chǎn)品手冊(cè)可知,MCP4017使用I2C通訊協(xié)議,引腳為PB6,PB7 ,控制的電阻連接至PB14,同時(shí)跳線帽連接J15.1與J15.2 如下圖,Rs為單個(gè)電阻阻值;RWS為總阻值,與R17串聯(lián),兩者對(duì)VDD電壓進(jìn)行分壓, 可以通過(guò)測(cè)量PB14的電壓判斷可編程電阻的阻值。 MCP4017的默認(rèn)總阻

    2023年04月08日
    瀏覽(44)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包