スタートアップ パラメーターのカスタマイズ
MATLAB® Parallel Server™ スクリプトの実行では、既定のパラメーターがいくつか使用されています。これらのスクリプトは、この節で説明するようにカスタマイズできます。
スクリプトの既定値の変更
サーバー サービスのスクリプトでは、いくつかのパラメーターに対し値が必要です。一部のパラメーターはコマンド ラインでフラグを使用して設定できますが、ユーザー設定が可能なすべてのパラメーターは mjs_def
ファイル内にあります。mjs_def
ファイル内のすべてのパラメーターの詳細については、MATLAB ジョブ スケジューラのスタートアップ パラメーターの定義を参照してください。
サーバー サービス スクリプトで使用される既定のパラメーターは、次のファイルで定義されます。
(Microsoft® Windows® オペレーティング システム)matlabroot
\toolbox\parallel\bin\mjs_def.bat
(Linux® オペレーティング システム)matlabroot
/toolbox/parallel/bin/mjs_def.sh
既定のパラメーターを変更するには、mjs
サービスのインストール前または開始前にこのファイルを編集します。
ユーザーの設定
既定では、ジョブ マネージャーおよびワーカー サービスは、それらを起動したユーザーの権限で実行されます。別のユーザーとしてサービスを実行するには、mjs_def
ファイルで MJSUSER
と MJSPASS
のパラメーターを変更します。
UNIX® オペレーティング システムで、MJSUSER
を使用するには現在のマシンに sudo
ユーティリティがインストールされている必要があり、現在のユーザーが MJSUSER
で識別されるユーザーとして、sudo
を使用してコマンドを実行できなければなりません。詳細については、sudo
および sudoers
のユーティリティのシステム ドキュメンテーション (man sudo
、man sudoers
など) を参照してください。
Windows システムでは、MJSUSER
に次の権限が付与されます。
権限 | 目的 | ローカル セキュリティ設定ポリシー |
---|---|---|
SeServiceLogonRight | サービス ログオン タイプを使用してログオンする際に必要。 | サービスとしてログオン |
SeAssignPrimaryTokenPrivilege | 異なるユーザー アカウントでプロセスを開始する際に必要。 | プロセス レベル トークンの置換 |
SeIncreaseQuotaPrivilege | 異なるユーザー アカウントでプロセスを開始する際に必要。 | プロセスのメモリ クォータの調整 |
これらの権限を変更または削除するには、次に従います。
Windows メニューの [スタート] 、 [設定] 、 [コントロール パネル]を選択します。
[管理ツール]、[ローカル セキュリティ ポリシー] の順にダブルクリックします。
ツリーで [ローカル ポリシー] 、 [ユーザー権利の割り当て] を選択します。
上の表は、MJSUSER
によって影響を受けるポリシーを示しています。ローカル セキュリティ設定 GUI にリストされているポリシーをダブルクリックして、その設定を変更するか、そのポリシーからユーザーを削除します。
スクリプトの既定値のオーバーライド
代替の既定値ファイルの指定
mjs
サービス、ジョブ マネージャーおよびワーカーで使用される既定のパラメーターは、次のファイルで定義されます。
(Windows オペレーティング システム)matlabroot
\toolbox\parallel\bin\mjs_def.bat
(Linux オペレーティング システム)matlabroot
/toolbox/parallel/bin/mjs_def.sh
mjs
サービスのインストール前および開始前に、このファイルを編集して既定のパラメーターに必要な値を設定できます。
また、このファイルのコピーを作成して変更し、既定のパラメーターとしてそのコピーを使用するように指定することもできます。
Linux オペレーティング システムでは、次のコマンドを入力します。
mjs start -mjsdef my_mjs_def.sh
Windows オペレーティング システムでは、次のコマンドを入力します。
mjs install -mjsdef my_mjs_def.bat mjs start -mjsdef my_mjs_def.bat
あるコンピューター上で、サービスに関して既定のファイルではなく新しい mjs_def
ファイルを指定しても、他のコンピューター上で mjs
サービスが自動的にその新しいファイルを使用することはありません。すべての mjs
サービスで同じ代替ファイルを使用する場合、インストールまたは開始の対象の mjs
サービスごとにその代替ファイルを指定しなければなりません。
詳細については、スクリプトの既定値の変更を参照してください。
メモ
スタートアップ スクリプトのフラグは、mjs_def
ファイル内の設定より優先されます。
クリーンアップされた状態での起動
ジョブ マネージャーまたはワーカーが起動すると、通常は過去のセッションが再開されます。このため、ジョブ マネージャーのマシンがクラッシュしたりジョブ マネージャーが何らかの理由でシャットダウンしても、ジョブ キューは破棄されたり失われることはありません。すべての履歴を削除してクリーンアップされた状態からジョブ マネージャーまたはワーカーを起動するには、start
コマンドで -clean
フラグを使用します。
startjobmanager -clean -name MyJobManager startworker -clean -jobmanager MyJobManager
ヒープ メモリの増加
mjs
サービスは、ノードの 1 つの集合全体で最大 4000 個のワーカーを使用できます。クラスター内のワーカー数またはタスク数をスケールアップする場合は、ジョブ マネージャーで使用できるヒープ メモリを増加しなければなりません。このためには、以下の推奨事項に基づいて、mjs_def
ファイル内のパラメーター JOB_MANAGER_MAXIMUM_MEMORY
を設定します。
最小値
1000m
(1000 MiB) を使用する。1000 個のワーカーごとに
1000m
を使用する。ピーク負荷時にキューに入ると予想される 100,000 件のタスクごとに
1000m
を加える。
たとえば、クラスターに 4000 個のワーカーがあり、ピークのキュー サイズが 200,000 件のタスクである場合、JOB_MANAGER_MAXIMUM_MEMORY
を 6000m
に設定します。