CPUクロック速度向上の効果を、アプリケーション別の、単一ジョブ投入あるいは複数ジョブ投入の条件別に整理しておくことは価値があります。幸いなことに米国インテル社がメモリ速度(1333MHz)や動作環境が同一の計算機用いて、CPUクロック速度のみを2.93GHz、2.80GHz、2.66GHzに入れ替えて、単体コア性能と16ジョブ並行処理でのSPECテスト結果を公開しています。テストの実施は、CPUとコンパイラ双方の開発元であるインテル社が自ら行っていますからアプリケーション性能を十分に引出してのテストと考えられます。この結果を評価することで、Nehalem 2ソケット環境でのCPUクロック速度向上の効用をかなり正確に確認することができます。
| SPEC CFP2006 Rates (並行処理性能) | SPEC CFP2006 Base (単体コア性能) | |||||||||||
| 製品 | 6026T | 6026T | 6026T | 2.66GHz と 2.93GHz との クロック 速度 向上率 |
2.80GHz と 2.93GHz との クロック 速度 向上率 |
2.66GHz と 2.80GHz との クロック 速度 向上率 |
6026T | 6026T | 6026T | 2.66GHz と 2.93GHz との クロック 速度 向上率 |
2.80GHz と 2.93GHz との クロック 速度 向上率 |
2.66GHz と 2.80GHz との クロック 速度 向上率 |
| CPU | Xeon | Xeon | Xeon | Xeon | Xeon | Xeon | ||||||
| 製造プロセス | 45nm | 45nm | 45nm | 45nm | 45nm | 45nm | ||||||
| CPU番号 | X5570 | X5560 | X5550 | X5570 | X5560 | X5550 | ||||||
| CPUクロック | 2.93GHz | 2.80GHz | 2.66GHz | 10 % | 4 % | 5 % | 2.93GHz | 2.80GHz | 2.66GHz | 10 % | 4 % | 5 % |
| チップセット | 5520 | 5520 | 5520 | 5520 | 5520 | 5520 | ||||||
| メモリ速度 (MHz) |
DDR3 1333 24GB |
DDR3 1333 24GB |
DDR3 1333 24GB |
DDR3 1333 24GB |
DDR3 1333 24GB |
DDR3 1333 24GB |
||||||
| OS | Linux | Linux | Linux | Linux | Linux | Linux | ||||||
| コンパイラ | Intel11 | Intel11 | Intel11 | Intel11 | Intel11 | Intel11 | ||||||
| CPU 数 | 2 | 2 | 2 | 2.66GHz の 2.93GHz による 経過時間 短縮率 |
2.80GHz の 2.93GHz による 経過時間 短縮率 |
2.66GHz の 2.80GHz による 経過時間 短縮率 |
2 | 2 | 2 | 2.66GHz の 2.93GHz による 経過時間 短縮率 |
2.80GHz の 2.93GHz による 経過時間 短縮率 |
2.66GHz の 2.80GHz による 経過時間 短縮率 |
| コア数/CPU | 4 | 4 | 4 | 4 | 4 | 4 | ||||||
| 総コア数 | 8 | 8 | 8 | 8 | 8 | 8 | ||||||
| 投入ジョブ数 | 16 | 16 | 16 | 1 | 1 | 1 | ||||||
| 経過時間(秒) | ||||||||||||
| bwaves |
1181 | 1188 | 1188 | 1 % | 1 % | 0 % | 139 | 140 | 150 | 7 % | 1 % | 7 % |
| gamess | 1555 | 1643 | 1702 | 9 % | 5 % | 3 % | 797 | 831 | 865 | 8 % | 4 % | 4 % |
| milc | 818 | 819 | 821 | 0 % | 0 % | 0 % | 243 | 247 | 253 | 4 % | 2 % | 2 % |
| zeusmp | 704 | 720 | 741 | 5 % | 2 % | 3 % | 283 | 288 | 297 | 5 % | 2 % | 3 % |
| gromacs | 579 | 601 | 633 | 9 % | 4 % | 5 % | 302 | 314 | 327 | 8 % | 4 % | 4 % |
| cactusADM | 842 | 855 | 880 | 4 % | 2 % | 3 % | 66.3 | 67.4 | 70.6 | 6 % | 2 % | 5 % |
| leslie3d | 1107 | 1109 | 1112 | 0 % | 0 % | 0 % | 284 | 321 | 328 | 13 % | 12 % | 2 % |
| namd | 699 | 723 | 765 | 9 % | 3 % | 5 % | 405 | 424 | 442 | 8 % | 4 % | 4 % |
| dealII | 642 | 658 | 683 | 6 % | 2 % | 4 % | 325 | 339 | 353 | 8 % | 4 % | 4 % |
| soplex | 940 | 939 | 930 | -1 % | 0 % | -1 % | 277 | 283 | 291 | 5 % | 2 % | 3 % |
| povray | 318 | 331 | 348 | 9 % | 4 % | 5 % | 181 | 188 | 197 | 8 % | 4 % | 5 % |
| calculix | 567 | 587 | 618 | 8 % | 3 % | 5 % | 289 | 299 | 311 | 7 % | 3 % | 4 % |
| GemsFDTD | 1408 | 1418 | 1406 | 0 % | 1 % | -1 % | 225 | 227 | 249 | 10 % | 1 % | 9 % |
| tonto | 751 | 765 | 802 | 6 % | 2 % | 5 % | 373 | 388 | 405 | 8 % | 4 % | 4 % |
| lbm | 1760 | 1756 | 1757 | 0 % | 0 % | 0 % | 252 | 252 | 252 | 0 % | 0 % | 0 % |
| wrf | 774 | 796 | 799 | 3 % | 3 % | 0 % | 268 | 275 | 283 | 5 % | 3 % | 3 % |
| sphinx3 | 1527 | 1538 | 1542 | 1 % | 1 % | 0 % | 453 | 486 | 483 | 6 % | 7 % | -1 % |
表の右半分は単体コアでのクロック速度別かつアプリケーション別の経過時間です。さらに右寄りの3列は経過時間の短縮率を表しています。
結果を見ると、2.66GHzと2.93GHzのCPUクロック速度向上率は約10%です。これに対してアプリケーションの経過時間短縮率が8%以上を示した値の背景色をピンク色にしています。また時間短縮率が3%未満の値の背景色はブルーにしています。約半数のアプリケーションは7%を超える性能向上を示し、さらに大半のアプリケーションは5%以上の性能向上を示しています。性能向上が確認できなかったアプリケーションは僅か2種類しかありませんでした。Nehalemは単体で利用している限りはボトルネックが極少ない優れたCPUアーキテクチャです。
表の左半分は2CPU 8コア機のハイパースレッドをオンにし16スレッドが動作するように設定したうえで、16ジョブを同時投入した場合の経過時間すなわちスループット性能です。16ジョブ動作によりCPUはフル稼働状態となりメモリI/O負荷もピークに達しています。この状態でもなおCPUクロックの上昇に追従して経過時間が短縮するアプリケーションは「CPU性能律速型アプリケーション」と考えられます。また経過時間が短縮しないアプリケーションは、「メモリ性能律速型アプリケーション」と考えられ、メモリボトルネックに遭遇しCPU性能の多くが空費されていることなります。こちらは中央寄りの3列が経過時間の短縮率を表しています。
結果を見ると、gamess、gromacs、namd、povray、caluclixは8%を超える素晴らしい経過時間短縮率を示しています。背景色はピンクです。これら「CPU性能律速型アプリケーション」に区分されるアプリケーションについてはクロック速度の高いCPUの選択が良いです。これらは、メモリ速度に過敏になる必要はありません。Gaussianなどのシステムインテグレーションでは、1066MHzのメモリを沢山搭載し、主メモリをディスクキャッシュとして利用する手法などは大いにお勧めできます。
ところが、bwaves、milc、leslie3d、soplex、gemsFDTD、lbm、sphinx3などでは経過時間が殆ど短縮されていません。背景色はブルーです。これら「メモリ性能律速型アプリケーション」に区分されるアプリケーションについては、メモリクロック速度が圧倒的に支配的ですから、メモリクロック速度で選択を行い、CPUクロック速度は選択肢の中で最低のものでかまわないと思います。すなわち、メモリは1333GHzでCPUは2.66GHzの構成です。最も避けなければならない組合せは、CPUクロックが2.93GHzでメモリが1066MHzの組み合わせです。価格と消費電力が高い割りに投資に見合った性能が得られないことになります。
Nehalem Microarchitectureはメモリ速度については800MHz、1066MHz、1333MHzの3種類の中から選択できるので注意が必要です。今回のテストは1333MHzと最高クロック速度のメモリでのテストです。そこで次回はメモリクロック速度を1066MHzに変更してのテストを行いたいと考えています。「メモリ性能依存アプリケーション」のスループット性能はCPUクロック速度が変わっても変化しませんが、メモリ性能が変化すると支配的な影響を受けると考えられます。反対に「CPU性能依存アプリケーション」はメモリ性能の変化に影響を受け難いと考えられます。その様子が確認できれば、システム構築時の機器選定に有用な結果だと考えられます。
SPEC CFPのスループットのスコアは単位時間あたりの処理量を基準にします。そのため、ハイパースレッドが改善され高いスコアが得られるようになったNehalemでは、ハイパースレッドをオンに設定したテストが主流となっているようです。これは、HPC利用者の立場からは残念なことです。HPCでは絶対的な処理性能の高さも重要だからです。
しかし、SPEC CFPのPeak値の幾つかは、ハイパースレッドの効き方が微妙に少ない模様で、こらはハイパースレッドをオフに設定して性能測定されていました。テスト環境は上表と同じです。
ころらの基本的傾向は上表と同じです。「メモリ性能律速型アプリケーション」はCPUクロック速度を速くしても性能向上は少なく、さらに8スレッド投入では性能向上していません。
これに対して「CPU性能律速型アプリケーション」では、高いスループット性能向上が確認されています。
| SPEC CFP2006 Rates Peak (並行処理性能) | SPEC CFP2006 Peak (単体コア性能) | |||||||||||
| 製品 | 6026T | 6026T | 6026T | 2.66GHz と 2.93GHz での クロック 速度 向上率 |
2.80GHz と 2.93GHz での クロック 速度 向上率 |
2.66GHz と 2.80GHz での クロック 速度 向上率 |
6026T | 6026T | 6026T | 2.66GHz と 2.93GHz での クロック 速度 向上率 |
2.80GHz と 2.93GHz での クロック 速度 向上率 |
2.66GHz と 2.80GHz での クロック 速度 向上率 |
| CPU | Xeon | Xeon | Xeon | Xeon | Xeon | Xeon | ||||||
| 製造プロセス | 45nm | 45nm | 45nm | 45nm | 45nm | 45nm | ||||||
| CPU番号 | X5570 | X5560 | X5550 | X5570 | X5560 | X5550 | ||||||
| CPUクロック | 2.93GHz | 2.80GHz | 2.66GHz | 10 % | 4 % | 5 % | 2.93GHz | 2.80GHz | 2.66GHz | 10 % | 4 % | 5 % |
| チップセット | 5520 | 5520 | 5520 | 5520 | 5520 | 5520 | ||||||
| メモリ | DDR3 1333MHz 24GB |
DDR3 1333MHz 24GB |
DDR3 1333MHz 24GB |
DDR3 1333MHz 24GB |
DDR3 1333MHz 24GB |
DDR3 1333MHz 24GB |
||||||
| OS | Linux | Linux | Linux | Linux | Linux | Linux | ||||||
| コンパイラ | Intel11 | Intel11 | Intel11 | Intel11 | Intel11 | Intel11 | ||||||
| CPU 数 | 2 | 2 | 2 | 2.66GHz の 2.93GHz による 経過時間 短縮率 |
2.80GHz の 2.93GHz による 経過時間 短縮率 |
2.66GHz の 2.80GHz による 経過時間 短縮率 |
2 | 2 | 2 | 2.66GHz の 2.93GHz による 経過時間 短縮率 |
2.80GHz の 2.93GHz による 経過時間 短縮率 |
2.66GHz の 2.80GHz による 経過時間 短縮率 |
| コア数/CPU | 4 | 4 | 4 | 4 | 4 | 4 | ||||||
| 総コア数 | 8 | 8 | 8 | 8 | 8 | 8 | ||||||
| 投入ジョブ数 | 8 | 8 | 8 | 1 | 1 | 1 | ||||||
| 経過時間(秒) | ||||||||||||
| bwaves |
577 | 575 | 575 | 0 % | 0 % | 0 % | 139 | 140 | 150 | 7 % | 1 % | 7 % |
| gamess | 759 | 787 | 824 | 8 % | 4 % | 4 % | 722 | 754 | 783 | 8 % | 4 % | 4 % |
| milc | ||||||||||||
| zeusmp | ||||||||||||
| gromacs | ||||||||||||
| cactusADM | ||||||||||||
| leslie3d | ||||||||||||
| namd | ||||||||||||
| dealII | ||||||||||||
| soplex | ||||||||||||
| povray | ||||||||||||
| calculix | ||||||||||||
| GemsFDTD | 679 | 679 | 680 | 0 % | 0 % | 0 % | 154 | 156 | 158 | 3 % | 1 % | 1 % |
| tonto | ||||||||||||
| lbm | 823 | 822 | 822 | 0 % | 0 % | 0 % | 252 | 252 | 252 | 0 % | 0 % | 0 % |
| wrf | ||||||||||||
| sphinx3 | ||||||||||||
【SPEC CPU2006の公開データを資料として引用】
SPEC, SPECint and SPECfp are resistered trademarks of the Standard Performance Evaluation Corporation. For more information on this SPEC benchmarks see www.spe.org. SPEC and the benchmark name SPEC CPU2006 are registered trademarks of the Standard Performance Evaluation Corporation. Competitive benchmark results stated above reflect results published on www.spec.org as of April 03, 2009. The comparison presented above is based on the best performing 2-cpu servers currently shipping by Intel Corporation. For the latest SPEC CPU2006 benchmark results, visit http://www.spec.org/cpu2006/