HPC-ProServer DPeC410x
GPGPU対応のPCI Expressスロット拡張用の外付け筺体
最大16基のGPGPUをPCI Express Gen2 x16バスに搭載可能
最大8台のサーバと接続可能
Tesla M1060, Tesla M2050に対応
1400w x4 冗長化電源対応、冗長化冷却ファン対応
HIC (Host Interface Card) NVIDIA single-port HIC対応
HPCサーバ環境とのシステムインテグレーションサービスを実施
当日4時間の障害切り分けオンサイト保守を3年間無償提供
多くのGPGPU計算機で採用されている「Tesla 20xxシリーズ (Fermi)」は約500GFLOPSの倍精度浮動小数点理論演算性能を持つ高性能なGPGPUモジュールです。このGPGPUの性能を実際のHPC計算に活かすためには優れたGPGPU並列計算機の構築が必要です。
GPGPU並列計算機は普通のHPCクラスタよりも構造が複雑です。そのため高性能な計算機を実現するためには、ソフトウェアの最適化だけでなく、ハードウェア構成の最適化や実装密度の向上、信頼性の向上などがより強く求められます。
これらの要求を満たす製品が「HPC ProServer DPeC410x」 (以下DPeC410xと略、密度・高自由度GPGPU筺体) と、「HPC ProServer DPeC6100」 (以下DPeC6100と略、4-node HostServer筺体) です。この2製品を中心にシステムを構成すると、上記の要件を簡単に満たすことができます。
次の表は、GPGPU並列計算機の構築に求められる6種類の注意点を構造別にまとめたものです。参考として主観的な評価を書き込みました。お客様も独自に評価してみてください。
この評価を参照すると右端のシステムが最も優れていることがわかります。それがDPeC410xと、DPeC6100 を採用したGPGPU並列計算機です。
| GPGPU並列計算機 構築の注意点 |
GPGPU並列計算機 | |||||
| ワークステーションを利用 | ラックサーバ | 高密度筺体 (C410x C6100) | ||||
| マルチ ベンダー |
シングル ベンダー |
マルチ ベンダー |
シングル ベンダー |
マルチ ベンダー |
シングル ベンダー |
|
| 信頼性 |
△ | ○ | △ | ◎ | △ | ◎ |
| 機器の相性 | △ | ○ | △ | ◎ | △ | ◎ |
| 修理サポート | △ | ○ | △ | ◎ | △ | ◎ |
| 構成の自由度 | ○ | △ | △ | △ | ○ | ◎ |
| 実装密度 | △ | △ | ○ | ○ | ◎ | ◎ |
| コスト | ◎ | ○ | ○ | △ | ○ | △ |
このシステムで使われているDPeC410xという製品は、GPGPUの利用経験から得られたノウハウをフィードバックして開発された、GPGPU並列計算機専用の筺体です。この製品を利用するとGPGPU並列計算機に "高い構成の自由度" と "高い実装密度" が備わります。
アプリケーションをGPGPUに最適化する作業とは、GPGPUに特有のボトルネック対策をすることです。GPGPU内部の計算密度を向上させ、各デバイス間のデータ転送ボトルネックを減らすためのアルゴリズムの開発とプログラミングの工夫です。ボトルネックは次の箇所で主に発生します。
・ GPGPU内部のデータ転送ボトルネック
・ GPGPUとホスト機を接続するPCIeのボトルネック
・ 複数のGPGPU計算機のネットワーク接続によるボトルネック
・ GPGPU計算機とファイルサーバで発生するファイル転送速度ボトルネック
これらのボトルネックを解消する作業はソフトウェアの改良だけでは終了しません。ソフトウェアに対応したハードウェア構成の改良も必要です。DPeC410x はこの要求に応えるため、GPGPUとホストサーバとの間の接続を柔軟に変更できる機能を備えています。
GPGPUのボトルネックの調整はホスト機に接続するGPGPUモジュールの数を変化させることで実現できます。ホスト機にはCPU、メモリ、PCI Express、並列ネットワーク、ファイルサーバなどを一緒に接続しています。そのためホスト機に接続するGPGPUの数を変化させると、自動的にGPGPUに接続している周辺装置とのバンド幅が増減し、ボトルネックの調整になります。実際の性能はボトルネックに律速された結果ですから、この方法は実用的です。
DPeC410xは最大で16基の専用カセットに搭載したGPGPUカードを内蔵できます。また筺体には最大で8個の外部接続用のPCI Expressコネクタを搭載しています。DPeC410xの特徴は、これらの16基のGPGPUと8個のPCI Expressコネクタの接続パターンを電子的に自在に変更できることです。その組み合わせパターンは、両者を1対1接続で8対作ること、2対1接続で8対作ること、4対1接続で4対作ることの3種類のパターンが基本になります。 次の表は、1台のDPeC410xで実現出来る基本的な接続パターンと各デバイスの帯域幅です。
| DPeC410x の台数 |
GPGPU |
ホスト筺体 DPeC6100 の台数 |
内蔵 ホスト機 の台数 |
各ホスト機に 接続する GPGPU の数 |
GPGPUの 総理論性能 (TFLOPS) |
各ホスト毎の GPGPUの 理論性能 (TFLOPS) |
GPGPUが 占有する PCIe帯域幅 (GB/s) |
各InfiniBandに |
| 1 | 8 | 2 | 8 | 1 | 4 | 0.5 | 8 | 1 |
| 1 | 16 | 4 | 16 | 1 | 8 | 0.5 | 8 | 1 |
| 1 | 16 | 2 | 8 | 2 | 8 | 1 | 4 | 2 |
| 1 | 16 | 1 | 4 | 4 | 8 | 2 | 2 | 4 |
また、DPeC410xとDPe6100を利用したGPGPU並列計算機のシステム構成の変更は、電源が入った状態でも可能です。そのため、クラスタを複数のユーザで共同利用していても、ソフトウェアやアプリケーションの違いによる構成変更の手間を減らすことができます。
実践的なGPGPU並列計算機を構築する上で次に大切なことは、高い信頼性の達成と、優れた保守サービスの実現です。弊社のHPCクラスタで使用している基礎コンポーネントは組み合わされて使用すること前提として開発されされたシングルベンダー製の製品を使用しています。
各コンポーネントは相性問題を予防するため、開発段階から組み合わせテストを徹底的に行い、問題が解決されてから製品化されます。そのため導入初期から安定した動作が期待できます。さらに万一の障害時には、全国の物流センターから専用の修理部品が配達され、優れたサポート要員によって迅速・確実に修理のされます。
実際の構成例
| DPeC410x の台数 |
GPGPU |
DPeC6100 の台数 |
ホスト機 の台数 |
各ホストに 接続する GPGPU の数 |
GPGPUの 総理論 演算性能 (TFLOPS) |
各ホスト毎の GPGPUの 理論性能 (TFLOPS) |
GPGPUが 占有する PCIe帯域 (GB/s) |
各InfiniBandに |
| 1 | 8 | 2 | 8 | 1 | 4 | 0.5 | 8 | 1 |
このモデルの特徴は、GPGPUとホスト機が1対1接続され、PCI Express 2.0 x16が持つ8GB/sの転送帯域幅を、主メモリとGPGPUとの通信処理で占有できることです。 ところで、DPeC410xをよく見るとGPGPUを搭載するスロットがまだ8個も空いています。もし、主メモリとGPGPUとの間の通信速度に余裕がある場合は、この空きスロットにGPGPUを追加して搭載することで、演算性能を向上させることができます。 さらにそれでもPCI eの通信速度に余裕がある場合は、DPeC410xの内部接続パターンをソフト的に変更することで4基のGPGPUを1台のサーバに接続することができます。 しかし1台のサーバに接続するGPGPUの数を増やすと、サーバ上のPCI Expressの帯域幅が消費されます。すると、他のサーバとの間の通信処理に用いているInfiniBandの通信速度や、ファイルサーバとの通信速度、マスターサーバとの通信速度に影響が出てきます。 DPeC410xを用いると、上記のようにGPGPUとメモリ間の通信、計算サーバ間の通信、計算サーバと管理サーバとの通信などが利用できる帯域幅のバランスが変化します。その影響を実際に探りながら最適な構成を見つけることができます。これの作業を動的に行えることがDPeC410xの優れたところです。 このGPGPU並列計算システムは、管理環境として、マスターサーバ、ファイルサーバ、ログインサーバが搭載された計算機を持っています。このサーバはUPSと接続されさらに信頼性が高められています。 このシステムでは、InfiniBandを除く全ての機器はシングルベンダー化していて、一括オンサイト保守を行っています。障害箇所が判然としない場合でも徹底的なサポートが得られます。 |
| DPeC410x の台数 |
GPGPU |
DPeC6100 の台数 |
ホスト機 の台数 |
各ホストに 接続する GPGPU の数 |
GPGPUの 総理論性能 (TFLOPS) |
各ホスト毎の GPGPUの 理論性能 (TFLOPS) |
GPGPUが 占有する PCIe帯域幅 (GB/s) |
各InfiniBandに |
| 1 | 16 | 4 | 16 | 1 | 8 | 0.5 | 8 | 1 |
このモデルの特徴は、24Uラックに、前の構成例の2倍の機器を搭載した高密度実装にあります。 GPGPUとホスト機は1対1接続のため、PCI Expressの帯域幅に余裕が生まれやすく、他のサーバとの通信や管理サーバとの通信量が多いアプリケーションの処理に適したシステムです。 この場合も上で説明したような構成の自由度を利用できます。例えば、ホスト機の半分のノードは通常のプロセッサだけを用いたInfiniBand接続のPCクラスタとして利用し、他の半分は、1台のホスト機に2台のGPGPUを接続したGPGPU並列計算クラスタとして利用する、ヘテロジニアスな構成で運用することもできます。 このような変則的な構成に簡単に変更できるところがこのモデルのメリットです。ジョブスケジューラと組み合わせることで、より正確なスケジューリングを行うことができ、資源の有効利用が可能です。 |
| DPeC410x の台数 |
GPGPU |
DPeC6100 の台数 |
ホスト機 の台数 |
各ホストに 接続する GPGPU の数 |
GPGPUの 総理論性能 (TFLOPS) |
各ホスト毎の GPGPUの 理論性能 (TFLOPS) |
GPGPUが 占有する PCIe帯域幅 (GB/s) |
各InfiniBandに |
| 1 | 16 | 2 | 8 | 2 | 8 | 1 | 4 | 2 |
このモデルの特徴は、1台のホスト機に2台のGPGPUを接続し、コストパフォーマンスの向上と消費電力の低減を実現していることです。 ラックにはまだ十分なスペースがあります。ソフトウェアの挙動を見きわめたうえで、GPGPU、あるははXeonサーバを追加することがでかます。 |
| DPeC410x の台数 |
GPGPU |
DPeC6100 の台数 |
ホスト機 の台数 |
各ホストに 接続する GPGPU の数 |
GPGPUの 総理論性能 (TFLOPS) |
各ホスト毎の GPGPUの 理論性能 (TFLOPS) |
GPGPUが 占有する PCIe帯域幅 (GB/s) |
各InfiniBandに |
| 1 | 16 | 1 | 4 | 4 | 8 | 2 | 2 | 4 |
このモデルの特徴は、1台のホスト機に4台のGPGPUを接続し、最高のコストパフォーマンスの向上と消費電力の低減を実現していることです。 サーバ機とGPGPUが独立しているため、このような実装をしても、電源問題や冷却問題を気にすることなく利用できます。 ラックにはまだ十分なスペースがあります。ソフトウェアの挙動を見きわめたうえで、GPGPU、あるははXeonサーバを追加することができます。 |
高密度実装GPGPUクラスタに必須の
マスターサーバ、RAID、補助機器類などと
総合技術支援パッケージHPC-ProSupport
実際の計算機システムは演算部だけで構成されているわけではありません。それ以外にも次のような機器類やサービスが必要です。これらの要素が有機的に組み合わされて初めて実用的な計算機システムが完成します。
・ システム全体の管理を行うマスターサーバ
・ OSや開発環境を含む各種ソフトウェア類
・ 計算機資源とジョブの自動管理システム
・ RAIDストレージ
・ ネットワークスイッチ、UPS、KVM、EIAラックなどの補助機器類
・ システムインテグレーションサービス
・ 修理サービス、技術運用サービス
マスターサーバは計算機システムの中枢です。その主な役割をご紹介します。
・ 複数の計算機を統合し仮想的な一台の計算機として機能させる
・ 利用者が相互に干渉しないようにジョブを仮想化する
・ 複数のジョブを決められたルールに従い実行するように調整する
・ 全体のネットワーク情報、ユーザ情報、ライセンス情報、リソース情報などを管理する
・ 外部と内部のネットワークを切り離す
・ 高速ネットワークの実現
・ ストレージシステムを管理する
・ データのバックアップを作成すする
・ 障害を検知しそれを通知する
マスターサーバの働きによって、バラバラの計算機では実現できない使いやすい計算機環境を実現します。しかしマスターサーバは重要な働きをしているにもかかわらず、システムの背後で動作しているため、一般的な計算機ユーザの方はマスターサーバの役割を意識されることは少ないようです。しかし、使いやすいシステムを実現するためには必要欠くべからざるシステムです。このマスターサーバの重要さはGPGPU計算機システムでも変わりはありません。それどころか、システムの構成が複雑になるGPGPU並列計算機の方がジョブがより複雑な動作をするため、マスターサーバの役割はより重要になります。
RAIDストレージはGPGPU計算機システムにとっては重要な装置です。GPGPUは1基でも0.5TFLOPSもの演算性能を持っています。これは通常のプロセッサが持つ0.05TFLOPS前後の性能より約10倍も高速です。GPGPUクラスタはこの演算装置を複数集積させているため演算性能はさらに大きくなります。そのためアプリケーションの設計段階でファイルの入出力を抑える工夫を行ったとしても相当大きなファイル入出力性能が求められると考えられます。もしストレージの性能が低いとファイル入出力性能が新たなボトルネックとなる可能性があります。それを解消するためには事前のシステム設計が重要です。さらに高速なストレージシステムの搭載も必要です。
システムに搭載するRAIDシステムは、複数の高速な6Gbps SASディスクをRIAD6化し、さらにマスターサーバとの接続にも高速な6Gbps SAS接続とPCIe2.0 x8スロットを使用することで高い読み書き性能を実現しています。またマスターサーバと各ホスト機の接続は標準ではGbEを使用していますが、ファイル入出力によるボトルネックが懸念される場合はより高速な10GbEにアップグレードすることができます。
クラスタシステムを構成するためにはネットワークスイッチや無停電電源装置、KVM装置、EIAラックなどの補助機器類が必要不可欠です。これらの補助機器類も信頼性、相互接続性、一元的保守、拡張性、耐震性など検討しなければならない要素が沢山あります。
本システムはネットワークスイッチや無停電電源装置、KVM装置、24U EIAラックについても同一メーカーのシリーズ製品で統一しています。これらの製品は組み合わせて使用することを前提として開発されています。そのため徹底した相互接続での動作検証が行われています。その結果システムとして組み合わせた場合でも安定した動作が実現されます。さらに包括的なサポートが行われるため、運用中に発生したシステムレベルの障害についても包括的なサポートサービスが実施され迅速に復旧が実現します。
弊社は、HPC ProSupportと呼ばれる総合的な技術支援を実施しています。このサービスは、システムの構想から始まり、システムの構築、導入支援、その後の長期にわたる運用サポートまでカバーする手厚いサービスが特徴です。このサービスによってお客様は、GPGPU計算機の構築と運用の過程で必要になる専門的な諸作業から解放され、本来の目的である計算機の利用に専念することができます。
本システムで使用しているGPGPUを含めた全ての機器類はメーカーが開発段階から徹底した相互接続テストを行い、安定動作が確認されてから製品化されています。さらにシステム全体をカバーする包括的なサポート体制も整えられています。そのため、システムは導入初期から安定動作し、その後も長期間にわたる安定運用を達成できます。
HPC計算機は性能向上を目指して階層化と並列化の度合いを高めています。アプリケーションもそれに対応して階層的な並列化がすすめられています。ところが、階層的な並列化は膨大な計算要素の調和が大切です。各階層が期待される性能を確実に発揮できる必要があります。もし一箇所でも性能が通常よりも遅いと、それがシステム全体の速度を大幅に低下させることになります。
このような問題を未然に防ぎ、アプリケーションの性能を最大限に発揮させるためには、ハードウェアの最適化とともに、ベストコンディションに維持しつつける保守技術が重要になります。 HPC-ProSupportはこのような専用機化するHPC計算機のシステムインテグレーション、技術支援、保守サポートに的を絞ったサービスです。