
Univa Grid Engine (UGE)
Univa Grid Engine (UGE) は、Sun Grid Engine の流れを汲む商用のジョブ管理ソフトです。UGEは、CPUやメモリなどの計算リソースを監視し、ユーザーからジョブが投入されると、予め設定されたジョブ運用ポリシーに基づきジョブを実行可能なサーバーへジョブを配置します。特に共同利用環境システムにおける効率的なジョブ運用に大きな効果を発揮します。
CPUのマルチコア化の進展、マルチGPU搭載サーバーの普及、AI,機械学習分野の利用技術の高度化、ビッグデータ分野に求められる膨大なデータ処理などに見られる通り、ハードウェア及びソフトウェアについて監視するリソースやジョブの実行条件は従来と比べて大変複雑となり、ジョブ管理ソフトに求められる実装も、はるかに高度なものとなりました。そのような技術の急激な進展に対応するべく、Univa Grid Engineの開発元であるUniva社(http://www.univa.com/)では、精力的なソフトウェアの開発が進められており、また、運用上の様々な課題に即応するべくサポートサービスも提供されています。エンドユーザーは、最新のジョブ管理機能を、開発元の手厚いサポートを受けながら安心して利用することができます。
弊社の御提供するUGEライセンスについて
OEMライセンス
弊社で御提供しているライセンスは、Univa社(http://www.univa.com/)からOEMとして供給されているものです。これは、弊社が本ライセンスと併せて提供するサーバ及びそのサポートと共に販売する契約となっており、そのような契約に基づき、格安の価格での販売を特別に許可されています。
年単位のライセンス
ライセンスは、年間ライセンスです。1年ライセンス、3年ライセンス、5年ライセンスを用意しております。
ライセンス数のカウント方法
CPUの物理コア数が単位となります。
商用とアカデミックの区分
アカデミックは、教育、公共機関向け。商用はそれ以外の民間のお客様が該当します。
UGEの活用シーン
ホストのグルーピング
UGEでは、クラスタを構成するホストを属性ごとにグルーピングすることが大変容易です。サーバーをいくつかの世代に分けて購入するなど、計算リソースが均一ではない環境では、ホストのグルーピングが有効です。予めキューに実行するホストグループを定義することで、そのキューを指定したジョブは、特定のホストグループで実行されます。


Dockerジョブとの連携
近年、ソフトウェアの実行にあたりDockerを利用するケースが大変増えてまいりました。特に、ディープラーニングの分野では、Dockerへの対応は必須とも言えます。DockerのAPIはバージョンやディストリビューションによって異なるため、ジョブ管理ソフトとのマッチングが十分に取れていないと動作の不具合が生じます。弊社では、開発元のUniva社と情報の共有を行い開発者の見解に基づいた安全なバージョンのDocker導入、及び、サポートサービスを御提供致します。
1つのプログラムに複数のパラメータを設定し投入する配列ジョブ
メタゲノム解析などで、数百万のクエリーに対してデータベース検索を実施するような解析では、いくつものジョブ投入スクリプトを作成して1つずつジョブをサブミットしていくと、スループットが低下してしまう場合があります。そのような場合は、UGEの付与するインデックスにそれぞれ入力ファイルを対応させて、配列ジョブとして実行すると良好なパフォーマンスを得られます。
GPUとの連携
実行時にGPU IDを指定して実行されるアプリケーションをジョブ管理ソフトで実行する場合、ジョブ管理ソフトでGPU IDをリソースとして管理できている必要があります。また、GPU IDを指定しないアプリケーションであっても、GPUとの連携を図るジョブが投入された場合、ボトルネックを回避するためにジョブが実行されるCPUコア近傍のGPUとの連携が期待されます。UGEは、そのような高度な計算リソースの活用(RSMAP)にも対応しています。

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