|
||||
眾所周知,現在的獨立顯卡市場是NVIDIA和AMD-ATI兩家的天下。盡管INTEL憑借整合圖形芯片組的優勢佔據了集成顯卡市場的半壁江山,但獨立顯卡一直是INTEL心中難言的痛,它一直在尋找進軍獨立顯卡市場的切入點。早在1998年2月,INTEL曾發布了和Real3D合作設計的i740/i752獨立顯卡,但由於各大競爭對手的3D顯卡性能遙遙領先,加上INTEL忙於自己的平臺化策略,所以風光一時的i740/i752成為INTEL獨立顯卡的『絕唱』。時隔近10年,INTEL在平臺化戰略中取得了巨大成功,它為了鞏固集成顯卡市場、改變人們認為INTEL整合顯卡性能是『雞肋』的成見,近年來一直默默實施代號為『Larrabee』的獨立顯卡開發計劃……
Larrabee,穿著馬甲的CPU?
Larrabee與AMD、NVIDIA的通用計算圖形處理器技術不同,後兩者使用Stream Processing(流處理)來滿足對GPU計算的需求。
傳統的x86架構
而Larrabee基於傳統的x86架構,是一種可編程的多核心架構,不同的版本會有不同數量的核心,並使用經過調整的x86指令集,性能上將會達到萬億次浮點運算級別。值得注意的是,Larrabee中的處理核心為順序執行核心,與CPU中的亂序執行核心不同。
Larrabee內部工作流程
在Larrabee的內部,每一個處理核心都可以發出2條指令,這種架構是繼承了最初的奔騰處理器的設計。當然在老奔騰的基礎上,INTEL的工程師們也作了許多修改和提昇。首先Larrabee架構具有衍生自雙指令執行Pentium處理器的純量管線,並采用具有完整連貫性高速緩存架構的短執行管線。Larrabee架構提供顯著的最新改良技術,如寬幅向量處理單元、多線程、64位延伸指令,以及精密的指令預取功能。這將促使可用之運算能力大幅提昇,並能發揮程序設計師對英特爾架構的熟悉度及容易入門的程序開發優勢。同時Larrabee的執行流水線階層非常的短,最初的Pentium處理器的執行流水線僅有5個階層,這意味著擁有不錯的運算效率。Larrabee將包含數個支持繪圖及其他應用程序的固定功能邏輯區塊,這些運算單元被謹慎選用以平衡及強化每瓦效能,並對架構的彈性與可編程化能力有所貢獻。Larrabee的原生程序設計模式支持高度平行運算應用程序,亦包括采用非規則性數據結構的運算。這項特性將促使繪圖API的開發、新繪圖算法更迅速的創新,以及在繪圖處理器上執行以現有個人計算機軟件開發工具軟件所實作之真正的一般目的運算。
邏輯處理單元的分布
在算矢量處理單元的部分。Pentium由於設計年代久遠,未曾出現過SIMD單指令多數據單元,而Larrabee在這方面有了巨大的飛躍,支持16路的矢量ALU算數邏輯單元。其運算效能非常強大,這16路可以同時執行32bit的浮點操作,這比INTEL所生產過的任何處理器都要強大許多。介於Larrabee本身的架構優勢,這些矢量單元會更好的發揮其作用。INTEL的工程師們在指令的預取方面會為Larrabee做更多海量並行數據處理方面的優化。但究竟會對實際的效能產生多大的影響,目前仍是個迷。Larrabee所有超強的性能,都是基於這16路矢量ALU邏輯運算單元。請記住!這僅僅是Larrabee的一個核心,當它用於處理3D圖像的時候,其內部還有很多的核心在並行工作。
此外,INTEL還對Larrabee架構指令集擴展進行了優化改進。比如16-Widevector指令,streamprocessing最佳化緩存控制指令等。另外64-bit指令也得到了支持。簡單得說就是以x86基本指令集為基礎加上適當的stream processing指令。另外據說當前的GPU原生指令集與CPU指令集非常相似。INTEL關於Larrabee指令擴展並沒有進行詳細介紹。不過估計可以有點,首先就是指令格式必須容易解碼。x86指令解碼多且復雜。因此為了解決這個問題,Larrabee的擴張指令最好是固定長度指令。