星期日, 3月 28, 2010

[隨手亂畫] AVX: Sandy Bridge vs Bulldozer

執行AVX的效率,十之八九會決定這兩個微架構的勝負。比較有趣的地方是:

一、AMD Bulldozer是要兩個128 bit FMAC結合在一起,才能執行AVX256,兩個Core共用一個,換句話說,就算管線化,AVX256的Throughput也只有2 cycle。問題是:AMD的AVX實作支援FMA4,可以直接用單一執行單元搞定,而且理論上「當克服register dependency後,應該可以」同時執行兩個AVX128 Multiply-Add,或著AVX128與SSE混合的情況。AVX256的FMA拆成四個ROP大概也不是令人意外的結果。

二、Intel是每個Sandy Bridge核心都有獨立的AVX ADD、Multiply和Shuffle單元,號稱都可以1 Cycle Throughput,但Intel AVX不但已經取消FMA4,連Sandy Bridge也不會支援Fused FMA,可能要等到Haswell,當軟體實作FMA時,很可能會重演當年Pentium 3「最佳化SSE後只有8/5 Cycle」Throughput慘劇。

最後,只剩下兩邊的記憶體子系統效率,能不能滿足AVX吧。這點我倒是對Intel特別有信心。

6 則留言:

匿名 提到...

一直在想一個問題:為什么Bulldozer的FPU要share呢?這個東西是誰發明的呢?@_@ 同樣的設計也出現在Sun Rock上,難道說FPU容易空閑,所以設計為share嗎?

匿名 提到...

天天研究這些,您又參與不到晶片設計,也不是開發BIOS或Compiler的人,純研究爽的而已。

匿名 提到...

只有狗眼看人低的loser才會以為這麼簡單的紙上談兵就是「研究」。唉唉。

匿名 提到...

原來只是紙上談兵的水準,紙上談兵的下場,是長平之戰大敗,被人坑殺40萬兵,18年內無法再作戰。

匿名 提到...

原來只是紙上談兵,紙上談兵的下場是趙國在長平之戰被人坑殺40萬兵,18年內都無法再戰。

匿名 提到...

嗯嗯!自己派匿名兵,有點中立但其實是回護,這招還是太膚淺,一下就被看穿,唉唉