FPGA開発日記

カテゴリ別記事インデックス https://msyksphinz.github.io/github_pages , English Version https://fpgadevdiary.hatenadiary.com/

Kriste Asanovic教授のVector Phd Paper輪読メモ (4. スカラプロセッサの性能)

people.eecs.berkeley.edu

2. 背景と動機 (続き)

2.4 スカラ性能

  • マイクロプロセッサの整数性能は、10年間では100倍以上増加した。
    • つまり、1年あたり60%程度向上した。
  • しかし、マイクロアーキテクチャ要因の性能向上はわずかでしかない。
  • 表2.1 SGIQED R5000マイクロプロセッサとMIPS R10000マイクロプロセッサの性能比較
    • R5000 インオーダ・2命令発行スーパスカラプロセッサ
      • 1整数命令発行
      • ブロックキャッシュ
    • R10000 アウトオブオーダ・4命令発行スーパスカラプロセッサ
      • レジスタリネーム・アウトオブオーダ実行・投機実行・ノンブロックキャッシュ
    • CPUコアの面積比較をすると、約5倍に増加する (162mm2)
      • 122$\text{mm}^2$:命令フェッチ・デコード・レジスタリネーム・命令ウィンドウ
      • 40$\text{mm}^2$:整数・浮動小数点パス
  • つまり、スーパースカラ・マイクロアーキテクチャのために大面積を大きく使うと、これらのコードからILPを抽出することが困難なため、性能面での見返りが小さくなる。
SGI O2 R5000 SC SGI Origin 2000 比率
Processor R5000 R10000
クロック周波数 (MHz) 180 180 1.0
ISA MIPS-IV MIPS-IV
Process Technology (um) 0.35 0.35
メタルレイヤ 3 4 1.33
ポリシリコンレイヤ 1 1 1.0
全体ダイ面積 (mm2) 87 298 3.43
CPUダイ面積 (mm2) ~33 ~162 4.9
電源供給 (V) 3.3 3.3
200MHz動作時の最大消費電力 10 30 3
アウトオブオーダ実行 No Yes
分岐予測 No Yes
L1キャッシュ (I/D KB) 32/32 32/32
L1構成 2-way 2-way
L1ノンブロッキングキャッシュ No Yes
サイクル当たりの整数命令実行 1 3 3
SPECInt95 (Peak) 4.82 8.59 1.78
SPECInt95 (Base) 4.76 7.85 1.65

2.4.1 ベクトルスーパコンピュータのスカラ性能

  • ベクトル型スーパコンピュータのスカラ性能は、マイクロプロセッサのものよりもゆっくりと性能向上した。
    • Cray C90 (240MHz)ベクトルスーパコンピュータ と Alpha 21164 (300MHz)マイクロプロセッサ
      • 非ベクトル化コードにおいてはAlphaの方が5倍高速である
  • C90
    • キャッシュミスのレイテンシが見える
    • 1命令発行
    • 低密度なゲートアレイ技術で設計されている
  • Alpha 21164
    • 高いクロック周波数
    • 短い演算レイテンシ
    • 4命令同時発行

2.4.2 スカラ対ベクトル性能のトレードオフ

  • ベクトルアーキテクチャCMOSプロセスで設計した場合
    • 好かれ性能を向上させるための面積が、ベクトルユニットの面積に奪われてしまう
  • だったら、ベクトルユニットを追加してデータレベル並列性を追加した方がマシである。

msyksphinz.hatenablog.com

msyksphinz.hatenablog.com

msyksphinz.hatenablog.com