NEC SX-Aurora TSUBASA

デンバーで開催されたSC'17のNECブースに、8基のベクトルエンジンを搭載したNEC SX-Aurora TSUBASA A300-8サーバが展示された。

NEC SX-Aurora TSUBASAは、 NEC SXアーキテクチャファミリーのベクトルプロセッサです[1] [2]以前のSXスーパーコンピュータとは異なり、SX-Aurora TSUBASAはPCIeカードとして提供され、NECでは「ベクトルエンジン」(VE)と呼んでいます。[2] 8枚のVEカードをベクトルホスト(VH)に挿入できます。VHは通常、Linuxオペレーティングシステムを実行するx86-64サーバーです。[2]この製品は2017年10月25日のプレスリリースで発表され、NECは2018年2月に販売を開始しました。[3]この製品はSX-ACEの後継です

ハードウェア

SX-Aurora TSUBASAは、地球シミュレータのベースとなるベクトル型コンピュータシステムであるNEC SXシリーズおよびSUPER-UXの後継機種です。ハードウェアは、PCI Express (PCIe)インターコネクトを介して接続されたベクトルエンジン(VE)を搭載したx86 Linuxホストで構成されています[4]

高いメモリ帯域幅(0.75~1.2 TB/秒)は、PCIeカードのフォームファクタに実装されたシリコンインターポーザ上の8つのコアと6つのHBM2メモリモジュールから得られます。 [5] VEのオペレーティングシステム機能はVHにオフロードされ、主にVEOSを実行するユーザー空間デーモンによって処理されます。[6]

クロック周波数(1.4GHzまたは1.6GHz)に応じて、各VE CPUは8コアを搭載し、倍精度演算で2.15TFLOPSまたは2.45TFLOPSのピーク性能を発揮します このプロセッサは、シリコンインターポーザー上に6つのHBM2モジュールを実装した世界初の製品で、合計24GBまたは48GBの高帯域幅メモリを搭載しています。このプロセッサは、x86_64サーバーであるVector Host(VH)によってホストされる、標準的なフルレングス、フルハイト、ダブル幅のPCIeカードのフォームファクタに統合されています。このサーバーは最大8つのVEをホストでき、VHは任意のノード数に拡張可能です。[1] [7] [2]

製品リリース

バージョン2ベクトルエンジン[8]

SKU20A20B
クロック速度(GHz)1.61.6
コア数108
コアピークパフォーマンス

(倍精度GFLOPS)

307307
コアピークパフォーマンス

(単精度GFLOPS)

614614
CPUピークパフォーマンス

(倍精度TFLOPS)

3.072.45
CPUピークパフォーマンス

(単精度TFLOPS)

6.144.91
メモリ帯域幅(TB/秒)1.531.53
メモリ容量(GB)4848

バージョン1ベクトルエンジン

ベクトルエンジンのバージョン1.0は16nm FinFETプロセス(TSMC製)で製造され、3つのSKUでリリースされました(後続のバージョンでは末尾にEが追加されます)。[9]

SKU10A10B10C10AE10BE10CE
クロック速度(GHz)1.61.41.41.5841.4081.400
コア数888888
コアピークパフォーマンス

(倍精度GFLOPS)

307.2268.8268.8304270268
コアピークパフォーマンス

(単精度GFLOPS)

537608540537
CPUピークパフォーマンス

(倍精度TFLOPS)

2.452.152.152.432.162.15
CPUピークパフォーマンス

(単精度TFLOPS)

4.94.34.34.864.324.30
メモリ帯域幅(TB/秒)1.21.20.751.351.351.00
メモリ容量(GB)484824484824

機能単位

8つのSX-Auroraコアはそれぞれ64個の論理ベクトルレジスタを備えています。[10]これらは256 x 64ビット長で、パイプラインと32倍並列SIMDユニットの組み合わせとして実装されています。レジスタは、並列実行可能な3つのFMA浮動小数点乗算・加算ユニット、固定小数点演算を処理する2つのALU算術論理ユニット、そして除算・平方根パイプに接続されています。[10] FMAユニットとその32倍SIMD並列性のみを考慮すると、ベクトルコアは1サイクルあたり192回の倍精度演算が可能です。[10] 2つの単精度値がベクトルレジスタの1つの倍精度スロットにロードされる「パック」ベクトル演算では、ベクトルユニットは倍精度と比較して1クロックサイクルあたり2倍の演算を実行します。

スカラー プロセッシング ユニット (SPU) は、各コア上の非ベクトル命令を処理します。

メモリとキャッシュ

SX-Aurora TSUBASAプロセッサのメモリは、チップ・オン・ウェーハ・オン・サブストレート技術を用いてCPUと同一パッケージに実装された6つの第2世代HBM2高帯域幅メモリモジュールで構成されています。プロセッサモデルに応じて、HBM2モジュールは4ダイまたは8ダイの3Dモジュールで、それぞれ4GBまたは8GBの容量を備えています。したがって、SX-Aurora CPUは24GBまたは48GBのHBM2メモリを搭載しています。大容量HBM2モジュールを搭載したモデルは、1.2TB/sのメモリ帯域幅を備えています。[11]

ベクトルエンジンの各コアは、16MBの「ラストレベルキャッシュ」(LLC)を共有します。これは、ベクトルレジスタとSPUのL2キャッシュに直接接続されたライトバックキャッシュです。LLCのキャッシュラインサイズは128バイトです。LLCにおけるデータ保持の優先順位は、ある程度ソフトウェアで制御可能であり、プログラマはどの変数または配列をキャッシュに保持するかを指定できます。これは、NEC SX-ACEのAdvanced Data Buffer(ADB)に匹敵する機能です。

プラットフォーム

NECは現在、SX-Aurora TSUBASAベクトルエンジンを4つのプラットフォームに統合して販売している。[12] [9]

  • A111-1: タイプ10BのVEカード1枚を搭載したタワーPC
  • A101-1: タイプ10CEのVEカード1枚を搭載したタワーPC
  • A311-4: 最大4枚のBEタイプのVEカードを搭載したデュアルソケット1U 19インチラックマウント型Xeonスケーラブルサーバー
  • A311-8: 最大8枚のBEタイプのVEカードを搭載したデュアルソケット4U 19インチラックマウント型Xeonスケーラブルサーバー
  • A511-64:64台のAE型VEを搭載した19インチラック。スーパーコンピュータとして明示的に販売されている唯一の構成です。

VHノード内では、VEはPCIeを介して相互通信できます。SX-Auroraで構築された大規模並列システムでは、相互接続としてPeerDirect構成のInfinibandを使用します。

NEC は、5 つのプラットフォームに統合された SX-Aurora TSUBASA ベクトル エンジンも販売していました。

  • A100-1: タイプ 10C の VE カード 1 枚を搭載したタワー PC。
  • A300-2: タイプ 10B または 10C の VE カード最大 2 枚を搭載したシングル ソケット 1U ラックマウント型 Skylake サーバー。
  • A300-4: タイプ 10B または 10C の VE カード最大 4 枚を搭載したデュアル ソケット 1U ラックマウント型 Skylake サーバー。
  • A300-8: 最大 8 枚のタイプ 10B または 10C の VE カードを搭載したデュアル ソケット 4U ラックマウント可能な Skylake サーバー。
  • A500-64: Intel Xeon Silver 4100ファミリーまたはIntel Xeon Gold 6100ファミリーのCPUと、タイプ10Aまたは10BのVEを32個、48個、または64個搭載したラック。[13]

A500 シリーズのみ水冷も採用しており、それ以外のタイプはすべて空冷式です。

ソフトウェア

オペレーティング·システム

ベクターエンジン(VE)のオペレーティングシステムは「VEOS」と呼ばれ、ホストシステムであるベクターホスト(VH)に完全にオフロードされています。[14] VEOSはカーネルモジュールとユーザー空間デーモンで構成されており、次の機能を備えています。

  • VEプロセスとVE上のスケジュールを管理する
  • VEプロセスの仮想メモリアドレス空間を管理する
  • VE DMAエンジンの助けを借りてVHとVEメモリ間の転送を処理する
  • VEプロセスの割り込みと例外、およびシステムコールを処理する。[15]

VEOSはVE上でマルチタスクをサポートし、ほぼすべてのLinuxシステムコールがVE libcでサポートされています。[15]オペレーティングシステムサービスをVHにオフロードすると、レイテンシが増加する代わりに、OSジッターがVEからシフトされます。[15]すべてのVEオペレーティングシステム関連パッケージは、 GNU General Public Licenseの下でライセンスされており、 github.com/veos-sxarr-necで公開されています

ソフトウェア開発

NECは開発者および顧客向けにソフトウェア開発キットを提供しています。SDKには独自の製品が含まれており、NECからご購入いただく必要があります。SDKには以下のものが含まれています。

  • 自動ベクトル化、自動並列化、OpenMPをサポートするC、C++、Fortranコンパイラ。[16]
  • パフォーマンス最適化ツール:ftraceviewerとveperf。[17]
  • VEに最適化された数値ライブラリ:BLAS、SBLAS、LAPACK、SCALAPACK、ASL、Heterosolver。[18]

NEC MPIも独自の実装であり、MPI-3.1標準仕様に準拠しています。[19]

VEオフロードC-APIを使用することで、VEを特定のホストカーネル関数のアクセラレータとして使用するハイブリッドプログラムを作成できます。[20] VEオフロードはある程度OpenCLやCUDAに匹敵しますが、よりシンプルなAPIを提供し、カーネルを通常のC、C++、またはFortranで開発して、VE上のほぼすべてのシステムコールを使用できるようにします。[引用が必要] VEOへのPythonバインディングはgithub.com/SX-Aurora/py-veoで入手できます

数学関数の比較

NLC 1MKLCUDA
線形代数密行列
スパース行列
関数変換フーリエ
実数対実数(DCT、…)
ラプラス、ウェーブレット、…
統計乱数ジェネレータ✓ MPIなし✓ MPIなし
多変量、回帰、…
他のソート
特殊機能
積分、微分、…
ステンシルコード
ディープラーニング✗(予定)

1 NEC 数値計算ライブラリコレクションは、数値シミュレーションプログラムの開発をサポートする数学ライブラリのコレクションです。

参考文献

  1. ^ ab 「NEC SX-Aurora TSUBASA - ベクトルエンジン」www.nec.com . 2018年3月20日閲覧
  2. ^ abcd Morgan, Timothy Prickett (2017年10月27日). 「ベクトル型スーパーコンピューティングは復活できるか?」The Next Platform .
  3. ^ 「NEC、ハイエンドHPC新製品「SX-Aurora TSUBASA」を発売」NEC . 2018年3月21日閲覧。
  4. ^ 今井輝之(2019)、ゲロフィ・バラズ、石川裕、リーゼン・ロルフ、ウィスニエフスキー・ロバート・W(編)、NEC地球シミュレータとSX-Aurora TSUBASA、スーパーコンピュータと高性能コンピューティングのためのオペレーティングシステム、高性能コンピューティングシリーズ、第1巻、シンガポール:シュプリンガー、pp.  139– 160、doi:10.1007/978-981-13-6624-6_9、ISBN 978-981-13-6624-6S2CID  204811906
  5. ^ Morgan, Timothy Prickett (2017年11月22日). 「NECのAuroraベクトルエンジンの詳細」The Next Platform . 2020年7月2日閲覧
  6. ^ Focht, Erich. 「SX-Aurora TSUBASAベクトルエンジンの最初のステップ」sx-aurora.github.io . 2020年7月2日閲覧
  7. ^ SX-Aurora TSUBASA パンフレット
  8. ^ 「NECベクトルエンジンモデル」www.nec.com . 2020年9月15日閲覧
  9. ^ ab "SX-Aurora TSUBASA" (PDF) . NEC株式会社. 2020年2月.
  10. ^ abc 「NEC SX-Aurora TSUBASAアーキテクチャ」www.nec.com . 2018年3月20日閲覧
  11. ^ “SX-Aurora - マイクロアーキテクチャ - NEC - WikiChip”. en.wikichip.org . 2020年7月2日閲覧
  12. ^ 「NEC SX-Aurora TSUBASA」.
  13. ^ 「NEC SX-Aurora TSUBASA A500-64」. www.nec.com .
  14. ^ 「NEC SX Aurora TSUBASA — VSC ドキュメント 1.0 ドキュメント」。vlaams -supercomputing -centrum-vscdocumentation.readthedocs-hosted.com . 2020年7月2日閲覧。
  15. ^ abc 「NECの最新ベクトルプロセッサ、SX-Auroraを考察」WikiChip Fuse . 2018年12月9日. 2020年8月27日閲覧
  16. ^ 「NEC SX Aurora TSUBASA — VSC ドキュメント 1.0 ドキュメント」。vlaams -supercomputing -centrum-vscdocumentation.readthedocs-hosted.com . 2020年8月27日閲覧
  17. ^ 「NEC SX-Aurora TSUBASA ドキュメント」.
  18. ^ “NEC SX-Aurora TSUBASA ベクトルシステム”. Rechenzentrum der CAU 2020年8月27日に取得
  19. ^ 「NEC MPI ユーザーズガイド」。
  20. ^ “SX-Aurora/veoffload”. GitHub . 2018年3月21日閲覧
  • NEC SX-Aurora TSUBASA
  • SX-Aurora Vector Engine に関するニュースと記事。
  • NECオーロラフォーラム
  • SX-Aurora TSUBASA用VEOS
  • SX-Aurora: ツールとプロジェクトのコレクション
「https://en.wikipedia.org/w/index.php?title=NEC_SX-Aurora_TSUBASA&oldid=1304741735」より取得