PBS Professionalの特長

TOP500のスーパーコンピューターのみならず、単一サイトのクラスタ環境やクラウド環境まで、世界中の何千という組織で使用されているPBS Professionalは、複雑なHPCインフラの管理に必要とされる、強力な管理性能、柔軟性、セキュリティ、スケーラビリティ、信頼性を提供します。

ポリシーベースおよびリソースベースのスケジューリング

  • 13.0の新機能: スケジューリングの優先順位を制御するformulaを拡張 - 完全な数学関数(sqrt()、ceil()など)や条件式の使用に加え、ジョブ開始要件のしきい値設定が可能
  • 調節可能な優先順位、フェアシェア、予約、プリエンプション、アクセス制御リスト(ACL)、バックフィルを利用してSLA要件を達成
  • formulaの使用により、オンザフライの“例外”を含め、柔軟なスケジューリングポリシーを定義
  • フェアシェアで、負荷に応じたシステムリソースの適切な割り当てを実現(直近の使用状況や組織としての優先順位を考慮してリソースを調節)
  • 13.0の新機能: 一般的なfairshare formula - 各キュー単位、ライセンス共有、時間、消費電力を累積でき、これらを組み合わせすることも可能
  • きめ細かいポリシー設定のためのユーザー、グループ、およびプロジェクト制限
  • リソースの先行予約と継続予約により、繰り返し必要なリソースを確保
  • プリエンプションとチェックポイント(サスペンド / チェックポイント / 再キューイング)で、優先順位の高いジョブを即座に実行
  • 13.0の新機能: Preemptionをきめ細やかに指定。キュー単位で設定が可能(管理者のみ)
  • (スケジューリングサイクルに割り込ませることで)優先順位の高いジョブの処理を即座に実行可能
  • 経過時間に基づいたスケジューリングにより、キュー内でのeligible wait timeの長さに応じて優先順位を調節
  • 動的リソースを通じたライセンスのスケジューリングにより、FlexLMなどのサードパーティ製ライセンス管理ソフトウェアによって提供されるソフトウェアライセンスを割り当て / 共有
  • Eligible timeにより、一部のユーザーが大量のジョブを“キューに詰め込んだ”場合でも、公平なジョブの優先順位付けが可能
  • GPU / コプロセッサースケジューリングは、Intel® Xeon Phi™コプロセッサーだけでなくあらゆるアクセラレーター(NVIDIA、AMD)へのアクセスを管理し、利用優先順位付けをおこないます

ユーザーの生産性

  • 13.0の新機能: 長いジョブ名および予約名に対応
  • バッチジョブだけでなく、インタラクティブジョブ(自動X11転送も含む)も実行可能
  • ジョブ開始時刻の予測機能により、ワーフフローの計画と期日の遵守が可能
  • “1回のみ実行”を保証するセマンティクスにより、副作用のあるジョブの実行回数を確実に1回以下に制限
  • 数千の似たタスクを1つのオブジェクトとして投入・管理する標準シンタックスを持つジョブアレイ(実験計画法(DOE)のワークフロー向けなど)
  • 履歴を含んだジョブステータス(“qstat -x”による)が、ジョブの追跡記録の紛失を防止
  • ジョブの依存関係を利用して、複雑なワークフローを定義して自動的に実行可能
  • ハイブリッドMPI+OpenMPのジョブで、具体的な要件を指定可能(たとえば、各MPIランクが4つのOpenMPスレッドを持つ64ウェイのMPIジョブにおいて、MPIランク0では64 GBのメモリ、それ以外のすべてのランクでは1 GBのみのメモリを使用)
  • リソースの先行予約と継続予約により、繰り返し必要なリソースを確保

管理者の生産性

  • 13.0の新機能: カスタムリソース -- サーバーを再起動することなく、qmgrを使って直接カスタムリソースを作成可能
  • ジョブおよびシステムステータスのレポートユーティリティ(“特定のジョブ”の分散されたすべてのログデータを収集するデバッグユーティリティなど)
  • オンザフライの構成変更(ノードの追加 / 削除、構成設定の変更、デーモンの再起動)のすべてを、実行中のジョブに悪影響を与えることなく実施
  • 詳細なトラブルシューティングやカスタムレポートの作成に利用できる、広範なアカウンティングデータ
  • ノードへのユーザーのログインを制限 — restrict_user機能により、(PBSを経由せずに)直接ログインしてノードを使用することを禁止
  • “非表示”のリソースを定義することで、個々のユーザーに詳細を公開せずに、内部のスケジューリングポリシーを設定
  • プラグインフレームワーク(“フック”)を利用して、カスタムのヘルスチェック、障害回避、通知の機能を追加可能(処理能力の低いノードをオフラインにする、スケジューリングサイクルを再起動する、ジョブを別のキューに再登録するなど)
  • 13.0の新機能: ジョブの起動、ホストのブート、タスクのアタッチで実行される新しいフックイベント。さらに、フックのオーサリングが容易に(フックごとの構成ファイル、オフラインデバッグのサポート、トラブルシューティング用のログの改善)
  • 13.0の新機能: プラグインの改善。qstatやアカウンティングレポートにオンザフライで表示される、カスタムの使用状況測定が追加可能に
  • PBSのランタイム環境(“フック”インターフェース)からノード情報にアクセス。runjobフック内からノードのオフライン化(“ブラックホール”対策)などが可能
  • qmgrコマンドラインの編集 / 履歴
  • プラットフォームとサードパーティソフトウェアの広範なサポート。Linux、UNIX、Windows、MPI、OpenMPなど、ほぼすべての環境で実行可能(詳細は、サポートされているプラットフォームをご覧ください)
    • 13.0の新機能: システムサポート要件の拡張: WindowsのIntel MPIとMPICH2、Windowsのstdin / stdout / ファイルステージングのためのUNCパス、SLES 12、RHEL 7


スケーラビリティ、セキュリティ、レジリエンス

  • 13.0の新機能: 百万コアのスケーラビリティ -- 50,000以上のノードで試験済み
  • 13.0の新機能: cgroupでリソースの競合を防止 -- ジョブが高速で処理され、ほかのジョブやOS*に干渉しない(限定機能)
  • 組み込みのマルチスレッドデータベースにより、数千人単位のユーザーが数百万単位のコアで同時にジョブを実行するために必要な高ボリューム・高速パフォーマンスを実現
  • 自動バックグラウンド処理による高速なジョブ投入(1ユーザーあたり1秒間に最大で100 qsubが可能)
  • コモンクライテリアEAL3+セキュリティ認証
  • SELinuxサポートにより、Red Hatクロスドメインセキュリティ(マルチレベルセキュリティ、MLS)機能を利用可能。Kerberos v5 を実装(現在は限定機能(LA)です。詳細は、Altairにお問い合わせください)
  • 万全の信頼性。単一障害点(SPOF)が存在しないアーキテクチャーと自動フェイルオーバー サーバー構成
  • 13.0の新機能: 包括的なヘルスチェックフレームワークがユーザーのヘルスチェックスクリプトの挙動を監視 -- チェックが実行されるか、ノードがダウンと判定される
  • 可用性の高い予約機能。先行予約と継続予約では、障害が発生したノードを自動的に検出・置換
  • 強化されたセキュリティオプションにより、サーバーからのroot / 管理者のジョブとフックを拒否可能
  • MOMフック内から“カレント”ノードをオフライン化・再起動可能(数万個単位のMOMまで拡張可能)



アプリケーションパフォーマンス

  • 13.0の新機能: 巨大なMPIジョブを高速かつ確実に起動 – 何万ものMPIランクを持つジョブで試験済み。障害が発生したノードによる遅延を最小限に抑える
  • ヘテロジニアスなMPI割り当て(ランク0には64GBのメモリを割り当て、その他のランクには1GBだけを割り当てるなど)により、メモリの無駄を削減
  • 強化されたジョブ配置オプションにより、MPIタスクのvnode単位(NUMAノードやGPUなどの単位)での分散や、ホストの排他的な割り当てが可能(たとえば、Crayシステム上のジョブにホストを排他的に割り当て、指定時間内のみSGI UVシステム上のジョブがホストを利用できる)
  • (ノード間およびノード内の)トポロジーを考慮したスケジューリングで、アプリケーションのパフォーマンスを最大化しながら、ジョブ間のネットワーク競合を最小化。PBS Professionalでは、InfiniBandやGigEのほか、SGI社やCray社といったベンダーの独自技術に構築されたトポロジーなど、すべてのHPCネットワークトポロジーでタスク配置を最適化
  • ノードのグループ化により、似た属性(同じCPU速度など)のノードへのジョブの割り当てを保証し、ハードウェアの使用効率を最大化(そのため、1つの速度の遅いノードが、100ウェイのMPIジョブの速度を低下させない)


スループット、利用率、無駄の最小化

  • 13.0の新機能: 高速スループット -- 1日に1,000,000以上のジョブを処理可能
  • 自動的なリソースシャットダウン/リスタートによりエネルギーを節約するGreen Provisioning™ (消費電力に配慮したスケジューリング)。(1ユーザーのエネルギー消費量が最大30%削減された事例がございます。)
  • Backfill TopNスケジューリングにより、最優先の作業を遅延させることなく不要なサイクルを削除
  • 動的なプロビジョニングによりOSを自動的に変更し、変化するワークロードのニーズに対応
  • ”shrink-to-fit”ジョブにより、特に、計画されているシステム停止前のリソースの利用率が向上し、ジョブが即座に実行可能。わずか数カ月で800,000以上のアイドルCPU時間を取り戻すことができたというスーパーコンピューティングセンターの事例もございます
  • ジョブアレイによりスループットを最大化し、制限のないジョブのスケジューリング、実行、管理が実現
  • Altairのピアスケジューリングテクノロジーに基づいたメタスケジューリングにより、異なるクラスタ間でジョブをスケジューリング・管理
  • ヘテロジニアスなノード群(あるいはクラスタ群全体)を“1つの巨大なクラスタ”に集約。サイロをなくしてリソースの共有の幅を広げることで、全体の利用率を向上し、無駄を削減
  • 間接リソースを分割共有可能(ラック1台につきスクラッチディスク1つを共有など)
  • デスクトップサイクルハーベスティングにより、デスクトップシステム上のアイドルサイクルを利用してジョブを実行することで、無駄を削減してスループットを向上。特に、夜間や週末に便利
  • 負荷分散により、複数のジョブを実行しているコンピューターの過負荷を防止
  • CPUを100%使用しないジョブのスループットを高めるために、オーバーサブスクリプションでコア数よりも多いジョブを実行(ノードに超過割り当て)
  • ノードのソートにより、ジョブに割り当てるハードウェアに優先順位を付けることで、利用可能な最高のリソースを使用


オープンアーキテクチャーと拡張性

  • 標準: POSIX Batch標準、EAL3+セキュリティ、各種Webサービス、Python、OGSA BES HPCBP
  • 広範なプラットフォームをサポート(LINUX、UNIX、Windows)
    • 13.0の新機能: 拡張されたWindowsサポート: WindowsのIntel MPIとMPICH2、Windowsのstdin / stdout / ファイルステージングのためのUNCパス
    • 13.0の新機能: SLES 12をサポート
    • 13.0の新機能: RHEL 7をサポート
  • MPI統合。MPIジョブの完全な使用状況アカウンティングをはじめ、すべての主要なMPIライブラリに対応
  • ポータブルで現代的なスクリプト言語のPythonにより、1つのスクリプトをすべてのアーキテクチャーで利用可能
  • ジョブのフィルタリング“hooks”機能により、その場で機能の変更 / 拡張が可能
  • ユーザーがカスタマイズ可能な“runjob hooks”により、割当の制限を厳格に管理可能
  • 並列のプロローグフック: ジョブのセットアップ時間に、複雑な(カスタムの)ノードのヘルスチェックを実施可能
  • 並列のエピローグフック: ジョブの完了後に、ホスト開放直前の最後のアクションとして、最終的な(カスタムの)クリーンアップアクションを実施可能
  • 定期ノードレベルのフック: ノードのヘルスチェックの実行、リソースの空きと使用状況の測定・報告、障害が発生したノードの再起動・オフライン化が可能

 

*現在利用制限があります - 本機能のお客様のサイトへの導入については、Altairにお問い合わせください。

情報請求



利用開始!