お問い合わせ | 導入事例 | HPC計算機 | 管理サーバ/ファイルサーバ | オプション | OS/開発環境 | アプリ | システム構築 | サポート | FAQ | ベンチ | 技術情報 | 購入案内

HPC計算機導入事例

ファイルサーバ導入事例 (抜粋)

Gaussian導入事例 (抜粋)

化学系メーカー様のご導入事例【導入事例】

はじめに

お客様は化学系メーカの方で、高性能なHPC計算機の導入により、下記のような課題の実現をご要望されておられました。

お客様のご要望

・ 数百万個の化合物についてのスクリーニングシミュレーションを数週間で終了させる
・ 化合物のドッキングシミュレーションを行う
・ タンパクと低分子複合体に対するGAMESSのFMO計算を行う
・ 上記複合体 + 水の系の数nsのAMBERシミュレーションを行う

計算機インテグレーション上の検討課題

お客様のご要望を、具体的な要件に展開すると以下のようになります。

・ スクリーニングプログラムは並列化されていないので、計算機はシリアルなジョブを大量に処理する能力が必要
・ 1処理当り20〜30秒程の計算を数百万回実行し、1つの計算結果も欠けることなく、正常に実行させることが必要
・ AMBERを用いた並列計算においてスケーラビリティーを確保する必要がある
・ 大量に出力される計算結果を安全に蓄積しておく仕組みが必要
・ Windows PCで行われるプリ/ポスト処理との連携を考慮する必要がある

弊社からのご提案

検討課題を整理し、以下のような考えで計算機をご提案

スクリーニング処理での大量ジョブ対策を考慮したシステム提案

○ スクリーニング処理で発生する大量のジョブを同時並行で大量処理するには、スループットに優れた演算性能のCPUが必要。
・ スループット性能が高く、コストパフォーマンスに優れたQuad-Core Xeon 8コア搭載の計算機をクラスタ化してご提案。
・ シリアルジョブを同時並行で動作させる場合には、各プロセスで使うメモリ量の総量より大きなメモリを搭載した計算機でなければメモリがスワップアウトを起こす危険性があるため、この点を考慮した余裕のあるメモリ量を搭載した計算機をご提案。

○ 数百万回のスクリーニング処理では小さいファイルの大量入出力があるので、それに対応できるファイルサーバーが必要。
・ ファイルシステムに対するランダムアクセス発生時でも性能が劣化しにくいRAID10構成のファイルサーバをご提案。
・ ランダムアクセスに対するレスポンスを高めるディスクキャッシュ機能を強化するため大容量の主メモリ搭載をご提案。

○ 数百万ジョブを安定して処理するためには、高い信頼性のジョブ管理ソフトが必須。
・ 少ない数のジョブ処理では顕在化しないジョブ管理ソフトの性能差が、数百万ものジョブ処理では極端に現れます。もし処理性能に劣るジョブ管理ソフトを選択すると深刻なボトルネックが起きます。そこで、ゲノム検索やEDAなどの分野で数百万から数千万ジョブを実行し、安定した動作実績を持つジョブ管理ソフトであるPlatform社製の「LSF」をご提案。
・ また、このスクリーニングプログラムはGUI上に「LSF」へのインターフェースを持つため、「LSF」はシステム構築でも好都合。

GAMESS FMO計算を考慮したシステム提案

GAMESS FMO計算については、InfiniBandなどで通信性能を確保するよりはむしろ、Gigabit Ethernetベースのシステムを選択することで通信デバイスのコストを抑え、その費用をコアの数量確保に向ける方が性能向上に効果があると、ご提案しました。

AMBERのシミュレーションを考慮したシステム提案

AMBERのシミュレーションについては、可能であればInfiniBandを導入して並列処理のスケーラビリティーを向上させることが研究成果に大きく寄与すると思われます。しかし、InfiniBandは導入コストが大きいため、トレードオフとして導入できるコア数が圧迫され、そのデメリットの方が大きなります。そのためこのシステムではInfiniBandの導入を見送ることをご提案しました。

堅牢なファイルサーバの構築

大量に出力される計算結果を安全に保管し、高速かつ容易に使えるファイルサーバシステムの設計が必要です。そこで、2台の、同容量のストレージを持ったファイルサーバでシステムを構成し、一方をメインサーバ、他方をバックアップサーバーとし、定期的にバックアップを取得する構成をご提案しました。

Windows PCのプリポスト処理との連携ではSambaを導入

Windows PCで行われるプリポスト処理との連携についてはSambaを導入し、WindowsからユーザのホームディレクトリをLinuxユーザーアカウントでアクセスできるシステムを構築することをご提案しました。

受注

お客様と打ち合わせの機会をいただき、弊社はお客様に以上のようなご提案を行いました。幸いにも、弊社のご提案に対して、お客様からは一定のご評価をいただき、システムを受注させていただきました。

システム設計での技術的なポイント

主要目的は大量のスクリーニング処理であり、コア数を多くすることが肝要と考えた

本システムでの主要処理は、数百万個の化合物に対するスクリーニング処理です。そのためには、スループットに優れたシステムが必要です。そこで、CPUクロックを多少落としたとしても、コア数を極力多く搭載することが主目的に沿うと考え、そのような構成のシステムを提案しました。

搭載するメモリ容量の適切なサイズに注意

並列化されていないスクリーニング計算のスループットを高めるためには、搭載コア数分だけジョブを平行して複数投入する利用方法が主になります。この場合はシステムに搭載するメモリの容量に一考を要します。同じアプリケーションを用いていても、インプットファイルの内容によって各プロセスが必要とするメモリ使用量が大きく異なる場合があります。このようにメモリ使用量がプロセスごとに不均一なシミュレーションでは、搭載するメモリ量を予想される最大値に見積もって搭載しておく配慮が肝要です。これは数年前、ゲノム検索用のシステムが多数導入されていた頃にも同様の問題が潜在的にありました。しかし、当時の計算機は1ノードあたりのコア数が1〜2個程度でしたから、各ノードで使用されるメモリ量の不均一さが大きな問題として顕在化することは少なかった事情があります。ところが現在の計算機は、各ノードに8コアも搭載されており、8個のジョブが同時投入されます。そのため、このような問題が顕在化する可能性が高くなると考えました。そこで搭載するメモリ容量に注意し、充分な容量のメモリを搭載するようにしました。

なお、本システムの設計では、メモリ使用量の不均一性の問題をハードウェア容量でカバーする解決法を採用しました。これは、処理速度を犠牲しないメリットを持つ方法です。これに対して他の解決方法として、ジョブ管理ソフトLSFを適切に設定することでプロセスのメモリ使用量を制限し、搭載しているメモリ量の範囲内で安全にジョブを実行させる方法もあります。ただ、この方法では計算を規制する場合があり、スループットを低下させてしまう可能性があります。ただし将来、ジョブがさらに大きくなり、より多くのメモリ容量が必要になった場合には、LSFの設定をソフト的に変更するだけで対処できます。現状ではこれは利用していませんが、将来必要になれば設定変更で利用することができます。

数百万個のジョブ投入に耐えられる優れたジョブ管理ソフトLSFの採用

大量のジョブを処理する場合にはジョブ管理ソフトの処理能力がシステムのスループットを左右します。このジョブ管理ソフトの処理能力の違いは、その実装の違いで引き起こされる本質的な差です。あるタイプの実装を採用するジョブ管理ソフトでは、各ノードのCPU、メモリ、HDDなどの監視とジョブのスケジューリングに、多くのCPUリソースとネットワークトラフィックを消費することがわかっています。そのため、クラスタが小さく投入ジョブ数も少ない場合には動作は順調です。ところが、クラスタが大きくなり投入ジョブ数が増加すると、ジョブ管理ソフト自信の処理が重くなり、システムのスループットが急激に低下してしまう場合があります。これに対して「LSF」は効率的なプログラム上の機構を持ち、大量のジョブ処理を行わせても性能が衰えることはなく、高いパフォーマンスを持続的に発揮し続けます。この性能が評価され、世界的に著名なバイオインフォマティクスのセンターや、データマイニングのサイトなどではLSFが広く採用されています。さらにLSFはジョブのスケジューリングを決定するプログラムに対して複数のインスタンスを発生させ、ジョブのスケジューリングを並行処理させることでスループットを向上させる機能も備えており、将来的な計算規模の拡張にも十分耐える設計となっています。

莫大な数のファイル入出力に追従するファイルサーバのチューニング

スクリーニング計算において大量のジョブを処理すると、小さなサイズのファイルに対する頻繁なI/Oが発生します。この膨大なファイル入出力に対応して高いレスポンスを達成するためには、ファイルサーバ内部のI/O性能を可能な限り向上させることと、複数のNFSインスタンスを効率よく処理できるハードウェア構成の工夫が必要です。そこで本システムでは、ファイルサーバの内部I/Oを向上させるため、大容量の主メモリを搭載し、ディスクストレージ部のI/Oキャッシュとしての役割を持たせています。さらに、ディスクストレージ部もRAID10構成とし、ディスクのI/O性能を強化し、激しいランダムアクセスに対しても十分に追従する構成を採用しています。またCPUにはデュアルコアCPUを搭載することで高い処理性能を確保し、複数のNFSインスタンスに対してもスループットを向上させています。このようにファイルサーバシステム全体に対する総合的なチューニングを施すことで高いパフォーマンスの実現を達成しています。このような極限的な利用条件に於けるファイルサーバのボトルネックを予測し、ハードウェアとソフトウェアを横断しての総合的なシステムチューニグの実施は、幾多の実践的経験から得られた知見を駆使して行っており、お客様のシステムの高負荷利用下での長期間安定稼動を達成させるために実施しております。

大切な成果を保管するファイルサーバでは定期バックアップを実施

大切なデータを保管するファイルサーバでは、2台のファイルサーバを用いて定期的なバックアップを行う仕組みを導入しています。これに関しては以下に詳しく解説しています。

参考 >> rsyncによるファイルサーバのバックアップ (600GB/600万ファイルを4時間で実現)