LSFの機能は資源管理を意識しますが、ライセンス管理でも優れた機能を持っています。これはLSFが商用のジョブスケジューラとして現場で発達してきたことに深く関わっています。不足しがちなハードウェアリソースやソフトウェアリソースを最大効率で利用できるようにすることがLSFには強く求められているのです。
お客様は3台のHP-UX 2CPU機 (計12CPU) をお持ちで、ここでNastranとABAQUSで利用されていました。NastranとABAQUSのライセンス数はCPU数よりも多く所有され、LSFのスケジューリングは各ノードの多重度をCPU数よりも多く設定しておき、CPU数を越えるジョブ数が投入されてもアプリケーションのライセンスに空きがある限りジョブが流れるように運用されていました。このLSF設定は、UNIX機が非常に高価であった頃には一般的であった、「各ジョブ毎の計算時間は遅くなっても、ジョブ待ちが少ない方が良い」というポリシーで構成されていました。
ところがその後、インテルプロセッサが急激に価格性能比を向上させ、さらにアプリケーションの64bit Linux化、インテルプロセッサでの4GB超えメモリ搭載の一般化など、計算環境が激変しました。そこで、お客様はこのインテルプロセッサによる64bit Linux環境をHP-UXの環境に追加することで、既存のシステムの性能と便利さを、大きく改善させようと計画されました。
既存のHP-UXの環境に1台のx86 Linux 2CPU 4コア機を追加し、HP-UX機で動作していたNastranとABAQUSのライセンスを、x86 Linux機でも共有できるように設定することで、ユーザからは使い慣れたシステムイメージを保ったまま、計算の速度と規模を大幅に向上させる優れたプランとなりました。
ところが、古いHP-UX環境やネットワーク環境、NFS環境に、新しいx86 Linux環境を接続し安定稼動させるだけでも簡単ではありません。そこにさらに、アプリケーションのライセンスサーバを共有させ、LSFによるシングルシステムイメージ環境の構築までを、重層的に行うことは難題です。これは一般的なHPC Linuxのインテグレータには経験の範囲を越えています。そこで弊社に、システムの調査と再設定の依頼をいただきました。
◇ 既存ノード 4node
ホストノード 1node HP-UX 64bit PA-RISC 1CPU
演算ノード 3node HP-UX 64bit PA-RISC 2CPU/node (total 6CPU)
◇ 新増設演算ノード 1node
デュアルコア Xeon (Woodcrest) 3.0GHz 2CPU
16GBメモリ
SuSE Linux 11.3
(最近HPC Linuxベンダーさんから導入 )
◇ ご利用のアプリケーション
Nastran
ABAQUS
1. 異なるOS間 (ハードウェア) でアプリケーションを統合するために、ジョブ管理システムを導入したい。
2. 計算機システム全体で限られたアプリケーションのライセンス数を有効活用する仕組みが必要。
今回は一般のHPC Linuxベンダーさんのインテグレーションで難しかった箇所の改修をお受けしたものです。
1. 既存の資産を有効に活用しながら、最先端の計算機を増設され、これらを統合した1つの計算機システムを構築するため、異なるアーキテクチャ間のジョブ管理で実績のあるLSFの導入をご提案しました。
2. アプリケーションのライセンス数に応じたジョブの実行を制御できなければ、仮に空いているCPUがあったとしても、投入されたジョブはライセンス数不足により異常終了します。そのような事態を防ぐために、ライセンス数をカウントしながら、ジョブの実行数を制御する仕組みを構築しました。
3. メモリリソースを公平にジョブに割り当てるため、増設演算ノードに対しては、4GBメモリキュー及び8GBメモリキューを作成し、それぞれ実行順位にプライオリティーを設定しました。
お客様と打ち合わせにより、弊社の提案をベースとしたインテグレーションを導入していただきました。ハードウェアはお客様のサイトで稼動しているので、オンサイトでLSFのインストールと設定を行いました。洗練されたLSFのスケジューリングのアルゴリズムにより、ジョブは最適なリソースに投入され、計算は順調に流れるようになりました。