2007ARC研究会招待講演

計算機アーキテクチャ研究会(IPSJ-ARC)
コンピューティングパワー拡大に伴う
技術課題
2007年5月31日
富士通株式会社 井上 愛一郎
All Rights Reserved,Copyright© FUJITSU LIMITED 2007
Tr=約5億
CMOS 銅配線
+ Low-k
90nm
プロセッサ開発の履歴
自己紹介を兼ねて
高
性
能
技
術
GS21
SPARC64
VI
Tr=1億9千万
CMOS Cu
・マルチコア・マルチスレッド
・L2キャッシュ内蔵
・ノンブロッキングキャッシュ
・アウトオブオーダ
・スーパースカラ
GS21
Tr=4千6百万
CMOS Cu
180nm
Tr=3千万
CMOS Al
250nm / 220nm
GS8800B
Tr=1千万
CMOS Al
350nm
Tr=約4億
CMOS 銅配線
+ Low-k
90nm
SPARC64
V
Tr=1億9千万
CMOS Cu
GS8900
GS8800
・ストア突き放し
・ブランチヒストリ
・プリフェッチ
SPARC64
V+
130nm
・1チップCPU
高
信
頼
技
術
メインフレーム用
プロセッサ
Tr=約5億4千万
CMOS 銅配線
+ Low-k
90nm
SPARC64
SPARC64
GP
GP
130nm
Tr=3千万
CMOS Cu
180nm / 150nm
SPARC64
プロセッサ
GS8600
SPARC64
II
:半導体テクノロジ世代
SPARC64
~1995
1996
~1997
1998
~1999
2000
~2003
2004~
All Rights Reserved,Copyright© FUJITSU LIMITED 2007
スーパーコンピュータの性能拡大
Flop/s
15
10
永遠に性能拡大できるのか?
障害は何か?
Peta
~ Moore’s Low = × 2 /1.5years
BG/L
EarthSim.
12
10
Tera
ASCI White
ASCI Blue
HPC2500
ASCI Red
VPP5000
+
NWT
9
10
+
PRIMEQUEST
ASCI Q
Giga
+
+
+VPP800
CRAY T90
VP2000
CRAY C90
+
VP400
CRAY Y-MP
+
CRAY X-MP
CRAY2
ILLIAC4
CRAY1 VP200
+
6
10
Mega
+230-75/APU
1970
1980
1990
2000
2010
年
"All other company/product names mentioned may be trademarks or registered trademarks of their respective holders and are used for identification purpose only. "
All Rights Reserved,Copyright© FUJITSU LIMITED 2007
進化を支えたCMOSスケーリング
• トランジスタを微細化することで、集積度の向上と
高速化が同時に達成でき、さらにその利益をすべ
てつぎこんでも、チップの大きさが変わらなければ
消費電力が変わらない
デバイスパラメータと結果としての影響
比例縮小係数
長さ:L, 幅:W, ゲート酸化膜厚:tox
1/α
供給電圧:Vdd
1/α
電界:E
1
ゲート遅延
1/α
電力消費(トランジスタあたり)
1/α2
• しかし、もともと誰も理想的スケーリングが成り立つ
とは思っていない
• さらに、微細化そのものが限界に達しつつある
All Rights Reserved,Copyright© FUJITSU LIMITED 2007
微細化にともなう問題点など
• すでに限界に達した、あるいは達しつつあること
–
–
–
–
–
–
–
ゲート酸化膜厚(←ハフニウムなどのHigh-K材料で緩和されるが...)
ゲート長L(~30nm)
電子やホールの移動度(歪シリコン)
配線材料(アルミ⇒銅) 配線抵抗→スピードが上がらない
配線層間材料(Low-K材料)
配線層数(~10数層)
配線コストの上昇⇒遅延がゲートよりも配線によって決まる、また、
配線の充放電が電力の多くの部分を占める。
– チップあたりのIOピン数(~2000signal)
– 消費電力と発熱量(チップあたり、発熱密度)
• それでも微細化と集積度の向上は続く
(65nm→45nm→32nm→22nm→…)
• 困ること(進化を阻害する要因)
– 製造設備に必要な投資額の増大(ビジネスとして成り立ちにくい)
– 製造工程の複雑化(レチクル枚数の増加と製造コストの上昇)
– ニーズの下方シフト(FPGAの台頭など)
All Rights Reserved,Copyright© FUJITSU LIMITED 2007
Microprocessor Architecture
プロセッサの最重要なパラメータは:
性能, 消費電力, 信頼性(別の機会に)
並列処理が前提のスーパーコンピュータでは、
Performance/watt. :消費電力あたりの性能
が特に重要
 システムの集積度
 消費電力の絶対値
 運用コスト
All Rights Reserved,Copyright© FUJITSU LIMITED 2007
性能指標
一般的な性能指標
MIPS (Million Instructions Per Second )
=f[Mhz]*IPC (Instruction Per Cycle)
HPC用途の性能指標
FLOPS (Floating point number Operations Per Second)
=f*FPC (Floating point number operations Per Cycle)
All Rights Reserved,Copyright© FUJITSU LIMITED 2007
性能とトランジスタ数の関係
一般に、IPCやFPCを改善すると回路量が増加
(少ない回路で高いIPCやFPCを実現するのは腕の見せ所だが)
Intelの経験則(ポラックの法則)
性能∝~√ダイサイズ
トランジスタ数TR#⇒回路量⇒ダイサイズ
TR#とIPC(FPC)の関係は
IPC(FPC)
∝ ~√TR#
MIPS(FLOPS) ∝~f*√TR#
All Rights Reserved,Copyright© FUJITSU LIMITED 2007
消費電力はどうか?
Power = Pactive + Pstatic
Pactive = Ceff × Vdd2 × f
IPC(FPC)∝~√回路量、回路量∝~Ceff だから
IPC(FPC)↑⇒ Power↑↑
また f∝~Vdd だから Pactive ∝~f3
さらに、早いトランジスタ⇒リーク大⇒ Pstatic↑↑
なので
f↑⇒ Power↑↑↑
性能向上は消費電力を非常に大きくする
All Rights Reserved,Copyright© FUJITSU LIMITED 2007
評価尺度の定義
性能ポテンシャル
f*√TR#
fルートラ
消費電力あたり性能のポテンシャル
(f*√TR#)/Power fルートラPP
マイクロアーキや論理構造とは独立に
物理的な側面からポテンシャルを示す尺度
All Rights Reserved,Copyright© FUJITSU LIMITED 2007
CMOSスケーリングでは?
パラメータαで縮小し、同じ面積のチップを作ると
TR# ⇒α2倍
f
⇒α 倍
Power⇒変わらない
f*√TR#
⇒α*√α2 =α2
(f*√TR#)/Power⇒α*√α2/1=α2
理想的スケーリングが成り立っていると、
普通にやっていれば!世代ごとに
性能ポテンシャルがα2倍に改善
消費電力あたり性能ポテンシャルもα2倍に改善
All Rights Reserved,Copyright© FUJITSU LIMITED 2007
f*√TR#で見たマイクロプロセッサの進化
スーパーコンピュータの性能向上率と一致
ムーアの法則どおりの進化
⇒長期的に理想的なCMOSスケーリングと一致
"All other company/product names mentioned may be trademarks or registered trademarks of their respective holders and are used for identification purpose only. "
All Rights Reserved,Copyright© FUJITSU LIMITED 2007
理想的スケーリングと実際
x86チップの例
理想
実際
<
<<
<
<<
<<
≒
大幅な周波数向上(理想的スケーリングの7倍)
Vdd⇒1.40/0.85=1.6倍では説明できない
電力は10倍(大幅抑制)
f×Ceff×Vdd2⇒3400/467×125/46.9×(1.4/0.85)2=53倍
f*√TR#は理想的スケーリングを大きく超え、
(f*√TR#)/Powerは理想的スケーリングとほぼ一致
"All other company/product names mentioned may be trademarks or registered trademarks of their respective holders and are used for identification purpose only. "
All Rights Reserved,Copyright© FUJITSU LIMITED 2007
マイクロプロセッサの比較
(f*√TR#)/PowerがPentium4を上回るものがある
"All other company/product names mentioned may be trademarks or registered trademarks of their respective holders and are used for identification purpose only. "
All Rights Reserved,Copyright© FUJITSU LIMITED 2007
マイクロプロセッサの比較
Pentium4からWoodcrest
Woodcrestは、(f*√TR#)/PowerがPentium4から向上
90nm→65nmの理想的スケーリングと同程度
マルチコア化し、動作周波数を少し下げた
実際には消費電力あたりの性能改善大(周知の事実)
"All other company/product names mentioned may be trademarks or registered trademarks of their respective holders and are used for identification purpose only. "
All Rights Reserved,Copyright© FUJITSU LIMITED 2007
確認ですが…
周波数が低ければ(f*√TR#)/Powerは向上
• Pactive ∝~f3、Pstaticも周波数fに強く依存する
• だからPowerは周波数fを下げると激減
(もちろん、そういう設計をし、電圧を下げた場合)
• 周波数f半分でトランジスタ数TR#一定ならば、
(f*√TR#)/Powerは1桁改善
All Rights Reserved,Copyright© FUJITSU LIMITED 2007
マイクロプロセッサの比較
BlueGene/Lの位置づけ
BlueGene/L(@130nm)は、(f*√TR#)/Powerが良い
←周波数が低い(but理想的スケーリングの2倍)
浮動小数点演算性能を強化←専用化の利点
"All other company/product names mentioned may be trademarks or registered trademarks of their respective holders and are used for identification purpose only. "
All Rights Reserved,Copyright© FUJITSU LIMITED 2007
半導体の微細化による今後の改善
例:BlueGene/Lからチップサイズ一定で移行
理想的スケーリングが成り立つならば、
(f*√TR#)/Powerは世代ごとに倍増
これまでは、その通り
しかし今後は無理
電源電圧(正確にはVtが下げられない)
動作周波数
"All other company/product names mentioned may be trademarks or registered trademarks of their respective holders and are used for identification purpose only. "
All Rights Reserved,Copyright© FUJITSU LIMITED 2007
半導体の微細化による今後の改善
例:BlueGene/Lからチップサイズ一定で移行
!1:速度を保つためには電圧を下げられない。配線コストが大きくなる分をトランジスタ数と消費電力に反映
現実的なテクノロジー移行(某社に限らず一般に)
電源電圧 ⇒下がらない
動作周波数⇒上がらない
(f*√TR#)/Powerは改善しない(90nmあたりがピーク)
電力密度増大(周波数は一定だが)
チップの集積度がシステム実装密度に貢献しない?
"All other company/product names mentioned may be trademarks or registered trademarks of their respective holders and are used for identification purpose only. "
All Rights Reserved,Copyright© FUJITSU LIMITED 2007
ちょっと脱線してSPARC64 Vの宣伝
(2004年当時の比較データ)
他社製品は発表資料等にもとづいて推定
消費電力を抑えつつ、高い演算性能を実現
All Rights Reserved,Copyright© FUJITSU LIMITED 2007
マイクロプロセッサの比較
SPARC64の位置づけ
SPARC64 Vは、(f*√TR#)/Powerがとても良い
SPARC64 VIは、 (f*√TR#)/Powerが悪くなった(課題)
しかしSPARC64 VIの性能はSPARC64 Vのおよそ4倍
(Linpackソケットあたり性能)
"All other company/product names mentioned may be trademarks or registered trademarks of their respective holders and are used for identification purpose only. "
All Rights Reserved,Copyright© FUJITSU LIMITED 2007
わかったこと
これまで
• 数多くのトランジスタを、高い周波数で使い、かつ
電力を抑制してきた
 理想的なスケーリングを超えるf*√TR#の向上
 理想的なスケーリングと同レベルの (f*√TR#)/Power
これから
• これまでの成功の前提は崩壊
 微細化は進み集積度は向上する
 (f*√TR#)/Powerの継続的向上は期待できない
All Rights Reserved,Copyright© FUJITSU LIMITED 2007
これからやっていかなければならないこと
•
トランジスタの使い道
–
性能向上にリニアに直接効く使い方
(ex. 2倍のトランジスタで2倍の性能)
– f*TR#/Powerならば継続的向上が期待できる?
•
消費電力削減
マイクロアーキテクチャの革新が求められている
(もちろん半導体デバイスの改善を望む!)
All Rights Reserved,Copyright© FUJITSU LIMITED 2007
トランジスタの使い道~マルチコアは悪くない
• 1/nの大きさのコアをn個並べたチップは性能√n 倍
– コアあたり性能:1/√n
– チップあたりのIPC/FPCの総和:n×コア性能⇒ √n 倍
(キャッシュやバス共有の影響を無視)
• 世代ごとに回路量の増加分を全てコア数増に割り当て
ると性能はムーアの法則の線上の成長
– コアの回路量と周波数:一定
– コア数:α2倍
– コア性能の総和:α2倍
(使う側に努力を強要するが…)
√TR#ではなく、TR#に応じた性能向上
(但し、単体性能ではなくスループット性能)
All Rights Reserved,Copyright© FUJITSU LIMITED 2007
マイクロアーキテクチャ
• マルチコアは効果的
• 演算器強化は効果的
• 行き過ぎ(大きすぎ、速すぎ)の是正は効果的
しかし
• コアの縮小は消極的、万能ではない
• 周波数を下げるのは消極的、万能ではない
抜本的解決は見えていない
ブレークスルーが必要
All Rights Reserved,Copyright© FUJITSU LIMITED 2007
若いプロセッサ設計者に贈る12ヶ条
トランジスタがあり余っているという考えは捨てる
機能の要不要を切り分ける(性能評価、テスト機能)
僅かに高い性能よりも効率を優先
周波数とIPCのトレードオフ
少ないトランジスタで効率の良い回路を作る
論理構造で決まる無理のない動作周波数を狙う
トランジスタを大きくして無理やり周波数を上げるのはNG
配線ファクタを大きくしないコンパクトな実装
無用な高速回路の排除(ターゲット周波数を決めて、それにちょ
うど良い速さの回路)
10. クリティカルパスのハンドチューン
11. 大きさと電力を下げる最適チューン(ツール)
12. 何かにしわ寄せするのではなく全体でバランスを取る
やることは変わらないが、目指す方向と、どこまで徹底するかが違う
1.
2.
3.
4.
5.
6.
7.
8.
9.
All Rights Reserved,Copyright© FUJITSU LIMITED 2007
SPARC64プロセッサの消費電力
何れも机上値
リーク電力はプロセス差が大きく影響(FF1.9σ:120W⇔TYP:80W)
少し遅いプロセスではリーク電力は抑制される
装置搭載時には消費電力が少ないものは温度が下がるため、更に効果大
アクティブ分はSPARC64 VIで改善
All Rights Reserved,Copyright© FUJITSU LIMITED 2007
熱抵抗と消費電力
リーク大のチップ
リーク小のチップ
All Rights Reserved,Copyright© FUJITSU LIMITED 2007
SPARC64の今後の取り組み
• 電力を抑制しながら高性能化
– 次機種SPARC64 VIIは、65nmに展開し4コア化
– 省電力設計を更に推進
• アクティブ電力抑制(クロックゲーティング、SRAM制御など)
• リーク電力抑制(High-Vth使用率向上など)
• CPUコアを物理的に小さく作る
• システム全体での省電力化
– 部品数削減
– チップ冷却改善
All Rights Reserved,Copyright© FUJITSU LIMITED 2007
まとめ
• これまでマイクロプロセッサは半導体の微細化とともに、
一本調子で性能向上
• (f*√TR#)/Power の尺度で、これまでと、これからを評
価
• 90nmあたりにターニングポイント
• マイクロアーキテクチャが重要
抜本的改善は見えていない、ブレークスルーが必要
• マルチコア、演算器強化
• 消費電力削減
• 論理、実装の両面で効率を重視した最適化の徹底
All Rights Reserved,Copyright© FUJITSU LIMITED 2007
商標について
Sun、Sun Microsystems、サンのロゴマーク、Sun Fire、Solaris、Javaは、米国Sun Microsystems, Inc. の米国およびその他の国に
おける商標または登録商標です。
すべてのSPARC商標は、米国SPARC International, Inc. のライセンスを受けて使用している同社の米国およびその他の国における
商標または登録商標です。SPARC商標がついた製品は、米国Sun Microsystems, Inc. の開発したアーキテクチャに基づくものです。
SPARC64は、米国SPARC International, Inc. のライセンスを受けて使用している同社の商標です。
SPECは、米国およびその他の国におけるStandard Performance Evaluation Corporationの登録商標または商標です。
その他各種製品名は、各社の製品名称、商標または登録商標です。
All Rights Reserved,Copyright© FUJITSU LIMITED 2007
All Rights Reserved,Copyright© FUJITSU LIMITED 2007