14. システム利用資源
14.1 UNIX版JobCenterのプロセスが使用する資源
UNIX版JobCenterのプロセスが使用する資源について説明します。
備考 ここでは、HP-UX 11i v2を例として記述しています。カーネルパラメータはOSやカーネルのバー ジョン毎に異なるため、適宜読み替えて設定してください。
本文中に出てくるカーネルパラメータの意味は次のとおりです。
表 14-1 本文中に出てくるカーネルパラメータの意味
パラメータ名 パラメータの意味
maxfiles プロセスあたりのファイルオープン数
nproc システム内で同時に実行できるプロセス数
maxuprc ユーザプロセス数
nfile システム全体のファイルオープン数
ninode iノードのオープン数
nflocks システム内のファイル/レコードロック数
UNIX版JobCenterに関するカーネルパラメータの計算式は次のようになります。
この値は JobCenter が単独で動作する場合に最低限必要な値であり、システム全体の設定値としては、
ジョブとして実行するアプリケーションが使用する資源についてもあわせて考慮する必要があります。
表 14-2 カーネルパラメータと計算式一覧
パラメータ名 計算式
maxfiles 各プロセスのmaxfilesの計算で最大となるものを基準してください。
nproc, maxuproc (4×X) + 2 + 2 + Y
nfile ,ninode (21×X) + 40 + 41 + (20×Y) nflocks 6×X 備考 X : ジョブの同時実行数
Y : JobCenter CL/Winの同時接続数
UNIX版JobCenterのプロセス構成は大きく分けて次の4つあります。
nqsdaemon(リクエストを実行)
jnwengine(ジョブネットワーク制御実行)
sclaunchd(スケジュール実行)
comagent(他のマシンとの通信用)
14.1.1 nqsdaemon(リクエスト実行)
14.1.2 jnwengine(ジョブネットワーク制御実行)
14.1.3 sclaunchd(スケジュール実行)
14.1.4 comagent(通信用モジュール)
14.1.5 その他
14.1.1 nqsdaemon(リクエスト実行)
リクエストは、単位ジョブ実行時に使用されます。
例として単位ジョブ内でsleepをcshで実行した場合を説明します。
生成されるプロセスは次の4つです。
nqsdaemon
shell(login)
shell(コマンド実行)
sleep
<使用資源>
maxfiles 21(1リクエスト)
nproc、maxuproc 4(1リクエスト)
nfile、ninode 21(1リクエスト)
14.1.2 jnwengine(ジョブネットワーク制御実行)
ジョブの投入でqsubコマンドを発行します。qsubコマンドはシリアルに実行されるため、使用する資 源はジョブ数の影響を受けません。maxfiles は資源を多く消費する qsubコマンドが使用するファイル 数になります。nfile、ninodeはjnwengineがopenしているファイル数とqsubコマンドが使用するファ イル数の合計になります。
<使用資源>
maxfiles 24(qsubコマンド)
nproc、maxuproc 2(jnwengine+qsubコマンド)
nfile、ninode 40(16ファイル(jnwengine)+24ファイル(qsubコマンド))
このほか、jnwengineプロセスは未アーカイブ状態のトラッカについてプロセス内のメモリにデー タを展開して保持するため、HP-UXでは 32bit環境の場合、大量のトラッカを保持する状況で OSのメモリ空間割当て制限によりプロセスメモリの上限値2GBを超えることができず、正常 動作できなくなる場合があります。(IPF版等の64bit環境では2GB制限はありませんが、プロ セスメモリの利用方法については32bit環境と同様となります)
従ってアーカイブファイルの保存期間(個数)や保存間隔をチューニングして、未アーカイブ状態 のトラッカが大量に残らないようにご注意ください。
14.1.3 sclaunchd(スケジュール実行)
スケジュール起動でジョブネットワーク投入時に子プロセスを起動します。ジョブネットワークの投入 処理はシリアルに実行されるため、使用する資源は、ジョブネットワークの数には影響を受けません。
maxfilesは資源を多く消費する子プロセスの値になります。nfile、ninodeはsclaunchdがopenしてい るファイル数と子プロセスが使用するファイル数の合計になります。
<使用資源>
maxfiles 28(子プロセス)
nproc、maxuproc 2(sclaunchd+子プロセス)
nfile、ninode 41(13ファイル(sclaunchd)+28ファイル(子プロセス))
14.1.4 comagent(通信用モジュール)
JobCenter CL/Winからジョブの実行状態の収集や各種設定を行うときに使用されます(ジョブの転送、
実行には使用されません)。このため、資源はJobCenter CL/Winの同時起動数に依存します。
通信を受信するごとに子プロセスを起動しますが、処理が終わると終了します。
次の資源は、通信部分のみ(通信を受信し、その先に呼ばれる処理は除く)です。
<使用資源>
maxfiles 20(1回の通信処理)
nproc、maxuproc 1(1回の通信処理)
nfile、ninode 20(1回の通信処理)
14.1.5 その他
リクエスト実行時に一部のファイルをロックします。ジョブの同時実行数に依存します。
<使用資源>
nflocks 6(リクエストごと)