世界のスーパーコンピュータとそれを動かす人々


11月 22, 2021

SPEC、ヘテロ・システム用のSPEChpc 2021 Suiteを発表

HPCwire Japan

John Russell

SPEC(Standard Performance Evaluation Company)は本日、「1つまたは複数のノードにまたがる強力な計算機の並列性能」を測定することを目的とした、最新のベンチマークスイート「SPEChpc 2021」を発表した。1988年に設立されたSPECは、数多くのベンチマークをサポートしており、その中でもCPUの性能を評価するSPEC CPU 2017はよく知られている。複数のアクセラレータを搭載したヘテロジニアス・アーキテクチャの台頭を考えると、SPEChpcベンチマークの追加はタイムリーである。

HPCwireのプリ・ブリーフィングでMat Colgroveが語ったところによると、この新しいベンチマークスイートは約4年前から構想されていたという。Colgroveは、SPECハイパフォーマンスグループ(HPG)のリーダーであり、Nvidia社の開発/技術エンジニアでもある。

「私たちのグループの使命は、ハイパフォーマンス・コンピューティングを見ることであり、これまでに様々なベンチマークを発表してきました。主にプログラミングモデルに焦点を当てています。現在も使用しているベンチマークは、SPEC MPI 2007とSPEC OpenMP 2012です。」とColgroveは、アクセラレータ、ホストCPU、ホストとアクセラレータ間のメモリ転送、サポートライブラリやドライバ、コンパイラなどの性能をテストするベンチマーク「SPEC ACCEL」の開発に参加した。

新しいSPEChpcシリーズは、ワークロードをアクセラレータにオフロードしたときのパフォーマンスを対象としている。

「1つのベンチマークを、複数のモデルを用いてハイブリッドに行うために、これらの要素をすべて組み合わせました。これにより、異なる視点を得ることができます。同じコードベースを使って、異なるヘテロジニアスおよびホモジニアスのアーキテクチャを検討することができます。並列(プログラミング)モデルは変わっても、アルゴリズム的には変わりません。このアイデアは、さまざまなベンダーが利用できるポータブルなモデルを用意し、異なるアーキテクチャ間で公正な比較を行うことを目的としています。」とColgroveは述べている。

ベンチマークの価値は、その詳細を理解することにある。SPEChpc 2021の構成要素は、以下の2つの図のとおり。

 

Colgroveは、SPEChpcが「強力なスケーリング」ベンチマークであることを強調している。「つまり、固定サイズのワークロードがあるということです。スケーリングの問題は、1つまたは2つのノードから、数百または数千のノードまでの範囲をカバーしたいということです。しかし、1つのワークロードではそれができません。メモリの制約が大きくなりすぎてしまうからです。そこで、4つのワークロードに分けることにしました。」

上の図にあるように、SPEChpcには4つのスイートがあり、それぞれ9つ(Tiny/Small)から6つ(Medium/Large)のベンチマークで構成されている。MediumおよびLargeスイートに含まれない3つのベンチマークには、MPI_AllReduceなど、大規模なベンチマークには不向きな構成が含まれている。SPECによれば、ベンチマークの数を減らすことで、大規模なシステムでスイートを実行する際のコストを削減することができる。

SPECによると、「ベンチマークのソースコードは各スイート間で共通ですが、各スイートのワークロードサイズと必要メモリは異なります。各スイートは、様々なノード数およびコア数のクラスタを対象としています。ユーザは、自身のシステムに適したベンチマークを決定する必要があります。SPEChpc は、各スイートで使用可能な最小または最大のランク数に関する要件を設けていませんが、 SPEChpc は固定サイズの作業負荷で強力にスケーリングされているため、より多くのランクが使用されるとスケーリングは低下します。場合によっては、使用するランク数が多すぎるとベンチマークが失敗することがあります。以下の各スイートの説明は、純粋な MPI 実行を使用した場合に SPEC/HPG がテストしたランク数を示しています。ノードレベルの並列モデル(OpenACCまたはOpenMP)を追加で使用した場合、スケーリングとランク数は異なる可能性があります。」

新しいベンチマーク「SPEChpc 2021」が広く使われるようになるには、まだ時間がかかりそうだ。SPECベンチマークは、主にベンダーが自社のシステム性能を標準化して紹介するためのツールですが、ユーザが社内のシステムを評価するために実行することもできる。今回の発表内容を抜粋する。

「SPEChpc 2021 Benchmark Suitesを使えば、開発者や研究者は、様々なプログラミングモデルを評価して、どのモデルがアプリケーションやシステム構成に最適かを評価することができます。また、ハードウェアベンダーやソフトウェアベンダーは、自社のソリューションのストレステストに利用することができます。また、コンパイラベンダーは、一般的なコードのパフォーマンスや、ディレクティブベースのプログラミングモデルのサポートを改善するために利用できます。また、データセンター事業者をはじめとするエンドユーザーは、この新しいスイートを利用して調達の意思決定を行うことができます。」

SPECハイパフォーマンスグループ(HPG)の責任者のRon Liebermanは、「『SPEC MPI 2007』ベンチマーク、『SPEC OMP 2012』ベンチマーク、『SPEC ACCEL』ベンチマークスイートの開発経験を基に、SPECは、急速に進化するHPC市場に対応した新しいベンチマークスイート群を設計しました。SPEChpc 2021 Benchmark Suitesの高い移植性に加え、厳格な結果審査プロセスと豊富なSPEC結果リポジトリにより、最新のHPCプラットフォームを評価・検討するためのベンダーニュートラルな性能比較を提供することができます。」と述べている。

大まかに言えば、SPECはテストスイートを企業や組織にライセンスして使用させている。準拠した(カスタマイズしない)試験を実施した企業は、その結果を自由に公開することができる。SPECは、ベンチマークを実施している組織に対し、ウェブサイトに掲載されているリストに掲載することを奨励しているが、これは必須ではない。

今日現在、76のSPEChpcベンチマークが掲載されている。これらは、様々なテストスイート(tiny、small、medium、large)に分散している。ベンダーやユーザが自分のシステムを紹介することで、すぐに追加されることを期待している。

Colgroveは、スコアを見る際には注意が必要だと述べている。「私たちは1つの指標となる数字に集約していますが、その数字を動かしているものはすぐにはわからないかもしれません。私は世界記録の数字を持っていますが、そのテストを構成するものは何でしょうか。何台のノードを使ったのか。例えば、ネットでのトップタイ記録はTACC(The Texas Advanced Computing Center、3件)ですが、彼らは78件まで記録しています。これはすごい数字ですが、彼らは32ノード、64ランクで20個のopenMPスレッドも使っています。これは大きなシステムです。私は人々に、詳細を見て、何を比較したいのかをよく理解することを勧めています。もっと小さなシステムを見てみたいと思いませんか?もし私が購買担当者だったら、スケールアップやスケールアウトが必要かどうかを理解したいと思います。」

実際のSPEChpcスコアは、TU-Dresden Taurusシステムであるリファレンスシステムに対するテスト対象システムの性能の比率です。SPEChpcのスコアは以下のように計算される(SPECのウェブサイトより)。

1.指定されたスイート(Tiny、Small、Medium、Large)について、各ベンチマーク実行の経過時間(秒)を報告する。
2.基準システム(TU-Dresden’s Taurus System)の時間を、対応する測定時間で割った比率を報告する。
3.ベンチマークごとに、ベースとピークに分けて、これらの比率の中央値または下側中央値を報告する。
4.ベース比はベース比の中央値の幾何平均、ピーク比はピーク比の中央値の幾何平均である。

現在、さまざまなシステムのベンチマークが表示されており、Lenovoが大半を提出しているが、TACC(Frontera)やOak Ridge(Summit)のベンチマークもある。この結果は、SPEChpcのスコアが初めて掲載されたものであることを念頭に置き、直接見るのが良いだろう。

「これが影響を与えることを本当に願っています。今回は、大規模なハイブリッドベンチマークとしては初めての大きな試みです。将来的には、この方向で開発を続け、フィードバックを得て、より多くの人に参加してもらいたいと考えています。」とColgroveは述べている。

SPEChpc 2021の結果へのリンク、https://www.spec.org/hpc2021/results/hpc2021.html

SPEChpc 2021 overviewへのリンク、https://www.spec.org/hpc2021/Docs/overview.html#Q20

SPEChpc 2021のルールへのリンク、https://www.spec.org/hpc2021/Docs/runrules.html