FrontPage開発メモ開発メモ/パイプライン

各CPUのマイクロアーキテクチャ


Core2(Core) / i7(Nehalem) MicroArchitecture

http://journal.mycom.co.jp/special/2008/nehalem02/index.html

ALU/MMX/SSE/FPmove が三基搭載。Branch, FAdd, FMul, Load, Saveは一基ずつ、って言うのが大雑把な感触で、厳密な詳細は上記URLを参照。(例えばFAddとALUは一緒、とか)

なので、整数演算、SIMD演算はハザード等が無ければ、スーパースケーラによって3つ同時に実行出来る(つまり最小CPIは0.333...)。
一方mov系命令(これにはSSEのmov系命令も含むようだ。実際に試した)は、Loadが一基しかないので最小CPIは1のようだ。

# ちなみにnopってALUで実行されるんだね・・・nopで試してみたらCPIが0.333...とかなって笑ったよw


Pentium4(NetBurst) MicroArchitecture

http://www.atmarkit.co.jp/fpc/special/pentium4arch/pentium4arch01.html

悪名高きNetBurst・・・。でもその実、ALUは4基搭載されていて(か、ALU2基を2倍クロックで動作させているので4個分としている、と言う噂も・・・)結構豪勢・・・!

Load, Storeは相変わらず1個ずつ。あとNetBurstではFPU演算、MMX、SSEがひとまとめになっているようですね。残念・・・。まぁ、SSEが初めて搭載されたMAなので仕方ないかな・・・。


Athlon

K8・・・かな・・・?

http://journal.mycom.co.jp/column/sopinion/184/index.html

Athlon 64 X2

http://journal.mycom.co.jp/photo/special/2005/dualcore/images/Photo04l.jpg

Phenom

http://journal.mycom.co.jp/special/2008/phenom01/index.html