Top > ソフトウェア製品 > Altair Grid Engine (AGE)

Univa Grid Engine

Altair Grid Engine (AGE)

Altair Grid Engine (AGE) は、Sun Grid Engine の流れを汲む商用のジョブ管理ソフトです。AGEは、CPUやメモリなどの計算リソースを監視し、ユーザーからジョブが投入されると、予め設定されたジョブ運用ポリシーに基づきジョブを実行可能なサーバーへジョブを配置します。特に共同利用環境システムにおける効率的なジョブ運用に大きな効果を発揮します。

CPUのマルチコア化の進展、マルチGPU搭載サーバーの普及、AI,機械学習分野の利用技術の高度化、ビッグデータ分野に求められる膨大なデータ処理などに見られる通り、ハードウェア及びソフトウェアについて監視するリソースやジョブの実行条件は従来と比べて大変複雑となり、ジョブ管理ソフトに求められる実装も、はるかに高度なものとなりました。そのような技術の急激な進展に対応するべく、Altair Grid Engineの開発元では、精力的なソフトウェアの開発が進められており、また、運用上の様々な課題に即応するべくサポートサービスも提供されています。エンドユーザーは、最新のジョブ管理機能を、開発元の手厚いサポートを受けながら安心して利用することができます。

弊社の御提供するAGEライセンスについて

OEMライセンス

弊社で御提供しているライセンスは、Univa社(http://www.univa.com/)からOEMとして供給されているものです。これは、弊社が本ライセンスと併せて提供するサーバ及びそのサポートと共に販売する契約となっており、そのような契約に基づき、格安の価格での販売を特別に許可されています。

年単位のライセンス

​ライセンスは、年間ライセンスです。ライセンス年数は1年及び3~7年を御用意しております。

ライセンス数のカウント方法

CPUの物理コア数、及び、機械学習分野においてはGPU数(価格はGPUスペックに応じる)。

商用とアカデミックの区分

アカデミックは、教育・公共機関向け。商用はそれ以外の民間のお客様が該当します。

​AGEの特徴

直観的に理解しやすいユーザー・インターフェース


AGEでは、直感的に理解しやすいユーザーインターフェース(UI)が採用されています。そもそもジョブ管理ソフトは、ジョブを実行するためのミドルウェアであり、実行方法が対話的な方法よりも困難であったり、面倒であったりすると、なかなか利用が促進されません。AGEでは、直感的に理解しやすいUIの採用により、新規ユーザーに対する円滑な導入を支援します。

■AGEクラスターホストの表示例 ※qhostコマンド出力

HOSTNAME                ARCH         NCPU NSOC NCOR NTHR  LOAD  MEMTOT  MEMUSE  SWAPTO  SWAPUS
----------------------------------------------------------------------------------------------
global                  -               -    -    -    -     -       -       -       -       -
node01                  lx-amd64       64    4   32   64  0.49  252.4G    2.8G  160.0G  199.0M
node02                  lx-amd64       64    4   32   64  0.39  252.4G    3.1G  160.0G  148.3M
node03                  lx-amd64       64    4   32   64  0.17  252.4G    3.1G  160.0G  166.8M
node04                  lx-amd64       40    2   20   40  0.24  504.9G    7.0G  132.0G   30.0M
node05                  lx-amd64       80    4   40   80  0.90  252.4G    3.0G  160.0G  161.0M
node06                  lx-amd64       80    4   40   80  0.91  252.4G    3.0G  160.0G  163.9M
node07                  lx-amd64       80    4   40   80  0.80  252.4G    3.0G  160.0G  205.2M
node08                  lx-amd64       96    4   48   96  0.07  377.1G    4.4G  158.9G    1.2G

 

AGEクラスタを構成するサーバーの一覧です。各サーバーのアーキテクチャ、CPU数、スレッド数、主メモリの搭載量、使用メモリ量、スワップ容量、スワップ利用量などが一目で理解できるフォーマットとなっています。
 

■AGEジョブ投入状況の例 ※qstatコマンド出力

job-ID     prior   name       user  state    submit/start at     queue                jclass         slots 
--------------------------------------------------------------------------------------------------------------

113938 0.50976 jobA_667   user-a      r     11/07/2021 19:08:25 all.q@node04.local    half.default    128
119737 0.50476 jobB_425   user-b      r     11/07/2021 18:28:53 all.q@node09.local    half.default     64
121714 0.50476 jobC_194   user-b      r     11/07/2021 18:28:23 all.q@node10.local    half.default     64
123676 0.50476 jobD_128   user-c      r     11/07/2021 18:38:57 all.q@node11.local    half.default     64
124608 0.50476 jobE_061   user-c      r     11/07/2021 19:12:11 all.q@node01.local    half.default    128
118622 0.50309 jobF_318   user-d      r     11/07/2021 19:13:18 all.q@node08.local    half.default     64
122665 0.50476 jobG_216   user-a      qw    10/25/2021 13:18:27                       half.default    128
113939 0.00000 jobA_668   user-a      hqw   08/25/2021 09:38:39                       half.default    128
113940 0.00000 jobA_669   user-a      hqw   08/25/2021 09:38:39                       half.default    128
113941 0.00000 jobA_670   user-a      hqw   08/25/2021 09:38:39                       half.default    128
113942 0.00000 jobA_671   user-a      hqw   08/25/2021 09:38:40                       half.default    128
113943 0.00000 jobA_672   user-a      hqw   08/25/2021 09:38:40                       half.default    128
113944 0.00000 jobA_673   user-a      hqw   08/25/2021 09:38:41                       half.default    128

高スループット性能 ― 大規模なジョブを安定的に高速処理

メタゲノム解析などにおける数万~数百万個におよぶ大規模なジョブを安定して処理する実績が豊富です。選択するジョブ管理ソフトによっては、大量のジョブをキューイングするだけでも大きな負荷をもたらし、全くジョブの実行ができなくなってしまうこともありますが、AGEではそのようなことがなく安定してジョブを実行することが可能です。国内における大型計算機センターや、海外における数万コア規模の計算機システムで稼働している高い実績を持ちます。

開発元からの手厚いサポート

現在のジョブの運用は極めて多様です。ハードウェアとしては、AMD EPYCの利用が増加することで、Intel及びAMDのプロセッサが混在して利用されるようになりました。また、それらのCPUは多コア化が進展しているため、並列ジョブの実行などにおいてはプロセスやスレッドをCPUコアへ如何に割り当てるかがプログラムの実効性能に大きな影響を及ぼします。それに加えてGPUやInfiniBandなどのデバイスの効率的な活用もジョブの運用においては大きな課題です。また、ソフトウェアとしては、DockerやSingularityなどの実装がジョブの多様化を著しく促進させています。このような多様化した環境に対して、開発者から確かな助言を得られることは極めて重要なことでしょう。

​AGEの活用シーン

ホストのグルーピング

AGEでは、クラスタを構成するホストを属性ごとにグルーピングすることが可能です。サーバーをいくつかの世代に分けて購入するなど、計算リソースが均一ではない環境では、ホストのグルーピングが有効です。予めキューに実行するホストグループを定義することで、そのキューを指定したジョブは、特定のホストグループで実行されます。

Dockerジョブとの連携

​近年、ソフトウェアの実行にあたりDockerを利用するケースが大変増えてまいりました。特に、ディープラーニングの分野では、Dockerへの対応は必須とも言えます。DockerのAPIはバージョンやディストリビューションによって異なるため、ジョブ管理ソフトとのマッチングが十分に取れていないと動作の不具合が生じます。弊社では、開発元と情報の共有を行い開発者の見解に基づいた安全なバージョンのDocker導入、及び、サポートサービスを御提供致します。

R740-cluster.0.jpg

1つのプログラムに複数のパラメータを設定し投入する配列ジョブ

​メタゲノム解析などで、数百万のクエリーに対してデータベース検索を実施するような解析では、配列ジョブで実行すると便利な場合があります。AGEの付与するインデックスに入力ファイルを対応させることで、大量の入力ファイルを作成する手間を軽減し、パフォーマンスの向上に貢献します。

GPUとの連携

実行時にGPU IDを指定して実行されるアプリケーションをジョブ管理ソフトで実行する場合、ジョブ管理ソフトでGPU IDをリソースとして管理できている必要があります。また、GPU IDを指定しないアプリケーションであっても、GPUとの連携を図るジョブが投入された場合、ボトルネックを回避するためにジョブが実行されるCPUコア近傍のGPUとの連携が期待されます。AGEは、そのような高度な計算リソースの活用(RSMAP)にも対応しています。

titan-v.png

ジョブとソフトウェアライセンスの連携

​商用のアプリケーションを実行する場合に、実行可能なジョブ数やプロセス数がライセンスによって制限されている場合があります。そのような場合は、AGE上でライセンスリソースを設定することで、ソフトウェアライセンスの制限を考慮したスケジューリングが可能となる場合があります。ジョブ管理ソフトでライセンスの制限を把握できていなければ、ライセンスの有無に関わらずジョブを実行させてしまい、ジョブをfailさせてしまう可能性がありますので、AGEは、そのような障害を未然に防ぐ役割を果たします。