コンピュータ・アーキテクチャ特論

コンピュータ・アーキテクチャ特論
第2回 演習の内容
九州大学大学院システム情報科学研究院
村上和彰、井上弘士
高性能プロセッサのアーキテクチャを設計する!!
演習課題「性能が最大となるマルチ
コア・アーキテクチャを求めよ!」
2
演習内容
•
•
目的: 性能を最大にするマルチコア・アーキテクチャを決定する!
制約:
–
–
•
Splash2ベンチマークから最低3つのプログラムを選択すること
チップ面積制約は最大40BCE(Base Core Equivalent)、ただし、40BCE以下でもOK
前提:
–
–
プロセステクノロジ:65 nm
プロセッサコア
•
•
•
–
L1キャッシュ・メモリ
•
•
–
アクセスレイテンシ==150ns
何を最適化するのか?
–
–
•
サイズは2YKB
32KB L2キャッシュ面積==1BCE、ブロックサイズ==32B、ブロック置換ポリシ==LRU
オフチップ・メモリ
•
•
2KB以上のL1データキャッシュ、ならびに、2KB以上のL1命令キャッシュ、ただし、サイズは2XKB
2KB L1キャッシュ面積==1BCE、ブロックサイズ==32 B、ブロック置換ポリシ==LRU
L2キャッシュ・メモリ
•
•
–
1命令発行プロセッサコア(構成の詳細は指定した設定ファイルで定義済み)
プロセッサコア面積==1BCE
動作周波数:L1キャッシュヒット時間で決定(例:L1キャッシュヒット時間が1nsの場合、プロセッサ動作周波数は1GHz)
搭載するプロセッサコア数(計算性能に大きく影響)
L1/L2キャッシュのサイズ、連想度、L2を共有とするか非共有とするか(メモリ性能に大きく影響)
使用するツール:
–
–
“M5”: multi-core simulator
“CACTI”: cache access time estimator
例えば, 12BCEの場合・・・
1CBE
12コア(キャッシュ無し)
8コア+大容量キャッシュ
4
例えば, 20BCEの場合・・・
w/ a shared large L2 cache
w/o L2 Cache
w/ private L2 caches
CPU
core
CPU
core
CPU
core
CPU
core
CPU
core
CPU
core
CPU
core
CPU
core
CPU
core
CPU
core
CPU
core
CPU
core
2KB
L1
2KB
L1
2KB
L1
2KB
L1
2KB
L1
2KB
L1
2KB
L1
2KB
L1
2KB
L1
2KB
L1
2KB
L1
2KB
L1
64KB
L2
64KB
L2
64KB
L2
64KB
L2
64KB
L2
512 KB
L2
(16 CBEs)
2KB
L1
2KB
L1
CPU
core
CPU
core
2KB
L1
CPU
core
2KB
L1
CPU
core
2KB
L1
CPU
core
実験環境
Application
Application
program
program
キャッシュメモリ特性の解析
(CACTI)
•キャッシュ容量 vs キャッシュヒット時間
•キャッシュ連想度 vs キャッシュヒット時間
アプリケーション特性の解析
(M5)
•並列性
•パーフェクトL1キャッシュを前提
•コア数 vs. 実行時間tion Time
•L1/L2キャッシュミス
•キャッシュサイズ vs ミス率
Application
Application •連想度 vs ミス率
program
program
マルチコア
アーキテク
チャの検討
性能評価
(M5)
本日の作業内容
• チーム(4~5名)
– 代表者の決定
– チーム名の決定
• ベンチマークの選択
– Splash2の論文を参考に最低3種のプログラムを決定
• 505号室のアカウント確認
– 元C課程の学生さんはアカウント有り(ログインチェック)
– その他の学生さんは[email protected]に連絡(学生番号、
名前)
• 各チームの代表者の方は以下を[email protected]に
メイルで連絡
– チーム名
– メンバーリスト(名前+学籍番号)
– 選択したベンチマークリスト