GPU,學名可編程圖形處理單元,俗稱可編圖形硬件,一般被行外稱為顯卡(GPU不是顯卡,它是顯卡中的核心處理單元)。
GPU概念產生于20世紀70、80年代交替年間,主要用于游戲和視頻游戲方面,那時的全部戰力僅僅能夠快速合成幾張圖片。十年后,80、90年代交替時,出現了基于數字信號處理芯片,它的主要特點就是貴,當然性能得到了極大提高。1991、1995年對2D加速器的支持得到升級。
1998年是劃時代的一年, NVIDIA(英偉達)宣布modern GPU研發成功,進入GPU可編程時代,是歷史性突破。與之前的GPU不同,程序員可以將代碼運行在GPU的處理單元中,而之前的GPU僅僅能處理固定功能,一旦設計完成,用戶不能根據需求擴展功能,最多可以參與簡單的設置(固定管線著色器)。
1998年后,modern GPU的發展又分為四個階段:
第一代,代表者有NVIDIA的TNT2、 ATI的Grage 、3Dfx的Voodoo3。這一時期的GPU功能很有限,只能用于紋理組合的數學計算,或者像素值的計算。
第二代,1999年到2000年(都是時代之交),這一時期的GPU具備了三維坐標轉換和光照計算能力,OpenGL和DirectX7(圖形接口簇)相繼支持應用程序通過硬件進行坐標變換。同時對紋理的操作擴展到3維的CubeMap。代表作有NVIDDIA的GeForce256、MAX, ATI的Radeon 7500等。
第三代,2001年,支持頂點編程能力的顯卡面世(暫不支持像素編程能力)。
第四代,至今,市面的顯卡同時支持了頂點(vertex)和片段(fragment,也可翻譯成片元)編程能力。當前課程中的重要一環就是“頂點和片段著色器”。
那么同學們想一想,為什么要發展GPU呢?CPU不是也能執行程序嗎?還要顯卡做什么呢?先來看一張圖:
GPU:控制器少,計算單元多。CPU:控制器很大,計算單元則很少。這里不要糾結計算單元的面積大小,這只是示意圖。
GPU采用流式并行計算模式,每一個計算單元可以單獨負責一個像素點,每個像素點不依賴旁邊像素點的數據,所以每個計算單元都是獨立并行的,不需要控制器額外干涉。
CPU處理則與之不同,線性處理較多,這條數據的可能依賴上一條數據的結果,同時還需要控制器參與取指令,指出下一條指令在內存中的位置。所以CPU的結構不適合獨立的像素運算(像素一個一個的算效率極低)。
GPU在控制方面弱于CPU,但在并發算力方面遠遠勝于CPU。例如黑客們破解密碼時,需要大量的嘗試性計算,他們首選必是GPU。
所以,但看計算能力,GPU由于高并發能力,算力遠遠大于CPU;但說到分布、有序、控制力上,CPU要勝過GPU。
>>本文地址:http://www.jecan.cn/zhuanye/2020/49614.html
聲明:本站稿件版權均屬中公教育優就業所有,未經許可不得擅自轉載。
1 您的年齡
2 您的學歷
3 您更想做哪個方向的工作?