CPU/GPU真融合!Intel新酷睿權威評測
第三章/第五節 SandyBridge架構解析:新增物理寄存文件
Physical Reg File(PRF,物理寄存文件)的引入是SandyBridge微架構的一大特色,這是Nehalem架構所不具備的。當然AMD新一代的推土機和山貓架構也會支持,AMD很早之前就公布了架構細節,現在Intel首次將其應用在了實際產品當中。
在Core 2和Nehalem架構中,每個微指令需要的每個操作數都有一份拷貝,這就意味著亂序執行硬件(調度器/重排序緩存/關聯隊列)必須要非常大,以便容納微指令和相關數據。Core Duo時代是80-bit,加入SSE指令集后增至128-bit,現在又有了AVX指令集,按照趨勢會翻番至256-bit。
PRF在寄存器文件中存儲微指令操作數,而微指令在亂序執行引擎中只會攜帶指向操作數的指針,而非數據本身。這就大大降低了亂序執行硬件的功耗(轉移大量數據很費電的),同時也減小了流水線的核心面積,數據流窗口也增大了三分之一。
核心面積的精簡正是AVX指令(SNB最主要革新之一)集得以實現并保證良好性能的關鍵所在。以最小的核心面積代價,Intel將所有SIMD單元都轉向了256-bit。AVX支持256-bit操作數,相當消耗晶體管與核心面積,而RPF的使用加大了亂序執行緩沖,能夠很好地滿足更高吞吐量的浮點引擎。
Nehalem架構中有三個執行端口和三個執行單元堆棧
SandyBridge允許256-bit AVX指令借用128-bit的整數SIMD數據路徑,這就使用最小的核心面積實現了雙倍的浮點吞吐量,每個時鐘可以進行兩個256-bit AVX操作。另外執行硬件和路徑的上位128-bit是受電源柵極(Power Gate)控制的,標準128-bit SSE操作不會因為256-bit擴展而增加功耗。
AMD推土機架構對AVX的支持則有所不同,使用了兩個128-bit SSE路徑來合并成256-bit AVX操作,即使八核心(四模塊)推土機的256-bit AVX吞吐量也要比四核心SNB少一半,不過實際影響完全取決于應用程序如何利用AVX。
SandyBridge的峰值浮點性能翻了一番,這就對載入和存儲單元提出了更高要求。Nehalem/Westmere架構中有三個載入和存儲端口:載入、存儲地址、存儲數據。
SandyBridge架構中載入和存儲地址端口是對稱的,都可以執行載入或者存儲地址,載入帶寬因此翻倍。SNB的整數執行也有了改進,只是比較有限。ADC指令吞吐量翻番,乘法運算可加速25%。
關注我們



