srun
Section: Slurm Commands (1)Updated: Slurm Commands
Index
NAME
srun - Run parallel jobsSYNOPSIS
srun [OPTIONS(0)...] [ : [OPTIONS(N)...]] executable(0) [args(0)...]
Option(s) define multiple jobs in a co-scheduled heterogeneous job.
For more details about heterogeneous jobs see the document
オプションは、共同スケジュールされた異種ジョブで複数のジョブを定義します。異機種混在ジョブの詳細については、ドキュメントを参照してください
https://slurm.schedmd.com/heterogeneous_jobs.html
DESCRIPTION
Run a parallel job on cluster managed by Slurm. If necessary, srun will first create a resource allocation in which to run the parallel job.Slurmが管理するクラスターで並列ジョブを実行します。必要に応じて、srunは最初に並列ジョブを実行するためのリソース割り当てを作成します。
The following document describes the influence of various options on the
allocation of cpus to jobs and tasks.
次のドキュメントは、ジョブとタスクへのCPUの割り当てに対するさまざまなオプションの影響について説明しています。
https://slurm.schedmd.com/cpu_management.html
RETURN VALUE
srun will return the highest exit code of all tasks run or the highest signal (with the high-order bit set in an 8-bit integer -- e.g. 128 + signal) of any task that exited with a signal.srunは、すべてのタスク実行の最高の終了コード、またはシグナルで終了したすべてのタスクの最高のシグナル(8ビット整数に設定された高位ビット-128 +シグナルなど)を返します。
The value 253 is reserved for out-of-memory errors.
値253は、メモリ不足エラー用に予約されています。
EXECUTABLE PATH RESOLUTION
The executable is resolved in the following order:
実行可能ファイルは次の順序で解決されます。
1. If executable starts with ".", then path is constructed as:
current working directory / executable
1.実行可能ファイルが「。」で始まる場合、パスは次のように構成されます:現在の作業ディレクトリ/実行可能ファイル
2. If executable starts with a "/", then path is considered absolute.
2.実行可能ファイルが「/」で始まる場合、パスは絶対パスと見なされます。
3. If executable can be resolved through PATH. See path_resolution(7).
3. PATHを介して実行可能ファイルを解決できる場合。path_resolution(7)を参照してください。
4. If executable is in current working directory.
4.実行可能ファイルが現在の作業ディレクトリにある場合。
Current working directory is the calling process working directory unless the
--chdir argument is passed, which will override the current working
directory.
現在の作業ディレクトリは、現在の作業ディレクトリを上書きする--chdir引数が渡されない限り、呼び出しプロセスの作業ディレクトリです。
OPTIONS
- --accel-bind=<options>
-
Control how tasks are bound to generic resources of type gpu, mic and nic.
Multiple options may be specified. Supported options include:
タスクがタイプgpu、mic、nicの汎用リソースにバインドされる方法を制御します。複数のオプションを指定できます。サポートされるオプションは次のとおりです。
-
- g
-
Bind each task to GPUs which are closest to the allocated CPUs.
各タスクを、割り当てられたCPUに最も近いGPUにバインドします。
- m
-
Bind each task to MICs which are closest to the allocated CPUs.
各タスクを、割り当てられたCPUに最も近いMICにバインドします。
- n
-
Bind each task to NICs which are closest to the allocated CPUs.
各タスクを、割り当てられたCPUに最も近いNICにバインドします。
- v
-
Verbose mode. Log how tasks are bound to GPU and NIC devices.
冗長モード。タスクがGPUおよびNICデバイスにどのようにバインドされているかをログに記録します。
- This option applies to job allocations.
このオプションは、ジョブの割り当てに適用されます。
-
- -A, --account=<account>
-
Charge resources used by this job to specified account.
The account is an arbitrary string. The account name may
be changed after job submission using the scontrol
command. This option applies to job allocations.
このジョブで使用されるリソースを指定されたアカウントに請求します。アカウントは任意の文字列です。アカウント名は、scontrolコマンドを使用してジョブを送信した後で変更される場合があります。このオプションは、ジョブの割り当てに適用されます。
- --acctg-freq
-
Define the job accounting and profiling sampling intervals.
This can be used to override the JobAcctGatherFrequency parameter in Slurm's
configuration file, slurm.conf.
The supported format is follows:
ジョブアカウンティングとプロファイリングのサンプリング間隔を定義します。これを使用して、Slurmの構成ファイルslurm.confのJobAcctGatherFrequencyパラメーターをオーバーライドできます。サポートされている形式は次のとおりです。
-
- --acctg-freq=<datatype>=<interval>
-
where <datatype>=<interval> specifies the task sampling
interval for the jobacct_gather plugin or a
sampling interval for a profiling type by the
acct_gather_profile plugin. Multiple,
comma-separated <datatype>=<interval> intervals
may be specified. Supported datatypes are as follows:
どこ =jobacct_gatherプラグインのタスクサンプリング間隔、またはacct_gather_profileプラグインによるプロファイリングタイプのサンプリング間隔を指定します。複数、カンマ区切り=間隔を指定できます。サポートされているデータ型は次のとおりです。
-
- task=<interval>
-
where <interval> is the task sampling interval in seconds
for the jobacct_gather plugins and for task
profiling by the acct_gather_profile plugin.
NOTE: This frequency is used to monitor memory usage. If memory limits
are enforced the highest frequency a user can request is what is configured in
the slurm.conf file. They can not turn it off (=0) either.
どこ jobacct_gatherプラグインとacct_gather_profileプラグインによるタスクプロファイリングの秒単位のタスクサンプリング間隔です。注:この頻度は、メモリ使用量を監視するために使用されます。メモリ制限が適用される場合、ユーザーが要求できる最も高い頻度は、slurm.confファイルで構成されているものです。また、オフ(= 0)にすることもできません。
- energy=<interval>
-
where <interval> is the sampling interval in seconds
for energy profiling using the acct_gather_energy plugin
どこ acct_gather_energyプラグインを使用したエネルギープロファイリングのサンプリング間隔(秒)です
- network=<interval>
-
where <interval> is the sampling interval in seconds
for infiniband profiling using the acct_gather_interconnect
plugin.
どこ acct_gather_interconnectプラグインを使用したinfinibandプロファイリングのサンプリング間隔(秒)です。
- filesystem=<interval>
-
where <interval> is the sampling interval in seconds
for filesystem profiling using the acct_gather_filesystem
plugin.
どこ acct_gather_filesystemプラグインを使用したファイルシステムプロファイリングのサンプリング間隔(秒)です。
-
The default value for the task sampling interval is 30. The default value for all other intervals is 0. An interval of 0 disables sampling of the specified type. If the task sampling interval is 0, accounting information is collected only at job termination (reducing Slurm interference with the job).
タスクのサンプリング間隔のデフォルト値は30です。他のすべての間隔のデフォルト値は0です。間隔を0にすると、指定したタイプのサンプリングが無効になります。タスクのサンプリング間隔が0の場合、アカウンティング情報はジョブの終了時にのみ収集されます(ジョブとのSlurm干渉を減らします)。
Smaller (non-zero) values have a greater impact upon job performance, but a value of 30 seconds is not likely to be noticeable for applications having less than 10,000 tasks. This option applies job allocations.
値が小さい(ゼロ以外の)場合、ジョブのパフォーマンスに大きな影響がありますが、30秒の値は、10,000タスク未満のアプリケーションでは目立ちません。このオプションは、ジョブの割り当てを適用します。
-
- -B --extra-node-info=<sockets[:cores[:threads]]>
-
Restrict node selection to nodes with at least the specified number of
sockets, cores per socket and/or threads per core.
NOTE: These options do not specify the resource allocation size.
Each value specified is considered a minimum.
An asterisk (*) can be used as a placeholder indicating that all available
resources of that type are to be utilized. Values can also be specified as
min-max. The individual levels can also be specified in separate options if
desired:
ノードの選択を、指定されたソケット数、ソケットあたりのコア数、コアあたりのスレッド数、またはその両方を持つノードに制限します。注:これらのオプションは、リソース割り当てサイズを指定しません。指定された各値は最小値と見なされます。アスタリスク(*)は、そのタイプの使用可能なすべてのリソースが利用されることを示すプレースホルダーとして使用できます。値はmin-maxとして指定することもできます。必要に応じて、個別のレベルを個別のオプションで指定することもできます。
--sockets-per-node=<sockets> --cores-per-socket=<cores> --threads-per-core=<threads>
If task/affinity plugin is enabled, then specifying an allocation in this manner also sets a default --cpu-bind option of threads if the -B option specifies a thread count, otherwise an option of cores if a core count is specified, otherwise an option of sockets. If SelectType is configured to select/cons_res, it must have a parameter of CR_Core, CR_Core_Memory, CR_Socket, or CR_Socket_Memory for this option to be honored. If not specified, the scontrol show job will display 'ReqS:C:T=*:*:*'. This option applies to job allocations.
タスク/アフィニティプラグインが有効になっている場合、この方法で割り当てを指定すると、-Bオプションでスレッド数が指定されている場合はスレッドのデフォルトの--cpu-bindオプションが設定され、それ以外の場合はコア数が指定されている場合はコアのオプションが設定されます。ソケットのオプション。SelectTypeがselect / cons_resに構成されている場合、このオプションが受け入れられるためには、CR_Core、CR_Core_Memory、CR_Socket、またはCR_Socket_Memoryのパラメーターが必要です。指定しない場合、scontrol showジョブは「ReqS:C:T = *:*:*」を表示します。このオプションは、ジョブの割り当てに適用されます。
- --bb=<spec>
-
Burst buffer specification. The form of the specification is system dependent.
Also see --bbf. This option applies to job allocations.
バーストバッファ仕様。仕様の形式はシステムに依存します。--bbfも参照してください。このオプションは、ジョブの割り当てに適用されます。
- --bbf=<file_name>
-
Path of file containing burst buffer specification.
The form of the specification is system dependent.
Also see --bb. This option applies to job allocations.
バーストバッファ指定を含むファイルのパス。仕様の形式はシステムに依存します。--bbも参照してください。このオプションは、ジョブの割り当てに適用されます。
- --bcast[=<dest_path>]
-
Copy executable file to allocated compute nodes.
If a file name is specified, copy the executable to the specified destination
file path. If no path is specified, copy the file to a file named
"slurm_bcast_<job_id>.<step_id>" in the current working.
For example, "srun --bcast=/tmp/mine -N3 a.out" will copy the file "a.out"
from your current directory to the file "/tmp/mine" on each of the three
allocated compute nodes and execute that file. This option applies to step
allocations.
割り当てられた計算ノードに実行可能ファイルをコピーします。ファイル名が指定されている場合は、実行可能ファイルを指定された宛先ファイルパスにコピーします。パスが指定されていない場合は、「slurm_bcast_」という名前のファイルにファイルをコピーします。"現在の作業で。たとえば、" srun --bcast = / tmp / mine -N3 a.out "は、ファイル" a.out "を現在のディレクトリからファイル" / tmp / mine "にコピーします。割り当てられた3つの計算ノードとそのファイルを実行します。このオプションは、ステップ割り当てに適用されます。
- -b, --begin=<time>
-
Defer initiation of this job until the specified time.
It accepts times of the form HH:MM:SS to run a job at
a specific time of day (seconds are optional).
(If that time is already past, the next day is assumed.)
You may also specify midnight, noon, fika (3 PM) or
teatime (4 PM) and you can have a time-of-day suffixed
with AM or PM for running in the morning or the evening.
You can also say what day the job will be run, by specifying
a date of the form MMDDYY or MM/DD/YY
YYYY-MM-DD. Combine date and time using the following
format YYYY-MM-DD[THH:MM[:SS]]. You can also
give times like now + count time-units, where the time-units
can be seconds (default), minutes, hours,
days, or weeks and you can tell Slurm to run
the job today with the keyword today and to run the
job tomorrow with the keyword tomorrow.
The value may be changed after job submission using the
scontrol command.
For example:
このジョブの開始を指定された時間まで延期します。HH:MM:SSという形式の時刻を受け入れて、特定の時刻にジョブを実行します(秒はオプションです)。(その時刻が既に過ぎている場合は、翌日と見なされます。)午前0時、正午、fika(午後3時)またはティータイム(午後4時)を指定することもできます。時刻の後にAMまたはPMを付けることもできます。朝か夕方に走っています。また、MMDDYYまたはMM / DD / YY YYYY-MM-DDの形式の日付を指定することにより、ジョブが実行される日を指定することもできます。次の形式YYYY-MM-DD [THH:MM [:SS]]を使用して日付と時刻を組み合わせます。now + count time-unitsのような時間を指定することもできます。ここで、時間単位は秒(デフォルト)、分、時間、日、または週であり、Slurmに今日のキーワードを使用してジョブを実行し、実行するように指示できます。明日のキーワードで明日の仕事。この値は、scontrolコマンドを使用してジョブをサブミットした後で変更される場合があります。例えば:
--begin=16:00 --begin=now+1hour --begin=now+60 (seconds by default) --begin=2010-01-20T12:34:00
-
Notes on date/time specifications:
日付/時刻の仕様に関する注意:
- Although the 'seconds' field of the HH:MM:SS time specification is allowed by the code, note that the poll time of the Slurm scheduler is not precise enough to guarantee dispatch of the job on the exact second. The job will be eligible to start on the next poll following the specified time. The exact poll interval depends on the Slurm scheduler (e.g., 60 seconds with the default sched/builtin).
-HH:MM:SS時間指定の「秒」フィールドはコードで許可されていますが、Slurmスケジューラーのポーリング時間は、正確な秒でのジョブのディスパッチを保証するほど正確ではないことに注意してください。ジョブは、指定された時間に続く次のポーリングで開始する資格があります。正確なポーリング間隔はSlurmスケジューラーに依存します(例えば、デフォルトのsched / builtinで60秒)。
- If no time (HH:MM:SS) is specified, the default is (00:00:00).
-時間(HH:MM:SS)が指定されていない場合、デフォルトは(00:00:00)です。
- If a date is specified without a year (e.g., MM/DD) then the current year is assumed, unless the combination of MM/DD and HH:MM:SS has already passed for that year, in which case the next year is used.
-年が指定されていない日付(例:MM / DD)の場合、MM / DDとHH:MM:SSの組み合わせがその年に既に経過していない限り、現在の年が想定されます。中古。
This option applies to job allocations.
このオプションは、ジョブの割り当てに適用されます。
-
- --cluster-constraint=<list>
-
Specifies features that a federated cluster must have to have a sibling job
submitted to it. Slurm will attempt to submit a sibling job to a cluster if it
has at least one of the specified features.
統合クラスターに兄弟ジョブを送信するために必要な機能を指定します。Slurmは、指定された機能の少なくとも1つがある場合、兄弟ジョブをクラスターに送信しようとします。
- --comment=<string>
-
An arbitrary comment. This option applies to job allocations.
任意のコメント。このオプションは、ジョブの割り当てに適用されます。
- --compress[=type]
-
Compress file before sending it to compute hosts.
The optional argument specifies the data compression library to be used.
Supported values are "lz4" (default) and "zlib".
Some compression libraries may be unavailable on some systems.
For use with the --bcast option. This option applies to step
allocations.
計算ホストに送信する前にファイルを圧縮します。オプションの引数は、使用するデータ圧縮ライブラリを指定します。サポートされている値は、「lz4」(デフォルト)および「zlib」です。一部の圧縮ライブラリは、一部のシステムでは使用できない場合があります。--bcastオプションとともに使用します。このオプションは、ステップ割り当てに適用されます。
- -C, --constraint=<list>
-
Nodes can have features assigned to them by the Slurm administrator.
Users can specify which of these features are required by their job
using the constraint option.
Only nodes having features matching the job constraints will be used to
satisfy the request.
Multiple constraints may be specified with AND, OR, matching OR,
resource counts, etc. (some operators are not supported on all system types).
Supported constraint options include:
ノードには、Slurm管理者によってノードに割り当てられた機能を含めることができます。ユーザーは、制約オプションを使用して、これらの機能のどれが自分のジョブに必要かを指定できます。ジョブの制約に一致する機能を持つノードのみが、要求を満たすために使用されます。AND、OR、一致するOR、リソース数などで複数の制約を指定できます(一部の演算子はすべてのシステムタイプでサポートされているわけではありません)。サポートされる制約オプションは次のとおりです。
-
- Single Name
-
Only nodes which have the specified feature will be used.
For example, --constraint="intel"
指定された機能を持つノードのみが使用されます。例:--constraint = "intel"
- Node Count
-
A request can specify the number of nodes needed with some feature
by appending an asterisk and count after the feature name.
For example "--nodes=16 --constraint=graphics*4 ..."
indicates that the job requires 16 nodes and that at least four of those
nodes must have the feature "graphics."
リクエストでは、機能名の後にアスタリスクとカウントを追加することにより、一部の機能で必要なノードの数を指定できます。たとえば、「-nodes = 16 --constraint = graphics * 4 ...」は、ジョブに16のノードが必要であり、それらのノードの少なくとも4つに「グラフィック」の機能が必要であることを示します。
- AND
-
If only nodes with all of specified features will be used.
The ampersand is used for an AND operator.
For example, --constraint="intel&gpu"
指定されたすべての機能を持つノードのみが使用される場合。アンパサンドはAND演算子に使用されます。例:--constraint = "intel&gpu"
- OR
-
If only nodes with at least one of specified features will be used.
The vertical bar is used for an OR operator.
For example, --constraint="intel|amd"
指定された機能の少なくとも1つを持つノードのみが使用される場合。縦棒はOR演算子に使用されます。例:--constraint = "intel | amd"
- Matching OR
-
If only one of a set of possible options should be used for all allocated
nodes, then use the OR operator and enclose the options within square brackets.
For example: "--constraint=[rack1|rack2|rack3|rack4]" might
be used to specify that all nodes must be allocated on a single rack of
the cluster, but any of those four racks can be used.
割り当てられたすべてのノードで使用可能なオプションのセットの1つだけを使用する必要がある場合は、OR演算子を使用して、オプションを角括弧で囲みます。例:「--constraint = [rack1 | rack2 | rack3 | rack4]」は、すべてのノードをクラスターの単一のラックに割り当てる必要があることを指定するために使用できますが、これらの4つのラックのどれでも使用できます。
- Multiple Counts
-
Specific counts of multiple resources may be specified by using the AND
operator and enclosing the options within square brackets.
For example: "--constraint=[rack1*2&rack2*4]" might
be used to specify that two nodes must be allocated from nodes with the feature
of "rack1" and four nodes must be allocated from nodes with the feature
"rack2".
AND演算子を使用してオプションを角括弧で囲むことにより、複数のリソースの特定の数を指定できます。例:「--constraint = [rack1 * 2&rack2 * 4]」は、2つのノードを「rack1」の機能を持つノードから割り当て、4つのノードを「rack2」の機能を持つノードから割り当てる必要があることを指定するために使用できます。 。
NOTE: This construct does not support multiple Intel KNL NUMA or MCDRAM modes. For example, while "--constraint=[(knl&quad)*2&(knl&hemi)*4]" is not supported, "--constraint=[haswell*2&(knl&hemi)*4]" is supported. Specification of multiple KNL modes requires the use of a heterogeneous job.
注:この構成は、複数のIntel KNL NUMAまたはMCDRAMモードをサポートしていません。たとえば、「-constraint = [(knl&quad)* 2&(knl&hemi)* 4]」はサポートされていませんが、「-constraint = [haswell * 2&(knl&hemi)* 4]」はサポートされています。複数のKNLモードを指定するには、異種ジョブを使用する必要があります。
- Parenthesis
-
Parenthesis can be used to group like node features together. For example
"--constraint=[(knl&snc4&flat)*4&haswell*1]" might be used to specify
that four nodes with the features "knl", "snc4" and "flat" plus one node with
the feature "haswell" are required. All options within parenthesis should be
grouped with AND (e.g. "&") operands.
括弧を使用して、類似したノード機能をグループ化できます。たとえば、「-constraint = [(knl&snc4&flat)* 4&haswell * 1]」を使用して、「knl」、「snc4」、「flat」の機能を持つ4つのノードと「haswell」の機能を持つ1つのノードが必要であることを指定できます。 。括弧内のすべてのオプションは、AND(例: "&")オペランドでグループ化する必要があります。
WARNING: When srun is executed from within salloc or sbatch, the constraint value can only contain a single feature name. None of the other operators are currently supported for job steps.
警告:srunがsallocまたはsbatch内から実行される場合、制約値には単一の機能名のみを含めることができます。他の演算子は現在、ジョブステップでサポートされていません。
This option applies to job and step allocations.
このオプションは、ジョブとステップの割り当てに適用されます。
-
- --contiguous
-
If set, then the allocated nodes must form a contiguous set.
Not honored with the topology/tree or topology/3d_torus
plugins, both of which can modify the node ordering. This option applies to job
allocations.
セットされている場合、割り当てられたノードは連続したセットを形成する必要があります。topology / treeまたはtopology / 3d_torusプラグインでは尊重されません。どちらもノードの順序を変更できます。このオプションは、ジョブの割り当てに適用されます。
- --cores-per-socket=<cores>
-
Restrict node selection to nodes with at least the specified number of
cores per socket. See additional information under -B option
above when task/affinity plugin is enabled. This option applies to job
allocations.
ノードの選択を、ソケットごとに指定されたコア数以上のノードに制限します。タスク/アフィニティプラグインが有効になっている場合は、上記の-Bオプションの下にある追加情報を参照してください。このオプションは、ジョブの割り当てに適用されます。
- --cpu-bind=[{quiet,verbose},]type
-
Bind tasks to CPUs.
Used only when the task/affinity or task/cgroup plugin is enabled.
NOTE: To have Slurm always report on the selected CPU binding for all
commands executed in a shell, you can enable verbose mode by setting
the SLURM_CPU_BIND environment variable value to "verbose".
タスクをCPUにバインドします。task / affinityまたはtask / cgroupプラグインが有効な場合にのみ使用されます。注:Slurmが常にシェルで実行されるすべてのコマンドの選択されたCPUバインディングについて報告するようにするには、SLURM_CPU_BIND環境変数の値を "verbose"に設定することにより、詳細モードを有効にできます。
The following informational environment variables are set when --cpu-bind is in use:
--cpu-bindを使用すると、次の情報環境変数が設定されます。
SLURM_CPU_BIND_VERBOSE SLURM_CPU_BIND_TYPE SLURM_CPU_BIND_LIST
See the ENVIRONMENT VARIABLES section for a more detailed description of the individual SLURM_CPU_BIND variables. These variable are available only if the task/affinity plugin is configured.
個々のSLURM_CPU_BIND変数の詳細については、環境変数のセクションを参照してください。これらの変数は、タスク/アフィニティプラグインが設定されている場合にのみ使用できます。
When using --cpus-per-task to run multithreaded tasks, be aware that CPU binding is inherited from the parent of the process. This means that the multithreaded task should either specify or clear the CPU binding itself to avoid having all threads of the multithreaded task use the same mask/CPU as the parent. Alternatively, fat masks (masks which specify more than one allowed CPU) could be used for the tasks in order to provide multiple CPUs for the multithreaded tasks.
--cpus-per-taskを使用してマルチスレッドタスクを実行する場合、CPUバインディングはプロセスの親から継承されることに注意してください。つまり、マルチスレッドタスクは、CPUバインディング自体を指定またはクリアして、マルチスレッドタスクのすべてのスレッドが親と同じマスク/ CPUを使用しないようにする必要があります。または、マルチスレッドタスクに複数のCPUを提供するために、ファットマスク(複数の許可されたCPUを指定するマスク)をタスクに使用できます。
By default, a job step has access to every CPU allocated to the job. To ensure that distinct CPUs are allocated to each job step, use the --exclusive option.
デフォルトでは、ジョブステップはジョブに割り当てられたすべてのCPUにアクセスできます。各ジョブステップに個別のCPUが割り当てられるようにするには、-exclusiveオプションを使用します。
Note that a job step can be allocated different numbers of CPUs on each node or be allocated CPUs not starting at location zero. Therefore one of the options which automatically generate the task binding is recommended. Explicitly specified masks or bindings are only honored when the job step has been allocated every available CPU on the node.
ジョブステップには、各ノードで異なる数のCPUを割り当てることも、ロケーション0から開始しないCPUを割り当てることもできます。したがって、タスクバインディングを自動的に生成するオプションの1つをお勧めします。明示的に指定されたマスクまたはバインディングは、ノードで使用可能なすべてのCPUにジョブステップが割り当てられている場合にのみ受け入れられます。
Binding a task to a NUMA locality domain means to bind the task to the set of CPUs that belong to the NUMA locality domain or "NUMA node". If NUMA locality domain options are used on systems with no NUMA support, then each socket is considered a locality domain.
タスクをNUMAローカリティドメインにバインドするとは、NUMAローカリティドメインまたは「NUMAノード」に属するCPUのセットにタスクをバインドすることです。NUMAサポートのないシステムでNUMAローカリティドメインオプションを使用すると、各ソケットはローカリティドメインと見なされます。
If the --cpu-bind option is not used, the default binding mode will depend upon Slurm's configuration and the step's resource allocation. If all allocated nodes have the same configured CpuBind mode, that will be used. Otherwise if the job's Partition has a configured CpuBind mode, that will be used. Otherwise if Slurm has a configured TaskPluginParam value, that mode will be used. Otherwise automatic binding will be performed as described below.
--cpu-bindオプションを使用しない場合、デフォルトのバインディングモードはSlurmの構成とステップのリソース割り当てに依存します。割り当てられたすべてのノードに同じ構成のCpuBindモードがある場合、それが使用されます。それ以外の場合、ジョブのパーティションに構成されたCpuBindモードがあれば、それが使用されます。それ以外の場合、SlurmにTaskPluginParam値が構成されていれば、そのモードが使用されます。それ以外の場合は、以下で説明するように自動バインドが実行されます。
-
- Auto Binding
-
Applies only when task/affinity is enabled. If the job step allocation includes an
allocation with a number of
sockets, cores, or threads equal to the number of tasks times cpus-per-task,
then the tasks will by default be bound to the appropriate resources (auto
binding). Disable this mode of operation by explicitly setting
"--cpu-bind=none". Use TaskPluginParam=autobind=[threads|cores|sockets] to set
a default cpu binding in case "auto binding" doesn't find a match.
タスク/アフィニティが有効な場合にのみ適用されます。ジョブステップの割り当てに、タスクの数にcpus-per-taskを掛けた数に等しいソケット、コア、またはスレッドの数の割り当てが含まれる場合、タスクはデフォルトで適切なリソースにバインドされます(自動バインド)。「--cpu-bind = none」を明示的に設定して、この動作モードを無効にします。TaskPluginParam = autobind = [threads | cores | sockets]を使用して、「自動バインディング」で一致が見つからない場合のデフォルトのCPUバインディングを設定します。
-
Supported options include:
サポートされるオプションは次のとおりです。
-
- q[uiet]
-
Quietly bind before task runs (default)
タスクを実行する前に静かにバインドする(デフォルト)
- v[erbose]
-
Verbosely report binding before task runs
タスクの実行前に詳細にバインディングを報告する
- no[ne]
-
Do not bind tasks to CPUs (default unless auto binding is applied)
タスクをCPUにバインドしません(自動バインドが適用されていない場合のデフォルト)
- rank
-
Automatically bind by task rank.
The lowest numbered task on each node is bound to socket (or core or thread) zero, etc.
Not supported unless the entire node is allocated to the job.
タスクのランクによって自動的にバインドします。各ノードの最小番号のタスクは、ソケット(またはコアまたはスレッド)ゼロなどにバインドされます。ノード全体がジョブに割り当てられていない限り、サポートされません。
- map_cpu:<list>
-
Bind by setting CPU masks on tasks (or ranks) as specified where <list> is
<cpu_id_for_task_0>,<cpu_id_for_task_1>,...
CPU IDs are interpreted as decimal values unless they are preceded
with '0x' in which case they interpreted as hexadecimal values.
If the number of tasks (or ranks) exceeds the number of elements in this list,
elements in the list will be reused as needed starting from the beginning of
the list.
To simplify support for large task counts, the lists may follow a map with an
asterisk and repetition count.
For example "map_cpu:0x0f*4,0xf0*4".
Not supported unless the entire node is allocated to the job.
タスク(またはランク)にCPUマスクを設定してバインドします。 です 、、... CPU IDは、 '0x'が前に付いていない限り10進値として解釈されます。その場合、16進値として解釈されます。タスク(またはランク)の数がこのリストの要素の数を超える場合、リストの要素は必要に応じてリストの先頭から再利用されます。大量のタスク数のサポートを簡略化するために、リストはアスタリスクと繰り返し数の付いたマップに従う場合があります。たとえば、「map_cpu:0x0f * 4,0xf0 * 4」です。ノード全体がジョブに割り当てられていない限り、サポートされません。
- mask_cpu:<list>
-
Bind by setting CPU masks on tasks (or ranks) as specified where <list> is
<cpu_mask_for_task_0>,<cpu_mask_for_task_1>,...
The mapping is specified for a node and identical mapping is applied to the
tasks on every node (i.e. the lowest task ID on each node is mapped to the
first mask specified in the list, etc.).
CPU masks are always interpreted as hexadecimal values but can be
preceded with an optional '0x'.
If the number of tasks (or ranks) exceeds the number of elements in this list,
elements in the list will be reused as needed starting from the beginning of
the list.
To simplify support for large task counts, the lists may follow a map with an
asterisk and repetition count.
For example "mask_cpu:0x0f*4,0xf0*4".
Not supported unless the entire node is allocated to the job.
タスク(またはランク)にCPUマスクを設定してバインドします。 です 、、...マッピングはノードに指定され、すべてのノードのタスクに同一のマッピングが適用されます(つまり、各ノードの最小のタスクIDがリストで指定された最初のマスクにマッピングされます)。CPUマスクは常に16進値として解釈されますが、オプションの「0x」を前に付けることができます。タスク(またはランク)の数がこのリストの要素の数を超える場合、リストの要素は必要に応じてリストの先頭から再利用されます。大量のタスク数のサポートを簡略化するために、リストはアスタリスクと繰り返し数の付いたマップに従う場合があります。たとえば、「mask_cpu:0x0f * 4,0xf0 * 4」です。ノード全体がジョブに割り当てられていない限り、サポートされません。
- rank_ldom
-
Bind to a NUMA locality domain by rank. Not supported unless the entire
node is allocated to the job.
ランクによってNUMAローカリティドメインにバインドします。ノード全体がジョブに割り当てられていない限り、サポートされません。
- map_ldom:<list>
-
Bind by mapping NUMA locality domain IDs to tasks as specified where
<list> is <ldom1>,<ldom2>,...<ldomN>.
The locality domain IDs are interpreted as decimal values unless they are
preceded with '0x' in which case they are interpreted as hexadecimal values.
Not supported unless the entire node is allocated to the job.
NUMAローカリティドメインIDを指定されたタスクにマッピングしてバインドします です 、、...。ローカリティドメインIDは、先頭に「0x」が付いていない限り、10進値として解釈されます。この場合、16進値として解釈されます。ノード全体がジョブに割り当てられていない限り、サポートされません。
- mask_ldom:<list>
-
Bind by setting NUMA locality domain masks on tasks as specified
where <list> is <mask1>,<mask2>,...<maskN>.
NUMA locality domain masks are always interpreted as hexadecimal
values but can be preceded with an optional '0x'.
Not supported unless the entire node is allocated to the job.
指定された場所でタスクにNUMAローカリティドメインマスクを設定してバインドする です 、、...。NUMAローカリティドメインマスクは常に16進値として解釈されますが、前にオプションの「0x」を付けることができます。ノード全体がジョブに割り当てられていない限り、サポートされません。
- sockets
-
Automatically generate masks binding tasks to sockets.
Only the CPUs on the socket which have been allocated to the job will be used.
If the number of tasks differs from the number of allocated sockets
this can result in sub-optimal binding.
タスクをソケットにバインドするマスクを自動的に生成します。ジョブに割り当てられたソケット上のCPUのみが使用されます。タスクの数が割り当てられたソケットの数と異なる場合、これは最適ではないバインディングになる可能性があります。
- cores
-
Automatically generate masks binding tasks to cores.
If the number of tasks differs from the number of allocated cores
this can result in sub-optimal binding.
タスクをコアにバインドするマスクを自動的に生成します。タスクの数が割り当てられたコアの数と異なる場合、これは次善のバインディングになる可能性があります。
- threads
-
Automatically generate masks binding tasks to threads.
If the number of tasks differs from the number of allocated threads
this can result in sub-optimal binding.
タスクをスレッドにバインドするマスクを自動的に生成します。タスクの数が割り当てられたスレッドの数と異なる場合、これは最適ではないバインディングになる可能性があります。
- ldoms
-
Automatically generate masks binding tasks to NUMA locality domains.
If the number of tasks differs from the number of allocated locality domains
this can result in sub-optimal binding.
NUMAローカリティドメインにマスクバインディングタスクを自動的に生成します。タスクの数が割り当てられたローカリティドメインの数と異なる場合、これは最適ではないバインディングになる可能性があります。
- boards
-
Automatically generate masks binding tasks to boards.
If the number of tasks differs from the number of allocated boards
this can result in sub-optimal binding. This option is supported by the
task/cgroup plugin only.
タスクをボードにバインドするマスクを自動的に生成します。タスクの数が割り当てられたボードの数と異なる場合、これは最適とは言えないバインディングになる可能性があります。このオプションはtask / cgroupプラグインでのみサポートされています。
- help
-
Show help message for cpu-bind
cpu-bindのヘルプメッセージを表示
- This option applies to job and step allocations.
このオプションは、ジョブとステップの割り当てに適用されます。
-
-
- --cpu-freq =<p1[-p2[:p3]]>
-
Request that the job step initiated by this srun command be run at some requested frequency if possible, on the CPUs selected for the step on the compute node(s).
このsrunコマンドによって開始されたジョブステップが、可能であれば、要求された頻度で、計算ノードのステップに選択されたCPUで実行されるように要求します。
p1 can be [#### | low | medium | high | highm1] which will set the frequency scaling_speed to the corresponding value, and set the frequency scaling_governor to UserSpace. See below for definition of the values.
p1は[#### | 低| ミディアム| 高い| highm1]は、周波数scaling_speedを対応する値に設定し、周波数scaling_governorをUserSpaceに設定します。値の定義については、以下を参照してください。
p1 can be [Conservative | OnDemand | Performance | PowerSave] which will set the scaling_governor to the corresponding value. The governor has to be in the list set by the slurm.conf option CpuFreqGovernors.
p1は[保守的| オンデマンド| パフォーマンス| PowerSave]は、scaling_governorを対応する値に設定します。ガバナーは、slurm.confオプションCpuFreqGovernorsによって設定されたリストに含まれている必要があります。
When p2 is present, p1 will be the minimum scaling frequency and p2 will be the maximum scaling frequency.
p2が存在する場合、p1は最小スケーリング周波数、p2は最大スケーリング周波数になります。
p2 can be [#### | medium | high | highm1] p2 must be greater than p1.
p2は[#### | ミディアム| 高い| highm1] p2はp1より大きくなければなりません。
p3 can be [Conservative | OnDemand | Performance | PowerSave | UserSpace] which will set the governor to the corresponding value.
p3は[保守的| オンデマンド| パフォーマンス| PowerSave | UserSpace]ガバナーを対応する値に設定します。
If p3 is UserSpace, the frequency scaling_speed will be set by a power or energy aware scheduling strategy to a value between p1 and p2 that lets the job run within the site's power goal. The job may be delayed if p1 is higher than a frequency that allows the job to run within the goal.
p3がUserSpaceの場合、周波数scaling_speedは、電力またはエネルギーを認識するスケジューリング戦略によって、サイトの電力目標内でジョブを実行できるようにするp1とp2の間の値に設定されます。ジョブが目標内で実行できる頻度よりもp1が高い場合、ジョブが遅延する可能性があります。
If the current frequency is < min, it will be set to min. Likewise, if the current frequency is > max, it will be set to max.
現在の周波数が<minの場合、minに設定されます。同様に、現在の周波数が> maxの場合、maxに設定されます。
Acceptable values at present include:
現在許容できる値は次のとおりです。
-
- ####
-
frequency in kilohertz
キロヘルツ単位の周波数
- Low
-
the lowest available frequency
利用可能な最低周波数
- High
-
the highest available frequency
利用可能な最高周波数
- HighM1
-
(high minus one) will select the next highest available frequency
(高マイナス1)は、次に使用可能な頻度を選択します
- Medium
-
attempts to set a frequency in the middle of the available range
使用可能な範囲の中央に周波数を設定しようとします
- Conservative
-
attempts to use the Conservative CPU governor
保守的なCPUガバナーを使用する試み
- OnDemand
-
attempts to use the OnDemand CPU governor (the default value)
OnDemand CPUガバナーの使用を試みます(デフォルト値)
- Performance
-
attempts to use the Performance CPU governor
パフォーマンスCPUガバナーを使用しようとする
- PowerSave
-
attempts to use the PowerSave CPU governor
PowerSave CPUガバナーを使用しようとする
- UserSpace
-
attempts to use the UserSpace CPU governor
UserSpace CPUガバナーの使用を試みます
The following informational environment variable is set in the job step when --cpu-freq option is requested.
--cpu-freqオプションが要求されると、次の情報環境変数がジョブステップで設定されます。
SLURM_CPU_FREQ_REQ
This environment variable can also be used to supply the value for the CPU frequency request if it is set when the 'srun' command is issued. The --cpu-freq on the command line will override the environment variable value. The form on the environment variable is the same as the command line. See the ENVIRONMENT VARIABLES section for a description of the SLURM_CPU_FREQ_REQ variable.
この環境変数は、「srun」コマンドの発行時に設定されている場合、CPU周波数要求の値を提供するためにも使用できます。コマンドラインの--cpu-freqは、環境変数の値を上書きします。環境変数の形式は、コマンドラインと同じです。SLURM_CPU_FREQ_REQ変数の説明については、「環境変数」セクションを参照してください。
NOTE: This parameter is treated as a request, not a requirement. If the job step's node does not support setting the CPU frequency, or the requested value is outside the bounds of the legal frequencies, an error is logged, but the job step is allowed to continue.
注:このパラメーターは、要件ではなく要求として扱われます。ジョブステップのノードがCPU周波数の設定をサポートしていない場合、または要求された値が有効な周波数の範囲外である場合、エラーがログに記録されますが、ジョブステップは続行できます。
NOTE: Setting the frequency for just the CPUs of the job step implies that the tasks are confined to those CPUs. If task confinement (i.e., TaskPlugin=task/affinity or TaskPlugin=task/cgroup with the "ConstrainCores" option) is not configured, this parameter is ignored.
注:ジョブステップのCPUのみの頻度を設定すると、タスクはそれらのCPUに限定されます。タスクの制限(つまり、 "ConstrainCores"オプションを指定したTaskPlugin = task / affinityまたはTaskPlugin = task / cgroup)が構成されていない場合、このパラメーターは無視されます。
NOTE: When the step completes, the frequency and governor of each selected CPU is reset to the previous values.
注:ステップが完了すると、選択した各CPUの周波数とガバナーが以前の値にリセットされます。
NOTE: When submitting jobs with the --cpu-freq option with linuxproc as the ProctrackType can cause jobs to run too quickly before Accounting is able to poll for job information. As a result not all of accounting information will be present.
注:ProctrackTypeとしてlinuxprocの--cpu-freqオプションを使用してジョブを送信すると、アカウンティングがジョブ情報をポーリングする前にジョブが非常に速く実行される可能性があります。その結果、すべてのアカウンティング情報が存在するわけではありません。
This option applies to job and step allocations.
このオプションは、ジョブとステップの割り当てに適用されます。
-
- --cpus-per-gpu=<ncpus>
-
Advise Slurm that ensuing job steps will require ncpus processors per
allocated GPU.
Not compatible with the --cpus-per-task option.
後続のジョブステップでは、割り当てられたGPUごとにncpusプロセッサが必要になることをSlurmにアドバイスします。--cpus-per-taskオプションと互換性がありません。
- -c, --cpus-per-task=<ncpus>
-
Request that ncpus be allocated per process. This may be
useful if the job is multithreaded and requires more than one CPU
per task for optimal performance. The default is one CPU per process.
If -c is specified without -n, as many
tasks will be allocated per node as possible while satisfying
the -c restriction. For instance on a cluster with 8 CPUs
per node, a job request for 4 nodes and 3 CPUs per task may be
allocated 3 or 6 CPUs per node (1 or 2 tasks per node) depending
upon resource consumption by other jobs. Such a job may be
unable to execute more than a total of 4 tasks.
This option may also be useful to spawn tasks without allocating
resources to the job step from the job's allocation when running
multiple job steps with the --exclusive option.
プロセスごとにncpusを割り当てるように要求します。これは、ジョブがマルチスレッドであり、最適なパフォーマンスを得るためにタスクごとに複数のCPUが必要な場合に役立ちます。デフォルトは、プロセスごとに1つのCPUです。-nなしで-cを指定すると、-cの制限を満たしながら、ノードごとにできるだけ多くのタスクが割り当てられます。たとえば、ノードあたり8 CPUのクラスターでは、他のジョブによるリソース消費に応じて、4ノードとタスクあたり3 CPUのジョブリクエストに、ノードあたり3または6 CPU(ノードあたり1または2タスク)が割り当てられます。このようなジョブは、合計4つを超えるタスクを実行できない場合があります。このオプションは、-exclusiveオプションを使用して複数のジョブステップを実行しているときに、ジョブの割り当てからジョブステップにリソースを割り当てずにタスクを生成する場合にも役立ちます。
WARNING: There are configurations and options interpreted differently by job and job step requests which can result in inconsistencies for this option. For example srun -c2 --threads-per-core=1 prog may allocate two cores for the job, but if each of those cores contains two threads, the job allocation will include four CPUs. The job step allocation will then launch two threads per CPU for a total of two tasks.
警告:ジョブとジョブステップのリクエストによって解釈が異なる構成とオプションがあり、このオプションに矛盾が生じる可能性があります。たとえば、srun -c2 --threads-per-core = 1 progはジョブに2つのコアを割り当てることができますが、それらのコアのそれぞれに2つのスレッドが含まれている場合、ジョブの割り当てには4つのCPUが含まれます。ジョブステップの割り当てにより、CPUごとに2つのスレッドが起動され、合計2つのタスクが実行されます。
WARNING: When srun is executed from within salloc or sbatch, there are configurations and options which can result in inconsistent allocations when -c has a value greater than -c on salloc or sbatch.
警告:srunをsallocまたはsbatch内から実行すると、sallocまたはsbatchの-cの値が-cよりも大きい場合に、割り当てに矛盾が生じる可能性のある構成とオプションがあります。
This option applies to job allocations.
このオプションは、ジョブの割り当てに適用されます。
- --deadline=<OPT>
-
remove the job if no ending is possible before
this deadline (start > (deadline - time[-min])).
Default is no deadline. Valid time formats are:
この期限までに終了できない場合は、ジョブを削除します(開始>(期限-時間[-min]))。デフォルトは期限なしです。有効な時刻形式は次のとおりです。
HH:MM[:SS] [AM|PM]
MMDD[YY] or MM/DD[/YY] or MM.DD[.YY]
MM/DD[/YY]-HH:MM[:SS]
YYYY-MM-DD[THH:MM[:SS]]]This option applies only to job allocations.
このオプションは、ジョブの割り当てにのみ適用されます。
- --delay-boot=<minutes>
-
Do not reboot nodes in order to satisfied this job's feature specification if
the job has been eligible to run for less than this time period.
If the job has waited for less than the specified period, it will use only
nodes which already have the specified features.
The argument is in units of minutes.
A default value may be set by a system administrator using the delay_boot
option of the SchedulerParameters configuration parameter in the
slurm.conf file, otherwise the default value is zero (no delay).
ジョブがこの期間よりも短い期間実行する資格がある場合は、このジョブの機能仕様を満たすためにノードを再起動しないでください。ジョブの待機時間が指定した期間より短い場合、指定した機能がすでにあるノードのみが使用されます。引数は分単位です。システム管理者は、slurm.confファイルのSchedulerParameters構成パラメーターのdelay_bootオプションを使用してデフォルト値を設定できます。デフォルト値はゼロ(遅延なし)です。
This option applies only to job allocations.
このオプションは、ジョブの割り当てにのみ適用されます。
- -d, --dependency=<dependency_list>
-
Defer the start of this job until the specified dependencies have been
satisfied completed. This option does not apply to job steps (executions of
srun within an existing salloc or sbatch allocation) only to job allocations.
<dependency_list> is of the form
<type:job_id[:job_id][,type:job_id[:job_id]]> or
<type:job_id[:job_id][?type:job_id[:job_id]]>.
All dependencies must be satisfied if the "," separator is used.
Any dependency may be satisfied if the "?" separator is used.
Only one separator may be used.
Many jobs can share the same dependency and these jobs may even belong to
different users. The value may be changed after job submission using the
scontrol command.
Dependencies on remote jobs are allowed in a federation.
Once a job dependency fails due to the termination state of a preceding job,
the dependent job will never be run, even if the preceding job is requeued and
has a different termination state in a subsequent execution. This option applies
to job allocations.
指定した依存関係が満たされるまでこのジョブの開始を延期します。このオプションは、ジョブステップ(既存のsallocまたはsbatch割り当て内でのsrunの実行)には、ジョブ割り当てにのみ適用されません。 次の形式です または 。「、」区切り文字を使用する場合は、すべての依存関係を満たしている必要があります。「?」セパレータが使用されます。セパレーターは1つだけ使用できます。多くのジョブは同じ依存関係を共有でき、これらのジョブは異なるユーザーに属している場合さえあります。この値は、scontrolコマンドを使用してジョブをサブミットした後で変更される場合があります。連携では、リモートジョブへの依存が許可されます。先行ジョブの終了状態が原因でジョブの依存関係が失敗すると、先行ジョブが再キューイングされ、後続の実行で異なる終了状態になったとしても、依存ジョブは実行されません。このオプションは、ジョブの割り当てに適用されます。
-
- after:job_id[[+time][:jobid[+time]...]]
-
After the specified jobs start or are cancelled and 'time' in minutes from job
start or cancellation happens, this
job can begin execution. If no 'time' is given then then there is no delay after
start or cancellation.
指定したジョブが開始またはキャンセルされ、ジョブの開始またはキャンセルから分単位の「時間」が発生すると、このジョブは実行を開始できます。「時間」が指定されていない場合、開始またはキャンセル後の遅延はありません。
- afterany:job_id[:jobid...]
-
This job can begin execution after the specified jobs have terminated.
このジョブは、指定されたジョブが終了した後で実行を開始できます。
- afterburstbuffer:job_id[:jobid...]
-
This job can begin execution after the specified jobs have terminated and
any associated burst buffer stage out operations have completed.
このジョブは、指定されたジョブが終了し、関連するバーストバッファーのステージアウト操作が完了した後で実行を開始できます。
- aftercorr:job_id[:jobid...]
-
A task of this job array can begin execution after the corresponding task ID
in the specified job has completed successfully (ran to completion with an
exit code of zero).
このジョブ配列のタスクは、指定されたジョブの対応するタスクIDが正常に完了した(実行が終了コード0で完了した)後に実行を開始できます。
- afternotok:job_id[:jobid...]
-
This job can begin execution after the specified jobs have terminated
in some failed state (non-zero exit code, node failure, timed out, etc).
このジョブは、指定されたジョブが何らかの失敗状態(ゼロ以外の終了コード、ノード障害、タイムアウトなど)で終了した後で実行を開始できます。
- afterok:job_id[:jobid...]
-
This job can begin execution after the specified jobs have successfully
executed (ran to completion with an exit code of zero).
このジョブは、指定されたジョブが正常に実行された(終了コード0で完了まで実行された)後に実行を開始できます。
- expand:job_id
-
Resources allocated to this job should be used to expand the specified job.
The job to expand must share the same QOS (Quality of Service) and partition.
Gang scheduling of resources in the partition is also not supported.
"expand" is not allowed for jobs that didn't originate on the same cluster
as the submitted job.
このジョブに割り当てられたリソースを使用して、指定されたジョブを展開する必要があります。拡張するジョブは、同じQOS(サービス品質)とパーティションを共有する必要があります。パーティション内のリソースのギャングスケジューリングもサポートされていません。「拡張」は、送信されたジョブと同じクラスターで発生していないジョブには許可されません。
- singleton
-
This job can begin execution after any previously launched jobs
sharing the same job name and user have terminated.
In other words, only one job by that name and owned by that user can be running
or suspended at any point in time.
In a federation, a singleton dependency must be fulfilled on all clusters
unless DependencyParameters=disable_remote_singleton is used in slurm.conf.
このジョブは、同じジョブ名とユーザーを共有する以前に起動されたジョブが終了した後で実行を開始できます。つまり、その名前でそのユーザーが所有するジョブは、いつでも実行または一時停止できます。フェデレーションでは、slurm.confでDependencyParameters = disable_remote_singletonが使用されていない限り、すべてのクラスターでシングルトン依存関係が満たされる必要があります。
-
- -D, --chdir=<path>
-
Have the remote processes do a chdir to path before beginning
execution. The default is to chdir to the current working directory
of the srun process. The path can be specified as full path or
relative path to the directory where the command is executed. This
option applies to job allocations.
実行を開始する前に、リモートプロセスにchdirを実行させます。デフォルトでは、srunプロセスの現在の作業ディレクトリにchdirします。パスは、コマンドが実行されるディレクトリへの絶対パスまたは相対パスとして指定できます。このオプションは、ジョブの割り当てに適用されます。
- -e, --error=<filename pattern>
-
Specify how stderr is to be redirected. By default in interactive mode,
srun
redirects stderr to the same file as stdout, if one is specified. The
--error option is provided to allow stdout and stderr to be
redirected to different locations.
See IO Redirection below for more options.
If the specified file already exists, it will be overwritten. This option
applies to job and step allocations.
stderrのリダイレクト方法を指定します。対話モードのデフォルトでは、srunは、stderrが指定されている場合、stdoutと同じファイルにリダイレクトします。--errorオプションは、stdoutとstderrを別の場所にリダイレクトできるようにするために提供されています。その他のオプションについては、以下のIOリダイレクトを参照してください。指定したファイルが既に存在する場合は上書きされます。このオプションは、ジョブとステップの割り当てに適用されます。
- -E, --preserve-env
-
Pass the current values of environment variables SLURM_JOB_NODES and
SLURM_NTASKS through to the executable, rather than computing them
from commandline parameters. This option applies to job allocations.
環境変数SLURM_JOB_NODESおよびSLURM_NTASKSの現在の値を、コマンドラインパラメータから計算するのではなく、実行可能ファイルに渡します。このオプションは、ジョブの割り当てに適用されます。
- --epilog=<executable>
-
srun will run executable just after the job step completes.
The command line arguments for executable will be the command
and arguments of the job step. If executable is "none", then
no srun epilog will be run. This parameter overrides the SrunEpilog
parameter in slurm.conf. This parameter is completely independent from
the Epilog parameter in slurm.conf. This option applies to job allocations.
srunは、ジョブステップが完了した直後に実行可能ファイルを実行します。実行可能ファイルのコマンドライン引数は、ジョブステップのコマンドと引数になります。実行可能ファイルが「なし」の場合、srunエピローグは実行されません。このパラメーターは、slurm.confのSrunEpilogパラメーターをオーバーライドします。このパラメーターは、slurm.confのEpilogパラメーターから完全に独立しています。このオプションは、ジョブの割り当てに適用されます。
- --exclusive[=user|mcs]
-
This option applies to job and job step allocations, and has two slightly
different meanings for each one.
When used to initiate a job, the job allocation cannot share nodes with
other running jobs (or just other users with the "=user" option or "=mcs" option).
The default shared/exclusive behavior depends on system configuration and the
partition's OverSubscribe option takes precedence over the job's option.
このオプションは、ジョブとジョブステップの割り当てに適用され、それぞれに少し異なる2つの意味があります。ジョブの開始に使用する場合、ジョブの割り当ては、他の実行中のジョブ(または「= user」オプションまたは「= mcs」オプションを持つ他のユーザーのみ)とノードを共有できません。デフォルトの共有/排他動作はシステム構成に依存し、パーティションのOverSubscribeオプションはジョブのオプションよりも優先されます。
This option can also be used when initiating more than one job step within an existing resource allocation, where you want separate processors to be dedicated to each job step. If sufficient processors are not available to initiate the job step, it will be deferred. This can be thought of as providing a mechanism for resource management to the job within its allocation.
このオプションは、既存のリソース割り当て内で複数のジョブステップを開始するときにも使用できます。この場合、個別のプロセッサを各ジョブステップ専用にする必要があります。ジョブステップを開始するのに十分なプロセッサがない場合は、延期されます。これは、割り当て内のジョブにリソース管理のメカニズムを提供するものと考えることができます。
The exclusive allocation of CPUs only applies to job steps explicitly invoked with the --exclusive option. For example, a job might be allocated one node with four CPUs and a remote shell invoked on the allocated node. If that shell is not invoked with the --exclusive option, then it may create a job step with four tasks using the --exclusive option and not conflict with the remote shell's resource allocation. Use the --exclusive option to invoke every job step to ensure distinct resources for each step.
CPUの排他的割り当ては、-exclusiveオプションで明示的に呼び出されたジョブステップにのみ適用されます。たとえば、ジョブには4つのCPUを備えた1つのノードが割り当てられ、割り当てられたノードでリモートシェルが呼び出されます。そのシェルが--exclusiveオプションで呼び出されない場合、-exclusiveオプションを使用して4つのタスクを含むジョブステップを作成し、リモートシェルのリソース割り当てと競合しない場合があります。--exclusiveオプションを使用して、すべてのジョブステップを呼び出し、各ステップの個別のリソースを確保します。
Note that all CPUs allocated to a job are available to each job step unless the --exclusive option is used plus task affinity is configured. Since resource management is provided by processor, the --ntasks option must be specified, but the following options should NOT be specified --relative, --distribution=arbitrary. See EXAMPLE below.
ジョブに割り当てられたすべてのCPUは、-exclusiveオプションが使用され、さらにタスクアフィニティが構成されていない限り、各ジョブステップで使用できることに注意してください。リソース管理はプロセッサーによって提供されるため、-ntasksオプションを指定する必要がありますが、以下のオプションは指定しないでください--relative、-distribution = arbitrary。以下の例を参照してください。
- --export=<[ALL,]environment variables|ALL|NONE>
-
Identify which environment variables from the submission environment are
propagated to the launched application.
送信環境のどの環境変数が、起動されたアプリケーションに伝搬されるかを識別します。
-
- --export=ALL
-
Default mode if --export is not specified. All of the users environment will be loaded from callers environment.
--exportが指定されていない場合のデフォルトモード。すべてのユーザー環境が呼び出し元の環境から読み込まれます。
- --export=NONE
-
None of the user environment will be defined. User must use absolute path to the binary to be executed that will define the environment. User can not specify explicit environment variables with NONE.
This option is particularly important for jobs that are submitted on one cluster and execute on a different cluster (e.g. with different paths). To avoid steps inheriting environment export settings (e.g. NONE) from sbatch command, either set --export=ALL or the environment variable SLURM_EXPORT_ENV should be set to ALL.
ユーザー環境は定義されません。ユーザーは、環境を定義する実行されるバイナリへの絶対パスを使用する必要があります。ユーザーはNONEで明示的な環境変数を指定できません。このオプションは、あるクラスターで送信され、別のクラスターで実行されるジョブ(たとえば、異なるパス)で特に重要です。sbatchコマンドから環境エクスポート設定(NONEなど)を継承するステップを回避するには、-export = ALLを設定するか、環境変数SLURM_EXPORT_ENVをALLに設定する必要があります。
- --export=<[ALL,]environment variables>
-
Exports all SLURM* environment variables along with explicitly defined variables. Multiple environment variable names should be comma separated. Environment variable names may be specified to propagate the current value (e.g. "--export=EDITOR") or specific values may be exported (e.g. "--export=EDITOR=/bin/emacs"). If ALL is specified, then all user environment variables will be loaded and will take precedence over any explicitly given environment variables.
すべてのSLURM *環境変数と明示的に定義された変数をエクスポートします。複数の環境変数名はコンマで区切る必要があります。現在の値を反映するように環境変数名を指定することも(たとえば、「-export = EDITOR」)、特定の値をエクスポートすることもできます(たとえば、「-export = EDITOR = / bin / emacs」)。ALLを指定すると、すべてのユーザー環境変数がロードされ、明示的に指定された環境変数よりも優先されます。
-
- Example: --export=EDITOR,ARG1=test
-
In this example, the propagated environment will only contain the variable EDITOR from the user's environment, SLURM_* environment variables, and ARG1=test.
この例では、伝搬された環境には、ユーザーの環境からの変数EDITOR、SLURM_ *環境変数、およびARG1 = testのみが含まれます。
- Example: --export=ALL,EDITOR=/bin/emacs
-
There are two possible outcomes for this example. If the caller has the EDITOR environment variable defined, then the job's environment will inherit the variable from the caller's environment. If the caller doesn't have an environment variable defined for EDITOR, then the job's environment will use the value given by --export.
この例には、2つの結果が考えられます。呼び出し元にEDITOR環境変数が定義されている場合、ジョブの環境は呼び出し元の環境から変数を継承します。呼び出し元にEDITORに定義された環境変数がない場合、ジョブの環境は--exportで指定された値を使用します。
-
-
- -F, --nodefile=<node file>
-
Much like --nodelist, but the list is contained in a file of name
node file. The node names of the list may also span multiple lines
in the file. Duplicate node names in the file will be ignored.
The order of the node names in the list is not important; the node names
will be sorted by Slurm.
--nodelistによく似ていますが、リストはnode fileという名前のファイルに含まれています。リストのノード名は、ファイル内の複数の行にまたがることがあります。ファイル内の重複するノード名は無視されます。リスト内のノード名の順序は重要ではありません。ノード名はSlurmによってソートされます。
- --gid=<group>
-
If srun is run as root, and the --gid option is used,
submit the job with group's group access permissions. group
may be the group name or the numerical group ID. This option applies to
job allocations.
srunがrootとして実行され、-gidオプションが使用されている場合は、グループのグループアクセス許可を使用してジョブを送信します。groupは、グループ名または数値のグループIDです。このオプションは、ジョブの割り当てに適用されます。
- -G, --gpus=[<type>:]<number>
-
Specify the total number of GPUs required for the job.
An optional GPU type specification can be supplied.
For example "--gpus=volta:3".
Multiple options can be requested in a comma separated list, for example:
"--gpus=volta:3,kepler:1".
See also the --gpus-per-node, --gpus-per-socket and
--gpus-per-task options.
ジョブに必要なGPUの総数を指定します。オプションのGPUタイプ仕様を提供できます。たとえば、「-gpus = volta:3」です。カンマ区切りのリストで複数のオプションをリクエストできます。例: "--gpus = volta:3、kepler:1"。--gpus-per-node、-gpus-per-socket、および--gpus-per-taskオプションも参照してください。
- --gpu-bind=<type>
-
Bind tasks to specific GPUs.
By default every spawned task can access every GPU allocated to the job.
タスクを特定のGPUにバインドします。デフォルトでは、生成されたすべてのタスクは、ジョブに割り当てられたすべてのGPUにアクセスできます。
Supported type options:
サポートされているタイプオプション:
-
- closest
-
Bind each task to the GPU(s) which are closest.
In a NUMA environment, each task may be bound to more than one GPU (i.e.
all GPUs in that NUMA environment).
各タスクを最も近いGPUにバインドします。NUMA環境では、各タスクが複数のGPU(つまり、そのNUMA環境内のすべてのGPU)にバインドされる場合があります。
- map_gpu:<list>
-
Bind by setting GPU masks on tasks (or ranks) as specified where <list> is
<gpu_id_for_task_0>,<gpu_id_for_task_1>,... GPU IDs are interpreted as decimal
values unless they are preceded with '0x' in which case they interpreted as
hexadecimal values. If the number of tasks (or ranks) exceeds the number of
elements in this list, elements in the list will be reused as needed starting
from the beginning of the list. To simplify support for large task counts,
the lists may follow a map with an asterisk and repetition count.
For example "map_gpu:0*4,1*4".
If the task/cgroup plugin is used and ConstrainDevices is set in cgroup.conf,
then the GPU IDs are zero-based indexes relative to the GPUs allocated to the
job (e.g. the first GPU is 0, even if the global ID is 3). Otherwise, the GPU
IDs are global IDs, and all GPUs on each node in the job should be allocated for
predictable binding results.
ここで指定されているように、タスク(またはランク)にGPUマスクを設定してバインドします。 です 、、... GPU IDは、「0x」が前に付いている場合を除き、10進値として解釈されます。この場合、16進値として解釈されます。タスク(またはランク)の数がこのリストの要素の数を超える場合、リストの要素は必要に応じてリストの先頭から再利用されます。大量のタスク数のサポートを簡略化するために、リストはアスタリスクと繰り返し数の付いたマップに従う場合があります。たとえば、「map_gpu:0 * 4,1 * 4」です。task / cgroupプラグインが使用され、ConstrainDevicesがcgroup.confで設定されている場合、GPU IDは、ジョブに割り当てられたGPUに関連するゼロベースのインデックスです(たとえば、グローバルIDが3であっても、最初のGPUは0です)。 。それ以外の場合、GPU IDはグローバルIDであり、ジョブ内の各ノードのすべてのGPUを予測可能なバインディング結果に割り当てる必要があります。
- mask_gpu:<list>
-
Bind by setting GPU masks on tasks (or ranks) as specified where <list> is
<gpu_mask_for_task_0>,<gpu_mask_for_task_1>,... The mapping is specified for
a node and identical mapping is applied to the tasks on every node (i.e. the
lowest task ID on each node is mapped to the first mask specified in the list,
etc.). GPU masks are always interpreted as hexadecimal values but can be
preceded with an optional '0x'. To simplify support for large task counts, the
lists may follow a map with an asterisk and repetition count.
For example "mask_gpu:0x0f*4,0xf0*4".
If the task/cgroup plugin is used and ConstrainDevices is set in cgroup.conf,
then the GPU IDs are zero-based indexes relative to the GPUs allocated to the
job (e.g. the first GPU is 0, even if the global ID is 3). Otherwise, the GPU
IDs are global IDs, and all GPUs on each node in the job should be allocated for
predictable binding results.
ここで指定されているように、タスク(またはランク)にGPUマスクを設定してバインドします。 です 、、...マッピングはノードに指定され、すべてのノードのタスクに同一のマッピングが適用されます(つまり、各ノードの最小のタスクIDがリストで指定された最初のマスクにマッピングされます)。GPUマスクは常に16進値として解釈されますが、オプションの「0x」を前に付けることができます。大量のタスク数のサポートを簡略化するために、リストはアスタリスクと繰り返し数の付いたマップに従う場合があります。たとえば、「mask_gpu:0x0f * 4,0xf0 * 4」です。task / cgroupプラグインが使用され、ConstrainDevicesがcgroup.confで設定されている場合、GPU IDは、ジョブに割り当てられたGPUに関連するゼロベースのインデックスです(たとえば、グローバルIDが3であっても、最初のGPUは0です)。 。それ以外の場合、GPU IDはグローバルIDであり、ジョブ内の各ノードのすべてのGPUを予測可能なバインディング結果に割り当てる必要があります。
-
- --gpu-freq=[<type]=value>[,<type=value>][,verbose]
-
Request that GPUs allocated to the job are configured with specific frequency
values.
This option can be used to independently configure the GPU and its memory
frequencies.
After the job is completed, the frequencies of all affected GPUs will be reset
to the highest possible values.
In some cases, system power caps may override the requested values.
The field type can be "memory".
If type is not specified, the GPU frequency is implied.
The value field can either be "low", "medium", "high", "highm1" or
a numeric value in megahertz (MHz).
If the specified numeric value is not possible, a value as close as
possible will be used. See below for definition of the values.
The verbose option causes current GPU frequency information to be logged.
Examples of use include "--gpu-freq=medium,memory=high" and
"--gpu-freq=450".
ジョブに割り当てられたGPUが特定の頻度値で構成されるように要求します。このオプションは、GPUとそのメモリ周波数を個別に構成するために使用できます。ジョブが完了すると、影響を受けるすべてのGPUの周波数が可能な最高値にリセットされます。場合によっては、システムの消費電力上限が要求された値を上書きすることがあります。フィールドタイプは「メモリ」にすることができます。タイプが指定されていない場合、GPU周波数が暗示されます。値フィールドには、「low」、「medium」、「high」、「highm1」、またはメガヘルツ(MHz)単位の数値を指定できます。指定された数値が不可能な場合は、できるだけ近い値が使用されます。値の定義については、以下を参照してください。詳細オプションを使用すると、現在のGPU周波数情報がログに記録されます。使用例には、「-gpu-freq = medium、
Supported value definitions:
- --gpus-per-node=[<type>:]<number>
-
Specify the number of GPUs required for the job on each node included in
the job's resource allocation.
An optional GPU type specification can be supplied.
For example "--gpus-per-node=volta:3".
Multiple options can be requested in a comma separated list, for example:
"--gpus-per-node=volta:3,kepler:1".
See also the --gpus, --gpus-per-socket and
--gpus-per-task options.
ジョブのリソース割り当てに含まれる各ノードのジョブに必要なGPUの数を指定します。オプションのGPUタイプ仕様を提供できます。たとえば、「-gpus-per-node = volta:3」です。カンマ区切りのリストで複数のオプションをリクエストできます。例: "--gpus-per-node = volta:3、kepler:1"。--gpus、-gpus-per-socket、および--gpus-per-taskオプションも参照してください。
- --gpus-per-socket=[<type>:]<number>
-
Specify the number of GPUs required for the job on each socket included in
the job's resource allocation.
An optional GPU type specification can be supplied.
For example "--gpus-per-socket=volta:3".
Multiple options can be requested in a comma separated list, for example:
"--gpus-per-socket=volta:3,kepler:1".
Requires job to specify a sockets per node count ( --sockets-per-node).
See also the --gpus, --gpus-per-node and
--gpus-per-task options.
This option applies to job allocations.
ジョブのリソース割り当てに含まれる各ソケットのジョブに必要なGPUの数を指定します。オプションのGPUタイプ仕様を提供できます。たとえば、「-gpus-per-socket = volta:3」です。カンマ区切りのリストで複数のオプションをリクエストできます。例: "--gpus-per-socket = volta:3、kepler:1"。ノードごとのソケット数を指定するジョブが必要です(--sockets-per-node)。--gpus、-gpus-per-node、および--gpus-per-taskオプションも参照してください。このオプションは、ジョブの割り当てに適用されます。
- --gpus-per-task=[<type>:]<number>
-
Specify the number of GPUs required for the job on each task to be spawned
in the job's resource allocation.
An optional GPU type specification can be supplied.
For example "--gpus-per-task=volta:1". Multiple options can be
requested in a comma separated list, for example:
"--gpus-per-task=volta:3,kepler:1". See also the --gpus,
--gpus-per-socket and --gpus-per-node options.
This option requires an explicit task count, e.g. -n, --ntasks or "--gpus=X
--gpus-per-task=Y" rather than an ambiguous range of nodes with -N, --nodes.
NOTE: This option will not have any impact on GPU binding, specifically it won't limit the number of devices set for CUDA_VISIBLE_DEVICES.
ジョブのリソース割り当てで生成される各タスクのジョブに必要なGPUの数を指定します。オプションのGPUタイプ仕様を提供できます。たとえば、「-gpus-per-task = volta:1」です。カンマ区切りのリストで複数のオプションをリクエストできます。例: "--gpus-per-task = volta:3、kepler:1"。--gpus、-gpus-per-socket、および--gpus-per-nodeオプションも参照してください。このオプションには、-N、-nodes.NOTEを使用したノードのあいまいな範囲ではなく、明示的なタスクカウントが必要です(例:-n、-ntasks、または "--gpus = X --gpus-per-task = Y")。オプションはGPUバインディングに影響を与えません。具体的には、CUDA_VISIBLE_DEVICESに設定されたデバイスの数を制限しません。
- --gres=<list>
-
Specifies a comma delimited list of generic consumable resources.
The format of each entry on the list is "name[[:type]:count]".
The name is that of the consumable resource.
The count is the number of those resources with a default value of 1.
The count can have a suffix of
"k" or "K" (multiple of 1024),
"m" or "M" (multiple of 1024 x 1024),
"g" or "G" (multiple of 1024 x 1024 x 1024),
"t" or "T" (multiple of 1024 x 1024 x 1024 x 1024),
"p" or "P" (multiple of 1024 x 1024 x 1024 x 1024 x 1024).
The specified resources will be allocated to the job on each node.
The available generic consumable resources is configurable by the system
administrator.
A list of available generic consumable resources will be printed and the
command will exit if the option argument is "help".
Examples of use include "--gres=gpu:2,mic:1", "--gres=gpu:kepler:2", and
"--gres=help".
NOTE: This option applies to job and step allocations. By default, a job step
is allocated all of the generic resources that have allocated to the job.
To change the behavior so that each job step is allocated no generic resources,
explicitly set the value of --gres to specify zero counts for each generic
resource OR set "--gres=none" OR set the SLURM_STEP_GRES environment variable
to "none".
一般的な消耗品リソースのコンマ区切りリストを指定します。リストの各エントリの形式は、「name [[:type]:count]」です。名前は、消費可能なリソースの名前です。カウントは、デフォルト値が1のリソースの数です。カウントには、「k」または「K」(1024の倍数)、「m」または「M」(1024 x 1024の倍数)のサフィックスを付けることができます。 「g」または「G」(1024 x 1024 x 1024の倍数)、「t」または「T」(1024 x 1024 x 1024 x 1024の倍数)、「p」または「P」(1024 x 1024 xの倍数) 1024 x 1024 x 1024)。指定したリソースは、各ノードのジョブに割り当てられます。利用可能な汎用消耗品リソースは、システム管理者が構成できます。利用可能な一般的な消耗品リソースのリストが出力され、オプションの引数が「help」の場合、コマンドは終了します。使用例には、「-gres = gpu:2、mic:1」、「-gres = gpu:kepler:2」、「-gres = help」などがあります。注:このオプションは、ジョブとステップの割り当てに適用されます。デフォルトでは、ジョブステップには、ジョブに割り当てられているすべての汎用リソースが割り当てられます。各ジョブステップに総称リソースが割り当てられないように動作を変更するには、明示的に--gresの値を設定して、各総称リソースのゼロカウントを指定するか、「-gres = none」を設定するか、SLURM_STEP_GRES環境変数を「none」に設定します。
- --gres-flags=<type>
-
Specify generic resource task binding options.
This option applies to job allocations.
汎用リソースタスクバインディングオプションを指定します。このオプションは、ジョブの割り当てに適用されます。
-
- disable-binding
-
isable filtering of CPUs with respect to generic resource locality.
This option is currently required to use more CPUs than are bound to a GRES
(i.e. if a GPU is bound to the CPUs on one socket, but resources on more than
one socket are required to run the job).
This option may permit a job to be allocated resources sooner than otherwise
possible, but may result in lower job performance.
汎用リソースの局所性に関するCPUの有効なフィルタリング。このオプションは現在、GRESにバインドされているよりも多くのCPUを使用するために必要です(つまり、GPUが1つのソケット上のCPUにバインドされているが、ジョブを実行するために複数のソケット上のリソースが必要な場合)。このオプションを使用すると、他の方法よりも早くジョブにリソースを割り当てることができますが、ジョブのパフォーマンスが低下する可能性があります。
- enforce-binding
-
The only CPUs available to the job will be those bound to the selected
GRES (i.e. the CPUs identified in the gres.conf file will be strictly
enforced). This option may result in delayed initiation of a job.
For example a job requiring two GPUs and one CPU will be delayed until both
GPUs on a single socket are available rather than using GPUs bound to separate
sockets, however the application performance may be improved due to improved
communication speed.
Requires the node to be configured with more than one socket and resource
filtering will be performed on a per-socket basis.
ジョブで使用できるCPUは、選択したGRESにバインドされているCPUのみです(つまり、gres.confファイルで識別されたCPUが厳密に適用されます)。このオプションにより、ジョブの開始が遅れる場合があります。たとえば、2つのGPUと1つのCPUを必要とするジョブは、別々のソケットにバインドされたGPUを使用するのではなく、単一のソケットで両方のGPUが使用可能になるまで遅延しますが、通信速度が向上するため、アプリケーションのパフォーマンスは向上する可能性があります。ノードが複数のソケットで構成されている必要があり、リソースフィルタリングはソケットごとに実行されます。
-
- -H, --hold
-
Specify the job is to be submitted in a held state (priority of zero).
A held job can now be released using scontrol to reset its priority
(e.g. "scontrol release <job_id>"). This option applies to job
allocations.
ジョブを保留状態(優先度0)でサブミットすることを指定します。保留中のジョブは、scontrolを使用して解放して優先順位をリセットできるようになりました(例: "scontrol release"")。このオプションは、ジョブの割り当てに適用されます。
- -h, --help
-
Display help information and exit.
ヘルプ情報を表示して終了します。
- --hint=<type>
-
Bind tasks according to application hints.
アプリケーションのヒントに従ってタスクをバインドします。
-
- compute_bound
-
Select settings for compute bound applications:
use all cores in each socket, one thread per core.
コンピュートバインドアプリケーションの設定を選択します。各ソケットですべてのコアを使用し、コアごとに1つのスレッドを使用します。
- memory_bound
-
Select settings for memory bound applications:
use only one core in each socket, one thread per core.
メモリにバインドされたアプリケーションの設定を選択します。各ソケットでコアを1つだけ使用し、コアごとに1つのスレッドを使用します。
- [no]multithread
-
[don't] use extra threads with in-core multi-threading
which can benefit communication intensive applications.
Only supported with the task/affinity plugin.
通信集約型アプリケーションにメリットをもたらす可能性のある、コア内マルチスレッドで追加のスレッドを使用しないでください。タスク/アフィニティプラグインでのみサポートされます。
- help
-
show this help message
このヘルプメッセージを表示
- This option applies to job allocations.
このオプションは、ジョブの割り当てに適用されます。
-
- -I, --immediate[=<seconds>]
-
exit if resources are not available within the
time period specified.
If no argument is given (seconds defaults to 1), resources must be available
immediately for the request to succeed. If defer is configured in
SchedulerParameters and seconds=1 the allocation request will fail
immediately; defer conflicts and takes precedence over this option.
By default, --immediate is off, and the command
will block until resources become available. Since this option's
argument is optional, for proper parsing the single letter option
must be followed immediately with the value and not include a
space between them. For example "-I60" and not "-I 60". This option applies
to job and step allocations.
指定された期間内にリソースが利用できない場合は終了します。引数が指定されていない場合(秒のデフォルトは1です)、リクエストが成功するには、リソースがすぐに使用可能である必要があります。遅延がSchedulerParametersおよびseconds = 1で構成されている場合、割り当て要求はすぐに失敗します。競合を延期し、このオプションよりも優先します。デフォルトでは、-immediateはオフであり、リソースが使用可能になるまでコマンドはブロックされます。このオプションの引数はオプションであるため、適切な解析を行うには、1文字のオプションの直後に値を入れ、間にスペースを入れないでください。たとえば、「-I60」ではなく「-I60」。このオプションは、ジョブとステップの割り当てに適用されます。
- -i, --input=<mode>
-
Specify how stdin is to redirected. By default,
srun
redirects stdin from the terminal all tasks. See IO Redirection
below for more options.
For OS X, the poll() function does not support stdin, so input from
a terminal is not possible. This option applies to job and step allocations.
stdinのリダイレクト方法を指定します。デフォルトでは、srunはすべてのタスクを端末からstdinにリダイレクトします。その他のオプションについては、以下のIOリダイレクトを参照してください。OS Xの場合、poll()関数はstdinをサポートしていないため、端末からの入力はできません。このオプションは、ジョブとステップの割り当てに適用されます。
- -J, --job-name=<jobname>
-
Specify a name for the job. The specified name will appear along with
the job id number when querying running jobs on the system. The default
is the supplied executable program's name. NOTE: This information
may be written to the slurm_jobacct.log file. This file is space delimited
so if a space is used in the jobname name it will cause problems in
properly displaying the contents of the slurm_jobacct.log file when the
sacct command is used. This option applies to job and step allocations.
ジョブの名前を指定します。指定した名前は、システムで実行中のジョブを照会するときに、ジョブID番号とともに表示されます。デフォルトは、提供された実行可能プログラムの名前です。注:この情報は、slurm_jobacct.logファイルに書き込まれる場合があります。このファイルはスペースで区切られているため、ジョブ名の名前にスペースを使用すると、sacctコマンドを使用したときにslurm_jobacct.logファイルの内容を適切に表示する際に問題が発生します。このオプションは、ジョブとステップの割り当てに適用されます。
- --jobid=<jobid>
-
Initiate a job step under an already allocated job with job id id.
Using this option will cause srun to behave exactly as if the
SLURM_JOB_ID environment variable was set. This option applies to step
allocations.
ジョブID idの割り当て済みジョブの下でジョブステップを開始します。このオプションを使用すると、srunは、SLURM_JOB_ID環境変数が設定されているかのように動作します。このオプションは、ステップ割り当てに適用されます。
- -K, --kill-on-bad-exit[=0|1]
-
Controls whether or not to terminate a step if any task exits with a non-zero
exit code. If this option is not specified, the default action will be based
upon the Slurm configuration parameter of KillOnBadExit. If this option
is specified, it will take precedence over KillOnBadExit. An option
argument of zero will not terminate the job. A non-zero argument or no
argument will terminate the job.
Note: This option takes precedence over the -W, --wait option
to terminate the job immediately if a task exits with a non-zero exit code.
Since this option's argument is optional, for proper parsing the
single letter option must be followed immediately with the value and
not include a space between them. For example "-K1" and not "-K 1".
タスクがゼロ以外の終了コードで終了した場合にステップを終了するかどうかを制御します。このオプションが指定されていない場合、デフォルトのアクションはKillOnBadExitのSlurm構成パラメーターに基づきます。このオプションを指定すると、KillOnBadExitよりも優先されます。ゼロのオプション引数はジョブを終了しません。ゼロ以外の引数を指定するか、引数を指定しないと、ジョブが終了します。注:このオプションは、-W、--waitオプションよりも優先され、タスクがゼロ以外の終了コードで終了した場合にジョブを即時に終了します。このオプションの引数はオプションであるため、適切な解析を行うには、1文字のオプションの直後に値を入れ、間にスペースを入れないでください。たとえば、「-K 1」ではなく「-K1」。
- -k, --no-kill [=off]
-
Do not automatically terminate a job if one of the nodes it has been
allocated fails. This option applies to job and step allocations.
The job will assume all responsibilities for fault-tolerance.
Tasks launch using this option will not be considered terminated
(e.g. -K, --kill-on-bad-exit and
-W, --wait options will have no effect upon the job step).
The active job step (MPI job) will likely suffer a fatal error,
but subsequent job steps may be run if this option is specified.
Specify an optional argument of "off" disable the effect of the SLURM_NO_KILL environment variable.
割り当てられたノードの1つが失敗した場合、ジョブを自動的に終了しません。このオプションは、ジョブとステップの割り当てに適用されます。ジョブは、フォールトトレランスのすべての責任を負います。このオプションを使用してタスクを起動しても、終了したとは見なされません(たとえば、-K、-kill-on-bad-exitおよび-W、-waitオプションは、ジョブステップに影響を与えません)。アクティブなジョブステップ(MPIジョブ)で致命的なエラーが発生する可能性がありますが、このオプションが指定されている場合、後続のジョブステップが実行される可能性があります。オプションの引数 "off"を指定すると、SLURM_NO_KILL環境変数の効果が無効になります。
The default action is to terminate the job upon node failure.
デフォルトのアクションは、ノード障害時にジョブを終了することです。
- -l, --label
-
Prepend task number to lines of stdout/err.
The --label option will prepend lines of output with the remote
task id. This option applies to step allocations.
stdout / errの行にタスク番号を追加します。--labelオプションは、出力の行にリモートタスクIDを付加します。このオプションは、ステップ割り当てに適用されます。
- -L, --licenses=<license>
-
Specification of licenses (or other resources available on all
nodes of the cluster) which must be allocated to this job.
License names can be followed by a colon and count
(the default count is one).
Multiple license names should be comma separated (e.g.
"--licenses=foo:4,bar"). This option applies to job allocations.
このジョブに割り当てる必要があるライセンス(またはクラスターのすべてのノードで使用可能なその他のリソース)の指定。ライセンス名の後にコロンとカウントを続けることができます(デフォルトのカウントは1です)。複数のライセンス名はカンマで区切る必要があります(例: "--licenses = foo:4、bar")。このオプションは、ジョブの割り当てに適用されます。
- -M, --clusters=<string>
-
Clusters to issue commands to. Multiple cluster names may be comma separated.
The job will be submitted to the one cluster providing the earliest expected
job initiation time. The default value is the current cluster. A value of
'all' will query to run on all clusters. Note the
--export option to control environment variables exported
between clusters.
This option applies only to job allocations.
Note that the SlurmDBD must be up for this option to work properly.
コマンドを発行するクラスター。複数のクラスター名はコンマで区切ることができます。ジョブは、予想される最も早いジョブ開始時間を提供する1つのクラスターに送信されます。デフォルト値は現在のクラスターです。「all」の値は、すべてのクラスターで実行するように照会します。クラスター間でエクスポートされる環境変数を制御する--exportオプションに注意してください。このオプションは、ジョブの割り当てにのみ適用されます。このオプションが正しく機能するには、SlurmDBDが稼働している必要があります。
- -m, --distribution=
-
*|block|cyclic|arbitrary|plane=<options>
[:*|block|cyclic|fcyclic[:*|block|
cyclic|fcyclic]][,Pack|NoPack]
Specify alternate distribution methods for remote processes. This option controls the distribution of tasks to the nodes on which resources have been allocated, and the distribution of those resources to tasks for binding (task affinity). The first distribution method (before the first ":") controls the distribution of tasks to nodes. The second distribution method (after the first ":") controls the distribution of allocated CPUs across sockets for binding to tasks. The third distribution method (after the second ":") controls the distribution of allocated CPUs across cores for binding to tasks. The second and third distributions apply only if task affinity is enabled. The third distribution is supported only if the task/cgroup plugin is configured. The default value for each distribution type is specified by *.
リモートプロセスの代替配布方法を指定します。このオプションは、リソースが割り当てられているノードへのタスクの分散、およびバインドのためのタスクへのそれらのリソースの分散(タスクアフィニティ)を制御します。最初の分散方法(最初の ":"の前)は、ノードへのタスクの分散を制御します。2番目の分散方法(最初の ":"の後)は、タスクにバインドするためにソケット間で割り当てられたCPUの分散を制御します。3番目の分散方法(2番目の ":"の後)は、タスクにバインドするためにコア全体に割り当てられたCPUの分散を制御します。2番目と3番目のディストリビューションは、タスクアフィニティが有効な場合にのみ適用されます。3番目のディストリビューションは、task / cgroupプラグインが構成されている場合にのみサポートされます。各配布タイプのデフォルト値は*で指定されます。
Note that with select/cons_res, the number of CPUs allocated on each socket and node may be different. Refer to the mc_support document for more information on resource allocation, distribution of tasks to nodes, and binding of tasks to CPUs.
select / cons_resでは、各ソケットとノードに割り当てられるCPUの数が異なる場合があることに注意してください。リソースの割り当て、ノードへのタスクの分散、CPUへのタスクのバインドの詳細については、mc_supportドキュメントを参照してください。
-
First distribution method (distribution of tasks across nodes):
最初の分散方法(ノード間のタスクの分散):
- *
-
Use the default method for distributing tasks to nodes (block).
ノード(ブロック)へのタスクの分散にはデフォルトの方法を使用します。
- block
-
The block distribution method will distribute tasks to a node such
that consecutive tasks share a node. For example, consider an
allocation of three nodes each with two cpus. A four-task block
distribution request will distribute those tasks to the nodes with
tasks one and two on the first node, task three on the second node,
and task four on the third node. Block distribution is the default
behavior if the number of tasks exceeds the number of allocated nodes.
ブロック分散方式は、連続するタスクがノードを共有するように、タスクをノードに分散します。たとえば、それぞれ2つのCPUを持つ3つのノードの割り当てを考えてみます。4タスクブロック配布リクエストは、これらのタスクをノードに配布します。最初のノードではタスク1と2、2番目のノードではタスク3、3番目のノードではタスク4です。タスクの数が割り当てられたノードの数を超える場合、ブロック分散がデフォルトの動作です。
- cyclic
-
The cyclic distribution method will distribute tasks to a node such
that consecutive tasks are distributed over consecutive nodes (in a
round-robin fashion). For example, consider an allocation of three
nodes each with two cpus. A four-task cyclic distribution request
will distribute those tasks to the nodes with tasks one and four on
the first node, task two on the second node, and task three on the
third node.
Note that when SelectType is select/cons_res, the same number of CPUs
may not be allocated on each node. Task distribution will be
round-robin among all the nodes with CPUs yet to be assigned to tasks.
Cyclic distribution is the default behavior if the number
of tasks is no larger than the number of allocated nodes.
循環分散方式では、連続したタスクが連続したノードに(ラウンドロビン方式で)分散されるように、タスクがノードに分散されます。たとえば、それぞれ2つのCPUを持つ3つのノードの割り当てを考えてみます。4タスクの周期的配布リクエストでは、これらのタスクをノードに配布します。最初のノードではタスク1および4、2番目のノードではタスク2、3番目のノードではタスク3です。SelectTypeがselect / cons_resの場合、各ノードに同じ数のCPUが割り当てられない場合があることに注意してください。タスクの分散は、CPUがまだタスクに割り当てられていないすべてのノード間でラウンドロビンになります。タスクの数が割り当てられたノードの数以下の場合、循環分散がデフォルトの動作です。
- plane
-
The tasks are distributed in blocks of a specified size. The options
include a number representing the size of the task block. This is
followed by an optional specification of the task distribution scheme
within a block of tasks and between the blocks of tasks. The number of tasks
distributed to each node is the same as for cyclic distribution, but the
taskids assigned to each node depend on the plane size. For more
details (including examples and diagrams), please see
the mc_support document
and
https://slurm.schedmd.com/dist_plane.html
タスクは、指定されたサイズのブロックに分散されます。オプションには、タスクブロックのサイズを表す数値が含まれます。これに続いて、タスクのブロック内およびタスクのブロック間のタスク分散スキームのオプションの仕様が続きます。各ノードに配布されるタスクの数は循環配布と同じですが、各ノードに割り当てられるタスクIDは平面サイズによって異なります。詳細(例と図を含む)については、mc_supportドキュメントおよびhttps://slurm.schedmd.com/dist_plane.htmlを参照してください
- arbitrary
-
The arbitrary method of distribution will allocate processes in-order
as listed in file designated by the environment variable
SLURM_HOSTFILE. If this variable is listed it will over ride any
other method specified. If not set the method will default to block.
Inside the hostfile must contain at minimum the number of hosts
requested and be one per line or comma separated. If specifying a
task count (-n, --ntasks=<number>), your tasks
will be laid out on the nodes in the order of the file.
任意の分散方法では、環境変数SLURM_HOSTFILEで指定されたファイルにリストされている順序でプロセスが割り当てられます。この変数がリストされている場合、指定された他のメソッドに優先します。設定しない場合、メソッドはデフォルトでブロックします。hostfile内には、少なくとも要求されたホストの数が含まれている必要があり、1行ごとに1つまたはコンマで区切られている必要があります。タスク数を指定する場合(-n、-ntasks =)、タスクはファイルの順序でノードに配置されます。
NOTE: The arbitrary distribution option on a job allocation only controls the nodes to be allocated to the job and not the allocation of CPUs on those nodes. This option is meant primarily to control a job step's task layout in an existing job allocation for the srun command.
注記:ジョブ割り当ての任意分散オプションは、ジョブに割り当てられるノードのみを制御し、それらのノードのCPUの割り当ては制御しません。このオプションは主に、srunコマンドの既存のジョブ割り当てでジョブステップのタスクレイアウトを制御するためのものです。
NOTE: If number of tasks is given and a list of requested nodes is also given the number of nodes used from that list will be reduced to match that of the number of tasks if the number of nodes in the list is greater than the number of tasks.
注:タスクの数が指定され、要求されたノードのリストも指定されている場合、リスト内のノードの数がタスクの数よりも多い場合、そのリストから使用されるノードの数はタスクの数と一致するように削減されますタスク。
- Second distribution method (distribution of CPUs across sockets for binding):
2番目の分散方法(バインディング用のソケット間でのCPUの分散): - *
-
Use the default method for distributing CPUs across sockets (cyclic).
ソケット間でCPUを分散させるには、デフォルトの方法を使用します(サイクリック)。
- block
-
The block distribution method will distribute allocated CPUs
consecutively from the same socket for binding to tasks, before using
the next consecutive socket.
ブロック分散方式では、割り当てられたCPUを同じソケットから連続的に分散して、タスクにバインドしてから、次の連続したソケットを使用します。
- cyclic
-
The cyclic distribution method will distribute allocated CPUs for
binding to a given task consecutively from the same socket, and
from the next consecutive socket for the next task, in a
round-robin fashion across sockets.
循環分散方式では、割り当てられたCPUを、同じソケットから連続して、次のタスクの次の連続ソケットから、ソケット間でラウンドロビン方式で、特定のタスクにバインドします。
- fcyclic
-
The fcyclic distribution method will distribute allocated CPUs
for binding to tasks from consecutive sockets in a
round-robin fashion across the sockets.
fcyclic分散方式は、連続するソケットからのタスクにバインドするために割り当てられたCPUを、ソケット全体にラウンドロビン方式で分散します。
- Third distribution method (distribution of CPUs across cores for binding):
3番目の分散方法(バインディングのためのコア全体のCPUの分散): - *
-
Use the default method for distributing CPUs across cores
(inherited from second distribution method).
CPUをコアに分散するためにデフォルトの方法を使用します(2番目の分散方法から継承されます)。
- block
-
The block distribution method will distribute allocated CPUs
consecutively from the same core for binding to tasks, before using
the next consecutive core.
ブロック分散方式では、次の連続したコアを使用する前に、割り当てられたCPUを同じコアから連続的に分散してタスクにバインドします。
- cyclic
-
The cyclic distribution method will distribute allocated CPUs for
binding to a given task consecutively from the same core, and
from the next consecutive core for the next task, in a
round-robin fashion across cores.
循環分散方式では、割り当てられたCPUを、同じコアから連続して、および次のタスクの次の連続コアから、コア全体にラウンドロビン方式で、特定のタスクにバインドします。
- fcyclic
-
The fcyclic distribution method will distribute allocated CPUs
for binding to tasks from consecutive cores in a
round-robin fashion across the cores.
fcyclic分散方式は、連続するコアからのタスクにバインドするために割り当てられたCPUを、コア全体にラウンドロビン方式で分散します。
- Optional control for task distribution over nodes:
ノード上のタスク分散のオプションの制御: - Pack
-
Rather than evenly distributing a job step's tasks evenly across its allocated
nodes, pack them as tightly as possible on the nodes.
This only applies when the "block" task distribution method is used.
ジョブステップのタスクを割り当てられたノード全体に均等に分散するのではなく、ノード上で可能な限り密にパックします。これは、「ブロック」タスク分散方式が使用されている場合にのみ適用されます。
- NoPack
-
Rather than packing a job step's tasks as tightly as possible on the nodes,
distribute them evenly.
This user option will supersede the SelectTypeParameters CR_Pack_Nodes
configuration parameter.
ノードにジョブステップのタスクをできるだけ密にパックするのではなく、均等に分散します。このユーザーオプションは、SelectTypeParameters CR_Pack_Nodes構成パラメーターに優先します。
- This option applies to job and step allocations.
このオプションは、ジョブとステップの割り当てに適用されます。
-
First distribution method (distribution of tasks across nodes):
- --mail-type=<type>
-
Notify user by email when certain event types occur.
Valid type values are NONE, BEGIN, END, FAIL, REQUEUE, ALL (equivalent to
BEGIN, END, FAIL, REQUEUE, and STAGE_OUT), STAGE_OUT (burst buffer stage out
and teardown completed), TIME_LIMIT, TIME_LIMIT_90 (reached 90 percent of time limit),
TIME_LIMIT_80 (reached 80 percent of time limit), and TIME_LIMIT_50
(reached 50 percent of time limit).
Multiple type values may be specified in a comma separated list.
The user to be notified is indicated with --mail-user. This option
applies to job allocations.
特定の種類のイベントが発生したときに電子メールでユーザーに通知します。有効なタイプ値は、NONE、BEGIN、END、FAIL、REQUEUE、ALL(BEGIN、END、FAIL、REQUEUE、およびSTAGE_OUTと同じ)、STAGE_OUT(バーストバッファーのステージアウトおよびティアダウンの完了)、TIME_LIMIT、TIME_LIMIT_90(90%の時間に達した)です。制限)、TIME_LIMIT_80(時間制限の80%に達した)、およびTIME_LIMIT_50(時間制限の50%に達した)。複数のタイプ値をコンマ区切りリストで指定できます。通知されるユーザーは--mail-userで示されます。このオプションは、ジョブの割り当てに適用されます。
- --mail-user=<user>
-
User to receive email notification of state changes as defined by
--mail-type.
The default value is the submitting user. This option applies to job
allocations.
--mail-typeで定義された状態変更の電子メール通知を受信するユーザー。デフォルト値は送信ユーザーです。このオプションは、ジョブの割り当てに適用されます。
- --mcs-label=<mcs>
-
Used only when the mcs/group plugin is enabled.
This parameter is a group among the groups of the user.
Default value is calculated by the Plugin mcs if it's enabled. This option
applies to job allocations.
mcs / groupプラグインが有効な場合にのみ使用されます。このパラメーターは、ユーザーのグループの中のグループです。デフォルト値は、有効になっている場合、プラグインmcsによって計算されます。このオプションは、ジョブの割り当てに適用されます。
- --mem=<size[units]>
-
Specify the real memory required per node.
Default units are megabytes unless the SchedulerParameters configuration
parameter includes the "default_gbytes" option for gigabytes.
Different units can be specified using the suffix [K|M|G|T].
Default value is DefMemPerNode and the maximum value is
MaxMemPerNode. If configured, both of parameters can be
seen using the scontrol show config command.
This parameter would generally be used if whole nodes
are allocated to jobs (SelectType=select/linear).
Specifying a memory limit of zero for a job step will restrict the job step
to the amount of memory allocated to the job, but not remove any of the job's
memory allocation from being available to other job steps.
Also see --mem-per-cpu and --mem-per-gpu.
The --mem, --mem-per-cpu and --mem-per-gpu
options are mutually exclusive. If --mem, --mem-per-cpu or
--mem-per-gpu are specified as command line arguments, then they will
take precedence over the environment (potentially inherited from salloc
or sbatch).
ノードごとに必要な実メモリを指定します。SchedulerParameters構成パラメーターにギガバイトの「default_gbytes」オプションが含まれていない限り、デフォルトの単位はメガバイトです。接尾辞[K | M | G | T]を使用して、さまざまな単位を指定できます。デフォルト値はDefMemPerNodeで、最大値はMaxMemPerNodeです。構成されている場合、scontrol show configコマンドを使用して両方のパラメーターを表示できます。このパラメーターは通常、ノード全体がジョブに割り当てられている場合に使用されます(SelectType = select / linear)。ジョブステップにゼロのメモリ制限を指定すると、ジョブステップはジョブに割り当てられたメモリの量に制限されますが、他のジョブステップで使用可能なジョブのメモリ割り当ては削除されません。--mem-per-cpuおよび--mem-per-gpuも参照してください。--mem、-mem-per-cpu、および--mem-per-gpuオプションは相互に排他的です。--memの場合、
NOTE: A memory size specification of zero is treated as a special case and grants the job access to all of the memory on each node for newly submitted jobs and all available job memory to a new job steps.
注:メモリサイズの指定がゼロの場合は、特別なケースとして扱われ、新しく送信されたジョブの各ノードのすべてのメモリへのアクセスと、新しいジョブステップで使用可能なすべてのジョブメモリを許可します。
Specifying new memory limits for job steps are only advisory.
ジョブステップに新しいメモリ制限を指定することは、助言のみです。
If the job is allocated multiple nodes in a heterogeneous cluster, the memory limit on each node will be that of the node in the allocation with the smallest memory size (same limit will apply to every node in the job's allocation).
ジョブに異種クラスターの複数のノードが割り当てられている場合、各ノードのメモリ制限は、メモリサイズが最小の割り当てのノードのメモリ制限になります(同じ制限がジョブの割り当てのすべてのノードに適用されます)。
NOTE: Enforcement of memory limits currently relies upon the task/cgroup plugin or enabling of accounting, which samples memory use on a periodic basis (data need not be stored, just collected). In both cases memory use is based upon the job's Resident Set Size (RSS). A task may exceed the memory limit until the next periodic accounting sample.
注:現在、メモリ制限の実施は、タスク/ cgroupプラグインまたはアカウンティングの有効化に依存しています。これは、定期的にメモリ使用をサンプリングします(データを保存する必要はなく、収集するだけです)。どちらの場合も、メモリ使用量はジョブの常駐セットサイズ(RSS)に基づいています。次の定期的なアカウンティングサンプルまで、タスクがメモリ制限を超える可能性があります。
This option applies to job and step allocations.
このオプションは、ジョブとステップの割り当てに適用されます。
- --mem-per-cpu=<size[units]>
-
Minimum memory required per allocated CPU.
Default units are megabytes unless the SchedulerParameters configuration
parameter includes the "default_gbytes" option for gigabytes.
Different units can be specified using the suffix [K|M|G|T].
Default value is DefMemPerCPU and the maximum value is MaxMemPerCPU
(see exception below). If configured, both of parameters can be
seen using the scontrol show config command.
Note that if the job's --mem-per-cpu value exceeds the configured
MaxMemPerCPU, then the user's limit will be treated as a memory limit
per task; --mem-per-cpu will be reduced to a value no larger than
MaxMemPerCPU; --cpus-per-task will be set and the value of
--cpus-per-task multiplied by the new --mem-per-cpu
value will equal the original --mem-per-cpu value specified by
the user.
This parameter would generally be used if individual processors
are allocated to jobs (SelectType=select/cons_res).
If resources are allocated by the core, socket or whole nodes; the number
of CPUs allocated to a job may be higher than the task count and the value
of --mem-per-cpu should be adjusted accordingly.
Specifying a memory limit of zero for a job step will restrict the job step
to the amount of memory allocated to the job, but not remove any of the job's
memory allocation from being available to other job steps.
Also see --mem and --mem-per-gpu.
The --mem, --mem-per-cpu and --mem-per-gpu
options are mutually exclusive.
割り当てられたCPUごとに必要な最小メモリ。SchedulerParameters構成パラメーターにギガバイトの「default_gbytes」オプションが含まれていない限り、デフォルトの単位はメガバイトです。接尾辞[K | M | G | T]を使用して、さまざまな単位を指定できます。デフォルト値はDefMemPerCPUで、最大値はMaxMemPerCPUです(以下の例外を参照)。構成されている場合、scontrol show configコマンドを使用して両方のパラメーターを表示できます。ジョブの--mem-per-cpu値が構成済みのMaxMemPerCPUを超える場合、ユーザーの制限はタスクごとのメモリ制限として扱われることに注意してください。--mem-per-cpuは、MaxMemPerCPU以下の値に削減されます。--cpus-per-taskが設定され、-cpus-per-taskに新しい--mem-per-cpu値を掛けた値は、ユーザーが指定した元の--mem-per-cpu値と等しくなります。このパラメーターは通常、個々のプロセッサーがジョブに割り当てられている場合に使用されます(SelectType = select / cons_res)。リソースがコア、ソケット、またはノード全体によって割り当てられている場合。ジョブに割り当てられたCPUの数はタスク数よりも多くなる可能性があり、それに応じて--mem-per-cpuの値を調整する必要があります。ジョブステップにゼロのメモリ制限を指定すると、ジョブステップはジョブに割り当てられたメモリの量に制限されますが、他のジョブステップで使用可能なジョブのメモリ割り当ては削除されません。--memおよび--mem-per-gpuも参照してください。--mem、-mem-per-cpu、および--mem-per-gpuオプションは相互に排他的です。
NOTE:If the final amount of memory requested by job (eg.: when --mem-per-cpu use with --exclusive option) can't be satisfied by any of nodes configured in the partition, the job will be rejected.
注:ジョブによって要求されたメモリの最終的な量(例:--mem-per-cpuが--exclusiveオプションで使用される場合)が、パーティションで構成されたどのノードでも満たすことができない場合、ジョブは拒否されます。
- --mem-per-gpu=<size[units]>
-
Minimum memory required per allocated GPU.
Default units are megabytes unless the SchedulerParameters configuration
parameter includes the "default_gbytes" option for gigabytes.
Different units can be specified using the suffix [K|M|G|T].
Default value is DefMemPerGPU and is available on both a global and
per partition basis.
If configured, the parameters can be seen using the scontrol show config
and scontrol show partition commands.
Also see --mem.
The --mem, --mem-per-cpu and --mem-per-gpu
options are mutually exclusive.
割り当てられたGPUごとに必要な最小メモリ。SchedulerParameters構成パラメーターにギガバイトの「default_gbytes」オプションが含まれていない限り、デフォルトの単位はメガバイトです。接尾辞[K | M | G | T]を使用して、さまざまな単位を指定できます。デフォルト値はDefMemPerGPUで、グローバルとパーティション単位の両方で使用できます。構成されている場合、パラメーターはscontrol show configおよびscontrol show partitionコマンドを使用して表示できます。--memも参照してください。--mem、-mem-per-cpu、および--mem-per-gpuオプションは相互に排他的です。
- --mem-bind=[{quiet,verbose},]type
-
Bind tasks to memory. Used only when the task/affinity plugin is enabled
and the NUMA memory functions are available.
Note that the resolution of CPU and memory binding
may differ on some architectures. For example, CPU binding may be performed
at the level of the cores within a processor while memory binding will
be performed at the level of nodes, where the definition of "nodes"
may differ from system to system.
By default no memory binding is performed; any task using any CPU can use
any memory. This option is typically used to ensure that each task is bound to
the memory closest to its assigned CPU. The use of any type other than
"none" or "local" is not recommended.
If you want greater control, try running a simple test code with the
options "--cpu-bind=verbose,none --mem-bind=verbose,none" to determine
the specific configuration.
タスクをメモリにバインドします。タスク/アフィニティプラグインが有効で、NUMAメモリ機能が使用可能な場合にのみ使用されます。CPUとメモリのバインディングの解像度は、一部のアーキテクチャでは異なる場合があることに注意してください。たとえば、CPUバインディングはプロセッサ内のコアのレベルで実行され、メモリバインディングはノードのレベルで実行されます。「ノード」の定義はシステムによって異なる場合があります。デフォルトでは、メモリバインディングは実行されません。CPUを使用するタスクはメモリを使用できます。このオプションは通常、各タスクが割り当てられたCPUに最も近いメモリにバインドされるようにするために使用されます。「なし」または「ローカル」以外のタイプの使用は推奨されません。より詳細な制御が必要な場合は、オプション「--cpu-bind = verbose、none --mem-bind = verbose、none」を使用して簡単なテストコードを実行してみてください
NOTE: To have Slurm always report on the selected memory binding for all commands executed in a shell, you can enable verbose mode by setting the SLURM_MEM_BIND environment variable value to "verbose".
注:Slurmが常にシェルで実行されるすべてのコマンドの選択されたメモリバインディングについてレポートするようにするには、SLURM_MEM_BIND環境変数の値を "verbose"に設定して詳細モードを有効にします。
The following informational environment variables are set when
次の情報環境変数は、
--mem-bind is in use:SLURM_MEM_BIND_LIST SLURM_MEM_BIND_PREFER SLURM_MEM_BIND_SORT SLURM_MEM_BIND_TYPE SLURM_MEM_BIND_VERBOSE
See the ENVIRONMENT VARIABLES section for a more detailed description of the individual SLURM_MEM_BIND* variables.
個々のSLURM_MEM_BIND *変数の詳細については、環境変数のセクションを参照してください。
Supported options include:
サポートされるオプションは次のとおりです。
-
- help
-
show this help message
このヘルプメッセージを表示
- local
-
Use memory local to the processor in use
使用中のプロセッサのローカルメモリを使用する
- map_mem:<list>
-
Bind by setting memory masks on tasks (or ranks) as specified where <list> is
<numa_id_for_task_0>,<numa_id_for_task_1>,...
The mapping is specified for a node and identical mapping is applied to the
tasks on every node (i.e. the lowest task ID on each node is mapped to the
first ID specified in the list, etc.).
NUMA IDs are interpreted as decimal values unless they are preceded
with '0x' in which case they interpreted as hexadecimal values.
If the number of tasks (or ranks) exceeds the number of elements in this list,
elements in the list will be reused as needed starting from the beginning of
the list.
To simplify support for large task counts, the lists may follow a map with an
asterisk and repetition count.
For example "map_mem:0x0f*4,0xf0*4".
For predictable binding results, all CPUs for each node in the job should be
allocated to the job.
タスク(またはランク)にメモリマスクを設定してバインドします。 です 、、...マッピングはノードに指定され、同じマッピングがすべてのノードのタスクに適用されます(つまり、各ノードの最小のタスクIDがリストで指定された最初のIDにマッピングされます)。NUMA IDは、 '0x'が前に付いていない限り10進値として解釈されます。その場合、16進値として解釈されます。タスク(またはランク)の数がこのリストの要素の数を超える場合、リストの要素は必要に応じてリストの先頭から再利用されます。大量のタスク数のサポートを簡略化するために、リストはアスタリスクと繰り返し数の付いたマップに従う場合があります。たとえば、「map_mem:0x0f * 4,0xf0 * 4」です。予測可能なバインディング結果を得るには、ジョブの各ノードのすべてのCPUをジョブに割り当てる必要があります。
- mask_mem:<list>
-
Bind by setting memory masks on tasks (or ranks) as specified where <list> is
<numa_mask_for_task_0>,<numa_mask_for_task_1>,...
The mapping is specified for a node and identical mapping is applied to the
tasks on every node (i.e. the lowest task ID on each node is mapped to the
first mask specified in the list, etc.).
NUMA masks are always interpreted as hexadecimal values.
Note that masks must be preceded with a '0x' if they don't begin
with [0-9] so they are seen as numerical values.
If the number of tasks (or ranks) exceeds the number of elements in this list,
elements in the list will be reused as needed starting from the beginning of
the list.
To simplify support for large task counts, the lists may follow a mask with an
asterisk and repetition count.
For example "mask_mem:0*4,1*4".
For predictable binding results, all CPUs for each node in the job should be
allocated to the job.
タスク(またはランク)にメモリマスクを設定してバインドします。 です 、、...マッピングはノードに指定され、すべてのノードのタスクに同一のマッピングが適用されます(つまり、各ノードの最小のタスクIDがリストで指定された最初のマスクにマッピングされます)。NUMAマスクは常に16進値として解釈されます。マスクが[0-9]で始まらない場合は、マスクの前に「0x」を付ける必要があるため、数値として表示されることに注意してください。タスク(またはランク)の数がこのリストの要素の数を超える場合、リストの要素は必要に応じてリストの先頭から再利用されます。大量のタスクカウントのサポートを簡略化するために、リストはアスタリスクと繰り返しカウントのあるマスクに続く場合があります。たとえば、「mask_mem:0 * 4,1 * 4」です。予測可能なバインディング結果を得るには、ジョブの各ノードのすべてのCPUをジョブに割り当てる必要があります。
- no[ne]
-
don't bind tasks to memory (default)
タスクをメモリにバインドしない(デフォルト)
- nosort
-
avoid sorting free cache pages (default, LaunchParameters configuration
parameter can override this default)
空きキャッシュページのソートを回避します(デフォルト、LaunchParameters構成パラメーターはこのデフォルトをオーバーライドできます)
- p[refer]
-
Prefer use of first specified NUMA node, but permit
use of other available NUMA nodes.
最初に指定されたNUMAノードの使用を優先しますが、他の使用可能なNUMAノードの使用を許可します。
- q[uiet]
-
quietly bind before task runs (default)
タスクの実行前に静かにバインドする(デフォルト)
- rank
-
bind by task rank (not recommended)
タスクランクによるバインド(非推奨)
- sort
-
sort free cache pages (run zonesort on Intel KNL nodes)
空きキャッシュページの並べ替え(Intel KNLノードでzonesortを実行)
- v[erbose]
- verbosely report binding before task runs
- This option applies to job and step allocations.
タスクの実行前にバインディングを詳細にレポートこのオプションは、ジョブとステップの割り当てに適用されます。
-
- --mincpus=<n>
-
Specify a minimum number of logical cpus/processors per node. This option
applies to job allocations.
ノードあたりの論理CPU /プロセッサの最小数を指定します。このオプションは、ジョブの割り当てに適用されます。
- --msg-timeout=<seconds>
-
Modify the job launch message timeout.
The default value is MessageTimeout in the Slurm configuration file slurm.conf.
Changes to this are typically not recommended, but could be useful to diagnose problems.
This option applies to job allocations.
ジョブ起動メッセージのタイムアウトを変更します。デフォルト値は、Slurm構成ファイルslurm.confのMessageTimeoutです。通常、これを変更することはお勧めしませんが、問題の診断に役立つ可能性があります。このオプションは、ジョブの割り当てに適用されます。
- --mpi=<mpi_type>
-
Identify the type of MPI to be used. May result in unique initiation
procedures.
使用するMPIのタイプを特定します。独自の開始手順が発生する可能性があります。
-
- list
-
Lists available mpi types to choose from.
選択可能な利用可能なmpiタイプをリストします。
- pmi2
-
To enable PMI2 support. The PMI2 support in Slurm works only if the MPI
implementation supports it, in other words if the MPI has the PMI2
interface implemented. The --mpi=pmi2 will load the library
lib/slurm/mpi_pmi2.so which provides the server side functionality but
the client side must implement PMI2_Init() and the other interface calls.
PMI2サポートを有効にします。SlurmでのPMI2サポートは、MPI実装がサポートしている場合、つまりMPIにPMI2インターフェースが実装されている場合にのみ機能します。--mpi = pmi2は、サーバー側の機能を提供するライブラリlib / slurm / mpi_pmi2.soをロードしますが、クライアント側はPMI2_Init()およびその他のインターフェース呼び出しを実装する必要があります。
- pmix
-
To enable PMIx support (http://pmix.github.io/master). The PMIx support
in Slurm can be used to launch parallel applications (e.g. MPI) if it
supports PMIx, PMI2 or PMI1. Slurm must be configured with pmix support
by passing "--with-pmix=<PMIx installation path>" option to its
"./configure" script.
PMIxサポートを有効にするには(http://pmix.github.io/master)。SlurmのPMIxサポートは、PMIx、PMI2、またはPMI1をサポートしている場合、並列アプリケーション(MPIなど)を起動するために使用できます。Slurmは、「-with-pmix =「./configure」スクリプトの「オプション」。
At the time of writing PMIx is supported in Open MPI starting from version 2.0. PMIx also supports backward compatibility with PMI1 and PMI2 and can be used if MPI was configured with PMI2/PMI1 support pointing to the PMIx library ("libpmix"). If MPI supports PMI1/PMI2 but doesn't provide the way to point to a specific implementation, a hack'ish solution leveraging LD_PRELOAD can be used to force "libpmix" usage.
執筆時点では、PMIxはバージョン2.0以降のOpen MPIでサポートされています。PMIxは、PMI1およびPMI2との下位互換性もサポートしており、MPIがPMIxライブラリー(「libpmix」)を指すPMI2 / PMI1サポートで構成されている場合に使用できます。MPIがPMI1 / PMI2をサポートしているが、特定の実装を指す方法を提供していない場合、LD_PRELOADを利用するハックっぽいソリューションを使用して、「libpmix」の使用を強制できます。
- none
-
No special MPI processing. This is the default and works with
many other versions of MPI.
特別なMPI処理はありません。これはデフォルトであり、他の多くのバージョンのMPIで動作します。
- This option applies to step allocations.
このオプションは、ステップ割り当てに適用されます。
-
- --multi-prog
-
Run a job with different programs and different arguments for
each task. In this case, the executable program specified is
actually a configuration file specifying the executable and
arguments for each task. See MULTIPLE PROGRAM CONFIGURATION
below for details on the configuration file contents. This option applies to
step allocations.
タスクごとに異なるプログラムと異なる引数を使用してジョブを実行します。この場合、指定された実行可能プログラムは実際には、各タスクの実行可能ファイルと引数を指定する構成ファイルです。設定ファイルの内容の詳細については、以下の「複数プログラムの設定」を参照してください。このオプションは、ステップ割り当てに適用されます。
- -N, --nodes=<minnodes[-maxnodes]>
-
Request that a minimum of minnodes nodes be allocated to this job.
A maximum node count may also be specified with maxnodes.
If only one number is specified, this is used as both the minimum and
maximum node count.
The partition's node limits supersede those of the job.
If a job's node limits are outside of the range permitted for its
associated partition, the job will be left in a PENDING state.
This permits possible execution at a later time, when the partition
limit is changed.
If a job node limit exceeds the number of nodes configured in the
partition, the job will be rejected.
Note that the environment
variable SLURM_JOB_NUM_NODES (and SLURM_NNODES for backwards compatibility)
will be set to the count of nodes actually
allocated to the job. See the ENVIRONMENT VARIABLES section
for more information. If -N is not specified, the default
behavior is to allocate enough nodes to satisfy the requirements of
the -n and -c options.
The job will be allocated as many nodes as possible within the range specified
and without delaying the initiation of the job.
If number of tasks is given and a number of requested nodes is also given the
number of nodes used from that request will be reduced to match that of the
number of tasks if the number of nodes in the request is greater than the number
of tasks.
The node count specification may include a numeric value followed by a suffix
of "k" (multiplies numeric value by 1,024) or "m" (multiplies numeric value by
1,048,576). This option applies to job and step allocations.
最小のminnodesノードがこのジョブに割り当てられることを要求します。最大ノード数もmaxnodesで指定できます。数値を1つだけ指定した場合、これは最小ノード数と最大ノード数の両方として使用されます。パーティションのノード制限は、ジョブのノード制限に優先します。ジョブのノード制限が、関連付けられたパーティションに許可されている範囲外の場合、ジョブはPENDING状態のままになります。これにより、パーティションの制限が変更されたときに、後で実行することができます。ジョブノードの制限がパーティションに構成されているノードの数を超えると、ジョブは拒否されます。環境変数SLURM_JOB_NUM_NODES(および下位互換性のためのSLURM_NNODES)は、ジョブに実際に割り当てられたノードの数に設定されることに注意してください。詳細については、「環境変数」セクションを参照してください。-Nが指定されていない場合、デフォルトの動作では、-nおよび-cオプションの要件を満たすのに十分なノードを割り当てます。ジョブは、指定された範囲内で、ジョブの開始を遅らせることなく、できるだけ多くのノードに割り当てられます。タスクの数が指定され、要求されたノードの数も指定されている場合、要求内のノードの数がタスクの数よりも多い場合、その要求から使用されるノードの数は、タスクの数と一致するように削減されます。ノード数の指定には、数値の後に接尾辞「k」(数値に1,024を乗算)または「m」(数値に1,048,576を乗算)を含めることができます。このオプションは、ジョブとステップの割り当てに適用されます。ジョブは、指定された範囲内で、ジョブの開始を遅らせることなく、できるだけ多くのノードに割り当てられます。
- -n, --ntasks=<number>
-
Specify the number of tasks to run. Request that srun
allocate resources for ntasks tasks.
The default is one task per node, but note
that the --cpus-per-task option will change this default. This option
applies to job and step allocations.
実行するタスクの数を指定します。srunがntasksタスクにリソースを割り当てるように要求します。デフォルトはノードごとに1つのタスクですが、-cpus-per-taskオプションはこのデフォルトを変更することに注意してください。このオプションは、ジョブとステップの割り当てに適用されます。
- --network=<type>
-
Specify information pertaining to the switch or network.
The interpretation of type is system dependent.
This option is supported when running Slurm on a Cray natively. It is
used to request using Network Performance Counters.
Only one value per request is valid.
All options are case in-sensitive.
In this configuration supported values include:
スイッチまたはネットワークに関する情報を指定します。タイプの解釈はシステムに依存します。このオプションは、クレイでSlurmをネイティブに実行する場合にサポートされます。ネットワークパフォーマンスカウンターを使用して要求するために使用されます。リクエストごとに有効な値は1つだけです。すべてのオプションは大文字と小文字を区別しません。この構成でサポートされる値は次のとおりです。
-
- system
-
Use the system-wide network performance counters. Only nodes requested
will be marked in use for the job allocation. If the job does not
fill up the entire system the rest of the nodes are not
able to be used by other jobs using NPC, if idle their state will appear as
PerfCnts. These nodes are still available for other jobs not using NPC.
システム全体のネットワークパフォーマンスカウンターを使用します。要求されたノードのみがジョブ割り当てに使用中としてマークされます。ジョブがシステム全体を満たさない場合、残りのノードは、NPCを使用する他のジョブで使用できません。アイドルの場合、その状態はPerfCntsとして表示されます。これらのノードは、NPCを使用していない他のジョブで引き続き使用できます。
- blade
-
Use the blade network performance counters. Only nodes requested
will be marked in use for the job allocation. If the job does not
fill up the entire blade(s) allocated to the job those blade(s) are not
able to be used by other jobs using NPC, if idle their state will appear as
PerfCnts. These nodes are still available for other jobs not using NPC.
ブレードネットワークパフォーマンスカウンターを使用します。要求されたノードのみがジョブ割り当てに使用中としてマークされます。ジョブがジョブに割り当てられたブレード全体を満たさない場合、それらのブレードはNPCを使用する他のジョブで使用できません。アイドル状態の場合、その状態はPerfCntsとして表示されます。これらのノードは、NPCを使用していない他のジョブで引き続き使用できます。
In all cases the job or step allocation request must specify the --exclusive option. Otherwise the request will be denied.
すべての場合において、ジョブまたはステップ割り当てリクエストは--exclusiveオプションを指定する必要があります。それ以外の場合、要求は拒否されます。
Also with any of these options steps are not allowed to share blades, so resources would remain idle inside an allocation if the step running on a blade does not take up all the nodes on the blade.
また、これらのオプションのいずれかを使用すると、ブレードを共有するステップが許可されないため、ブレードで実行されているステップがブレード上のすべてのノードを占有しない場合、リソースは割り当て内でアイドルのままになります。
The network option is also supported on systems with IBM's Parallel Environment (PE). See IBM's LoadLeveler job command keyword documentation about the keyword "network" for more information. Multiple values may be specified in a comma separated list. All options are case in-sensitive. Supported values include:
ネットワークオプションは、IBMの並列環境(PE)を備えたシステムでもサポートされています。詳細については、キーワード「ネットワーク」に関するIBMのLoadLevelerジョブコマンドキーワードのドキュメントを参照してください。複数の値をコンマ区切りのリストで指定できます。すべてのオプションは大文字と小文字を区別しません。サポートされる値は次のとおりです。
-
- BULK_XFER[=<resources>]
-
Enable bulk transfer of data using Remote Direct-Memory Access (RDMA).
The optional resources specification is a numeric value which can have
a suffix of "k", "K", "m", "M", "g" or "G" for kilobytes, megabytes or
gigabytes.
NOTE: The resources specification is not supported by the underlying
IBM infrastructure as of Parallel Environment version 2.2 and no value should
be specified at this time.
The devices allocated to a job must all be of the same type.
The default value depends upon depends upon what hardware is available and in
order of preferences is IPONLY (which is not considered in User Space mode),
HFI, IB, HPCE, and KMUX.
リモートダイレクトメモリアクセス(RDMA)を使用してデータの一括転送を有効にします。オプションのリソース指定は数値であり、キロバイト、メガバイト、またはギガバイトを表す「k」、「K」、「m」、「M」、「g」、または「G」のサフィックスを付けることができます。注記:Parallelsバージョン2.2の時点では、リソースの仕様は基盤となるIBMインフラストラクチャではサポートされていないため、現時点では値を指定しないでください。ジョブに割り当てられるデバイスはすべて同じタイプでなければなりません。デフォルト値は、使用可能なハードウェアに依存し、優先順位はIPONLY(ユーザー空間モードでは考慮されません)、HFI、IB、HPCE、およびKMUXです。
- CAU=<count>
-
Number of Collective Acceleration Units (CAU) required.
Applies only to IBM Power7-IH processors.
Default value is zero.
Independent CAU will be allocated for each programming interface (MPI, LAPI, etc.)
必要な集団加速ユニット(CAU)の数。IBM Power7-IHプロセッサーにのみ適用されます。デフォルト値はゼロです。独立したCAUが各プログラミングインターフェイス(MPI、LAPIなど)に割り当てられます。
- DEVNAME=<name>
-
Specify the device name to use for communications (e.g. "eth0" or "mlx4_0").
通信に使用するデバイス名を指定します(例: "eth0"または "mlx4_0")。
- DEVTYPE=<type>
-
Specify the device type to use for communications.
The supported values of type are:
"IB" (InfiniBand), "HFI" (P7 Host Fabric Interface),
"IPONLY" (IP-Only interfaces), "HPCE" (HPC Ethernet), and
"KMUX" (Kernel Emulation of HPCE).
The devices allocated to a job must all be of the same type.
The default value depends upon depends upon what hardware is available and in
order of preferences is IPONLY (which is not considered in User Space mode),
HFI, IB, HPCE, and KMUX.
通信に使用するデバイスタイプを指定します。タイプのサポートされている値は、「IB」(InfiniBand)、「HFI」(P7ホストファブリックインターフェース)、「IPONLY」(IP専用インターフェース)、「HPCE」(HPCイーサネット)、および「KMUX」(のカーネルエミュレーション)です。 HPCE)。ジョブに割り当てられるデバイスはすべて同じタイプでなければなりません。デフォルト値は、使用可能なハードウェアに依存し、優先順位はIPONLY(ユーザー空間モードでは考慮されません)、HFI、IB、HPCE、およびKMUXです。
- IMMED =<count>
-
Number of immediate send slots per window required.
Applies only to IBM Power7-IH processors.
Default value is zero.
必要なウィンドウごとの即時送信スロットの数。IBM Power7-IHプロセッサーにのみ適用されます。デフォルト値はゼロです。
- INSTANCES =<count>
-
Specify number of network connections for each task on each network connection.
The default instance count is 1.
各ネットワーク接続の各タスクのネットワーク接続の数を指定します。デフォルトのインスタンス数は1です。
- IPV4
-
Use Internet Protocol (IP) version 4 communications (default).
インターネットプロトコル(IP)バージョン4通信を使用します(デフォルト)。
- IPV6
-
Use Internet Protocol (IP) version 6 communications.
インターネットプロトコル(IP)バージョン6通信を使用します。
- LAPI
-
Use the LAPI programming interface.
LAPIプログラミングインターフェイスを使用します。
- MPI
-
Use the MPI programming interface.
MPI is the default interface.
MPIプログラミングインターフェイスを使用します。MPIはデフォルトのインターフェースです。
- PAMI
-
Use the PAMI programming interface.
PAMIプログラミングインターフェイスを使用します。
- SHMEM
-
Use the OpenSHMEM programming interface.
OpenSHMEMプログラミングインターフェイスを使用します。
- SN_ALL
-
Use all available switch networks (default).
使用可能なすべてのスイッチネットワークを使用します(デフォルト)。
- SN_SINGLE
-
Use one available switch network.
使用可能なスイッチネットワークを1つ使用します。
- UPC
-
Use the UPC programming interface.
UPCプログラミングインターフェイスを使用します。
- US
- Use User Space communications.
-
Some examples of network specifications:
ユーザー空間通信を使用します。ネットワーク仕様のいくつかの例:
- Instances=2,US,MPI,SN_ALL
-
Create two user space connections for MPI communications on every switch
network for each task.
各タスクのすべてのスイッチネットワークでMPI通信用に2つのユーザー空間接続を作成します。
- US,MPI,Instances=3,Devtype=IB
-
Create three user space connections for MPI communications on every InfiniBand
network for each task.
各タスクのすべてのInfiniBandネットワークでMPI通信用に3つのユーザー空間接続を作成します。
- IPV4,LAPI,SN_Single
-
Create a IP version 4 connection for LAPI communications on one switch network
for each task.
タスクごとに1つのスイッチネットワークでLAPI通信用のIPバージョン4接続を作成します。
- Instances=2,US,LAPI,MPI
-
Create two user space connections each for LAPI and MPI communications on every
switch network for each task. Note that SN_ALL is the default option so every
switch network is used. Also note that Instances=2 specifies that two
connections are established for each protocol (LAPI and MPI) and each task.
If there are two networks and four tasks on the node then a total
of 32 connections are established (2 instances x 2 protocols x 2 networks x
4 tasks).
各タスクのすべてのスイッチネットワークで、LAPIおよびMPI通信ごとに2つのユーザー空間接続を作成します。SN_ALLがデフォルトのオプションであるため、すべてのスイッチネットワークが使用されることに注意してください。また、Instances = 2は、各プロトコル(LAPIおよびMPI)と各タスクに対して2つの接続が確立されることを指定することに注意してください。ノードに2つのネットワークと4つのタスクがある場合、合計32の接続が確立されます(2つのインスタンスx 2つのプロトコルx 2つのネットワークx 4つのタスク)。
- This option applies to job and step allocations.
このオプションは、ジョブとステップの割り当てに適用されます。
-
- --nice[=adjustment]
-
Run the job with an adjusted scheduling priority within Slurm. With no
adjustment value the scheduling priority is decreased by 100. A negative nice
value increases the priority, otherwise decreases it. The adjustment range is
+/- 2147483645. Only privileged users can specify a negative adjustment.
Slurm内で調整されたスケジューリング優先順位でジョブを実行します。調整値がない場合、スケジューリングの優先順位は100ずつ減少します。負のnice値は優先順位を上げ、それ以外の場合は下げます。調整範囲は+/- 2147483645です。負の調整を指定できるのは特権ユーザーのみです。
- --ntasks-per-core=<ntasks>
-
Request the maximum ntasks be invoked on each core.
This option applies to the job allocation, but not to step allocations.
Meant to be used with the --ntasks option.
Related to --ntasks-per-node except at the core level
instead of the node level. Masks will automatically be generated
to bind the tasks to specific core unless --cpu-bind=none
is specified.
NOTE: This option is not supported unless SelectType=cons_res is
configured (either directly or indirectly on Cray systems)
along with the node's core count.
各コアで呼び出される最大ntasksを要求します。このオプションはジョブ割り当てに適用されますが、ステップ割り当てには適用されません。--ntasksオプションと一緒に使用する必要があります。ノードレベルではなくコアレベルを除いて、ノードごとの--ntasks-perに関連しています。--cpu-bind = noneが指定されていない限り、マスクは自動的に生成され、タスクを特定のコアにバインドします。注:このオプションは、SelectType = cons_resがノードのコア数とともに(Crayシステムで直接または間接的に)構成されていない限りサポートされません。
- --ntasks-per-node=<ntasks>
-
Request that ntasks be invoked on each node.
If used with the --ntasks option, the --ntasks option will take
precedence and the --ntasks-per-node will be treated as a
maximum count of tasks per node.
Meant to be used with the --nodes option.
This is related to --cpus-per-task=ncpus,
but does not require knowledge of the actual number of cpus on
each node. In some cases, it is more convenient to be able to
request that no more than a specific number of tasks be invoked
on each node. Examples of this include submitting
a hybrid MPI/OpenMP app where only one MPI "task/rank" should be
assigned to each node while allowing the OpenMP portion to utilize
all of the parallelism present in the node, or submitting a single
setup/cleanup/monitoring job to each node of a pre-existing
allocation as one step in a larger job script. This option applies to job
allocations.
各ノードでntasksが呼び出されるように要求します。--ntasksオプションとともに使用した場合、-ntasksオプションが優先され、-ntasks-per-nodeはノードあたりのタスクの最大数として扱われます。--nodesオプションと一緒に使用する必要があります。これは--cpus-per-task = ncpusに関連していますが、各ノードの実際のcpus数を知っている必要はありません。場合によっては、特定の数以下のタスクが各ノードで呼び出されるように要求できる方が便利です。この例には、OpenMP部分がノードに存在するすべての並列処理を利用できるようにしながら、各ノードに1つのMPI "タスク/ランク"のみを割り当てる必要があるハイブリッドMPI / OpenMPアプリの送信、または単一のセットアップ/クリーンアップ/より大きなジョブスクリプトの1つのステップとして、既存の割り当ての各ノードへのジョブを監視します。
- --ntasks-per-socket=<ntasks>
-
Request the maximum ntasks be invoked on each socket.
This option applies to the job allocation, but not to step allocations.
Meant to be used with the --ntasks option.
Related to --ntasks-per-node except at the socket level
instead of the node level. Masks will automatically be generated
to bind the tasks to specific sockets unless --cpu-bind=none
is specified.
NOTE: This option is not supported unless SelectType=cons_res is
configured (either directly or indirectly on Cray systems)
along with the node's socket count.
各ソケットで呼び出される最大ntasksを要求します。このオプションはジョブ割り当てに適用されますが、ステップ割り当てには適用されません。--ntasksオプションと一緒に使用する必要があります。ノードレベルではなくソケットレベルを除いて、ノードごとの--ntasks-perに関連しています。--cpu-bind = noneが指定されていない限り、タスクは特定のソケットにバインドするために自動的に生成されます。注:このオプションは、SelectType = cons_resがノードのソケットカウントとともに(Crayシステムで直接または間接的に)構成されていない限りサポートされません。
- -O, --overcommit
-
Overcommit resources. This option applies to job and step allocations.
When applied to job allocation, only one CPU is allocated to the job per node
and options used to specify the number of tasks per node, socket, core, etc.
are ignored.
When applied to job step allocations (the srun command when executed
within an existing job allocation), this option can be used to launch more than
one task per CPU.
Normally, srun will not allocate more than one process per CPU.
By specifying --overcommit you are explicitly allowing more than one
process per CPU. However no more than MAX_TASKS_PER_NODE tasks are
permitted to execute per node. NOTE: MAX_TASKS_PER_NODE is
defined in the file slurm.h and is not a variable, it is set at
Slurm build time.
リソースをオーバーコミットします。このオプションは、ジョブとステップの割り当てに適用されます。ジョブ割り当てに適用すると、ノードごとに1つのCPUのみがジョブに割り当てられ、ノード、ソケット、コアなどごとのタスク数を指定するために使用されるオプションは無視されます。ジョブステップ割り当て(既存のジョブ割り当て内で実行された場合のsrunコマンド)に適用すると、このオプションを使用して、CPUごとに複数のタスクを起動できます。通常、srunはCPUごとに複数のプロセスを割り当てません。--overcommitを指定すると、CPUごとに複数のプロセスを明示的に許可することになります。ただし、ノードごとに実行できるタスクはMAX_TASKS_PER_NODEを超えません。注:MAX_TASKS_PER_NODEはslurm.hファイルで定義されており、変数ではなく、Slurmビルド時に設定されます。
- -o, --output=<filename pattern>
-
Specify the "filename pattern" for stdout redirection. By default in
interactive mode,
stdoutリダイレクトの「ファイル名パターン」を指定します。対話モードのデフォルトでは、
srun collects stdout from all tasks and sends this output via TCP/IP to the attached terminal. With --output stdout may be redirected to a file, to one file per task, or to /dev/null. See section IO Redirection below for the various forms of filename pattern. If the specified file already exists, it will be overwritten.
If --error is not also specified on the command line, both stdout and stderr will directed to the file specified by --output. This option applies to job and step allocations.
すべてのタスクからstdoutを収集し、この出力をTCP / IP経由で接続された端末に送信します。--outputを使用すると、stdoutはファイル、タスクごとに1つのファイル、または/ dev / nullにリダイレクトできます。ファイル名パターンのさまざまな形式については、以下の「IOリダイレクト」を参照してください。指定されたファイルがすでに存在する場合は上書きされます.-- errorがコマンドラインで指定されていない場合、stdoutとstderrの両方が--outputで指定されたファイルに送信されます。このオプションは、ジョブとステップの割り当てに適用されます。
- --open-mode=<append|truncate>
-
Open the output and error files using append or truncate mode as specified.
For heterogeneous job steps the default value is "append".
Otherwise the default value is specified by the system configuration parameter
JobFileAppend. This option applies to job and step allocations.
指定された追加モードまたは切り捨てモードを使用して、出力ファイルとエラーファイルを開きます。異種ジョブステップの場合、デフォルト値は「追加」です。それ以外の場合、デフォルト値はシステム構成パラメーターJobFileAppendによって指定されます。このオプションは、ジョブとステップの割り当てに適用されます。
- --het-group=<expr>
-
Identify each component in a heterogeneous job allocation for which a step is
to be created. Applies only to srun commands issued inside a salloc allocation
or sbatch script.
<expr> is a set of integers corresponding to one or more options
offsets on the salloc or sbatch command line.
Examples: "--het-group=2", "--het-group=0,4", "--het-group=1,3-5".
The default value is --het-group=0.
ステップを作成する異種ジョブ割り当ての各コンポーネントを特定します。salloc割り当てまたはsbatchスクリプト内で発行されたsrunコマンドにのみ適用されます。sallocまたはsbatchコマンドラインの1つ以上のオプションオフセットに対応する整数のセットです。例:「--het-group = 2」、「-het-group = 0,4」、「-het-group = 1,3-5」。デフォルト値は--het-group = 0です。
- -p, --partition=<partition_names>
-
Request a specific partition for the resource allocation. If not specified,
the default behavior is to allow the slurm controller to select the default
partition as designated by the system administrator. If the job can use more
than one partition, specify their names in a comma separate list and the one
offering earliest initiation will be used with no regard given to the partition
name ordering (although higher priority partitions will be considered first).
When the job is initiated, the name of the partition used will be placed first
in the job record partition string. This option applies to job allocations.
リソース割り当てのために特定のパーティションを要求します。指定しない場合、デフォルトの動作では、slurmコントローラがシステム管理者が指定したデフォルトのパーティションを選択できます。ジョブが複数のパーティションを使用できる場合は、コンマ区切りのリストでそれらの名前を指定します。パーティション名の順序に関係なく、最初に提供されたものが最初に使用されます(優先度の高いパーティションが最初に考慮されます)。ジョブが開始されると、使用されるパーティションの名前がジョブレコードパーティション文字列の最初に配置されます。このオプションは、ジョブの割り当てに適用されます。
- --power=<flags>
-
Comma separated list of power management plugin options.
Currently available flags include:
level (all nodes allocated to the job should have identical power caps,
may be disabled by the Slurm configuration option PowerParameters=job_no_level).
This option applies to job allocations.
電源管理プラグインオプションのカンマ区切りリスト。現在利用可能なフラグは次のとおりです:レベル(ジョブに割り当てられたすべてのノードは同一の電力上限を持つ必要があり、Slurm構成オプションPowerParameters = job_no_levelによって無効にされる場合があります)。このオプションは、ジョブの割り当てに適用されます。
- --priority=<value>
-
Request a specific job priority.
May be subject to configuration specific constraints.
value should either be a numeric value or "TOP" (for highest possible value).
Only Slurm operators and administrators can set the priority of a job.
This option applies to job allocations only.
特定のジョブの優先順位を要求します。構成固有の制約を受ける場合があります。値は、数値または「TOP」(可能な最大値の場合)のいずれかである必要があります。Slurmオペレーターと管理者のみがジョブの優先順位を設定できます。このオプションは、ジョブの割り当てにのみ適用されます。
- --profile=<all|none|[energy[,|task[,|filesystem[,|network]]]]>
-
enables detailed data collection by the acct_gather_profile plugin.
Detailed data are typically time-series that are stored in an HDF5 file for
the job or an InfluxDB database depending on the configured plugin.
acct_gather_profileプラグインによる詳細なデータ収集を有効にします。詳細なデータは通常、構成されたプラグインに応じて、ジョブのHDF5ファイルまたはInfluxDBデータベースに保存される時系列です。
-
- All
-
All data types are collected. (Cannot be combined with other values.)
すべてのデータ型が収集されます。(他の値と組み合わせることはできません。)
- None
-
No data types are collected. This is the default.
(Cannot be combined with other values.)
データタイプは収集されません。これがデフォルトです。(他の値と組み合わせることはできません。)
- Energy
-
Energy data is collected.
エネルギーデータが収集されます。
- Task
-
Task (I/O, Memory, ...) data is collected.
タスク(I / O、メモリ、...)データが収集されます。
- Filesystem
-
Filesystem data is collected.
ファイルシステムのデータが収集されます。
- Network
-
Network (InfiniBand) data is collected.
ネットワーク(InfiniBand)データが収集されます。
- This option applies to job and step allocations.
このオプションは、ジョブとステップの割り当てに適用されます。
-
- --prolog=<executable>
-
srun will run executable just before launching the job step.
The command line arguments for executable will be the command
and arguments of the job step. If executable is "none", then
no srun prolog will be run. This parameter overrides the SrunProlog
parameter in slurm.conf. This parameter is completely independent from
the Prolog parameter in slurm.conf. This option applies to job allocations.
srunは、ジョブステップを起動する直前に実行可能ファイルを実行します。実行可能ファイルのコマンドライン引数は、ジョブステップのコマンドと引数になります。実行可能ファイルが「なし」の場合、srunプロローグは実行されません。このパラメーターは、slurm.confのSrunPrologパラメーターをオーバーライドします。このパラメーターは、slurm.confのPrologパラメーターから完全に独立しています。このオプションは、ジョブの割り当てに適用されます。
- --propagate[=rlimit[,rlimit...]]
-
Allows users to specify which of the modifiable (soft) resource limits
to propagate to the compute nodes and apply to their jobs. If no
rlimit is specified, then all resource limits will be propagated.
The following rlimit names are supported by Slurm (although some
options may not be supported on some systems):
ユーザーは、変更可能な(ソフト)リソース制限のどれを計算ノードに伝達してジョブに適用するかを指定できます。rlimitを指定しない場合、すべてのリソース制限が伝搬されます。以下のrlimit名はSlurmでサポートされています(ただし、一部のシステムではサポートされないオプションもあります)。
-
- ALL
-
All limits listed below (default)
以下にリストされているすべての制限(デフォルト)
- NONE
-
No limits listed below
以下に制限なし
- AS
-
The maximum address space for a process
プロセスの最大アドレス空間
- CORE
-
The maximum size of core file
コアファイルの最大サイズ
- CPU
-
The maximum amount of CPU time
CPU時間の最大量
- DATA
-
The maximum size of a process's data segment
プロセスのデータセグメントの最大サイズ
- FSIZE
-
The maximum size of files created. Note that if the user sets FSIZE to less
than the current size of the slurmd.log, job launches will fail with
a 'File size limit exceeded' error.
作成されるファイルの最大サイズ。ユーザーがFSIZEをslurmd.logの現在のサイズ未満に設定すると、ジョブの起動は「ファイルサイズの制限を超えました」エラーで失敗することに注意してください。
- MEMLOCK
-
The maximum size that may be locked into memory
メモリにロックできる最大サイズ
- NOFILE
-
The maximum number of open files
開いているファイルの最大数
- NPROC
-
The maximum number of processes available
利用可能なプロセスの最大数
- RSS
-
The maximum resident set size
最大常駐セットサイズ
- STACK
-
The maximum stack size
最大スタックサイズ
- This option applies to job allocations.
このオプションは、ジョブの割り当てに適用されます。
-
- --pty
-
Execute task zero in pseudo terminal mode.
Implicitly sets --unbuffered.
Implicitly sets --error and --output to /dev/null
for all tasks except task zero, which may cause those tasks to
exit immediately (e.g. shells will typically exit immediately
in that situation).
This option applies to step allocations.
疑似端末モードでタスク0を実行します。暗黙的に--unbufferedを設定します。タスク0を除くすべてのタスクの--errorおよび--outputを暗黙的に/ dev / nullに設定します。これにより、これらのタスクがすぐに終了する可能性があります(たとえば、シェルは通常、その状況ですぐに終了します)。このオプションは、ステップ割り当てに適用されます。
- -q, --qos=<qos>
-
Request a quality of service for the job. QOS values can be defined
for each user/cluster/account association in the Slurm database.
Users will be limited to their association's defined set of qos's when
the Slurm configuration parameter, AccountingStorageEnforce, includes
"qos" in its definition. This option applies to job allocations.
ジョブのサービス品質を要求します。QOS値は、Slurmデータベース内のユーザー/クラスター/アカウントの関連付けごとに定義できます。Slurm構成パラメーターであるAccountingStorageEnforceの定義に「qos」が含まれている場合、ユーザーは関連付けで定義されているqosのセットに制限されます。このオプションは、ジョブの割り当てに適用されます。
- -Q, --quiet
-
Suppress informational messages from srun. Errors will still be displayed. This
option applies to job and step allocations.
srunからの情報メッセージを抑制します。エラーは引き続き表示されます。このオプションは、ジョブとステップの割り当てに適用されます。
- --quit-on-interrupt
-
Quit immediately on single SIGINT (Ctrl-C). Use of this option
disables the status feature normally available when srun receives
a single Ctrl-C and causes srun to instead immediately terminate the
running job. This option applies to step allocations.
単一のSIGINTですぐに終了します(Ctrl-C)。このオプションを使用すると、srunが単一のCtrl-Cを受け取ったときに通常使用可能なステータス機能が無効になり、代わりにsrunが実行中のジョブを直ちに終了します。このオプションは、ステップ割り当てに適用されます。
- -r, --relative=<n>
-
Run a job step relative to node n of the current allocation.
This option may be used to spread several job steps out among the
nodes of the current job. If -r is used, the current job
step will begin at node n of the allocated nodelist, where
the first node is considered node 0. The -r option is not
permitted with -w or -x option and will result in a
fatal error when not running within a prior allocation (i.e. when
SLURM_JOB_ID is not set). The default for n is 0. If the
value of --nodes exceeds the number of nodes identified
with the --relative option, a warning message will be
printed and the --relative option will take precedence. This option
applies to step allocations.
現在の割り当てのノードnに関連するジョブステップを実行します。このオプションは、現在のジョブのノード間でいくつかのジョブステップを広げるために使用できます。-rが使用されている場合、現在のジョブステップは、割り当てられたノードリストのノードnで始まります。最初のノードはノード0と見なされます。-rオプションは-wまたは-xオプションと一緒に使用できないため、致命的なエラーが発生します以前の割り当て内で実行されていない場合(つまり、SLURM_JOB_IDが設定されていない場合)。nのデフォルトは0です。--nodesの値が--relativeオプションで識別されるノードの数を超える場合、警告メッセージが出力され、-relativeオプションが優先されます。このオプションは、ステップ割り当てに適用されます。
- --reboot
-
Force the allocated nodes to reboot before starting the job.
This is only supported with some system configurations and will otherwise be
silently ignored. Only root, SlurmUser or admins can reboot nodes. This
option applies to job allocations.
ジョブを開始する前に、割り当てられたノードを強制的に再起動します。これは一部のシステム構成でのみサポートされ、それ以外の場合は黙って無視されます。ルート、SlurmUser、または管理者のみがノードを再起動できます。このオプションは、ジョブの割り当てに適用されます。
- --resv-ports[=count]
-
Reserve communication ports for this job. Users can specify the number
of port they want to reserve. The parameter MpiParams=ports=12000-12999
must be specified in slurm.conf. If not specified and Slurm's OpenMPI
plugin is used, then by default the number of reserved equal to the highest
number of tasks on any node in the job step allocation.
If the number of reserved ports is zero then no ports is reserved.
Used for OpenMPI. This option applies to job and step allocations.
このジョブのために通信ポートを予約します。ユーザーは、予約するポートの数を指定できます。パラメータMpiParams = ports = 12000-12999は、slurm.confで指定する必要があります。指定されておらず、SlurmのOpenMPIプラグインが使用されている場合、デフォルトでは、予約済みの数は、ジョブステップ割り当て内の任意のノード上のタスクの最大数と同じです。予約済みポートの数がゼロの場合、ポートは予約されません。OpenMPIに使用されます。このオプションは、ジョブとステップの割り当てに適用されます。
- --reservation=<name>
-
Allocate resources for the job from the named reservation. This option applies
to job allocations.
指定された予約からジョブにリソースを割り当てます。このオプションは、ジョブの割り当てに適用されます。
- -s, --oversubscribe
-
The job allocation can over-subscribe resources with other running jobs.
The resources to be over-subscribed can be nodes, sockets, cores, and/or
hyperthreads depending upon configuration.
The default over-subscribe behavior depends on system configuration and the
partition's OverSubscribe option takes precedence over the job's option.
This option may result in the allocation being granted sooner than if the
--oversubscribe option was not set and allow higher system utilization, but
application performance will likely suffer due to competition for resources.
Also see the --exclusive option. This option applies to step allocations.
ジョブの割り当てでは、実行中の他のジョブでリソースをオーバーサブスクライブできます。オーバーサブスクライブされるリソースは、構成に応じて、ノード、ソケット、コア、ハイパースレッドにすることができます。デフォルトのオーバーサブスクライブ動作はシステム構成によって異なり、パーティションのOverSubscribeオプションはジョブのオプションよりも優先されます。このオプションを使用すると、-oversubscribeオプションが設定されていない場合よりも早く割り当てが許可され、システムの使用率が高くなりますが、リソースの競合により、アプリケーションのパフォーマンスが低下する可能性があります。--exclusiveオプションも参照してください。このオプションは、ステップ割り当てに適用されます。
- -S, --core-spec=<num>
-
Count of specialized cores per node reserved by the job for system operations
and not used by the application. The application will not use these cores,
but will be charged for their allocation.
Default value is dependent upon the node's configured CoreSpecCount value.
If a value of zero is designated and the Slurm configuration option
AllowSpecResourcesUsage is enabled, the job will be allowed to override
CoreSpecCount and use the specialized resources on nodes it is allocated.
This option can not be used with the --thread-spec option. This option
applies to job allocations.
システム操作用にジョブによって予約され、アプリケーションでは使用されない、ノードごとの専用コアの数。アプリケーションはこれらのコアを使用しませんが、それらの割り当てに対して課金されます。デフォルト値は、ノードの構成済みCoreSpecCount値によって異なります。ゼロの値が指定されており、Slurm構成オプションAllowSpecResourcesUsageが有効になっている場合、ジョブはCoreSpecCountをオーバーライドして、割り当てられたノードで特殊なリソースを使用できます。このオプションは--thread-specオプションと一緒に使用できません。このオプションは、ジョブの割り当てに適用されます。
- --signal=[R:]<sig_num>[@<sig_time>]
-
When a job is within sig_time seconds of its end time,
send it the signal sig_num.
Due to the resolution of event handling by Slurm, the signal may
be sent up to 60 seconds earlier than specified.
sig_num may either be a signal number or name (e.g. "10" or "USR1").
sig_time must have an integer value between 0 and 65535.
By default, no signal is sent before the job's end time.
If a sig_num is specified without any sig_time,
the default time will be 60 seconds. This option applies to job allocations.
Use the "R:" option to allow this job to overlap with a reservation with
MaxStartDelay set.
To have the signal sent at preemption time see
the preempt_send_user_signal SlurmctldParameter.
ジョブが終了時刻のsig_time秒以内にある場合は、sig_numシグナルを送信します。Slurmによるイベント処理の解決により、信号は指定よりも最大60秒早く送信される場合があります。sig_numは、シグナル番号またはシグナル名(たとえば、「10」または「USR1」)のいずれかです。sig_timeには0〜65535の整数値を指定する必要があります。デフォルトでは、ジョブの終了時刻までシグナルは送信されません。sig_numがsig_timeなしで指定されている場合、デフォルトの時間は60秒になります。このオプションは、ジョブの割り当てに適用されます。「R:」オプションを使用して、このジョブをMaxStartDelayが設定された予約とオーバーラップできるようにします。信号がプリエンプション時に送信されるようにするには、preempt_send_user_signal SlurmctldParameterを参照してください。
- --slurmd-debug=<level>
-
Specify a debug level for slurmd(8). The level may be specified either
an integer value between 0 [quiet, only errors are displayed] and 4 [verbose
operation] or the SlurmdDebug tags.
slurmd(8)のデバッグレベルを指定します。レベルは、0 [静か、エラーのみが表示される]と4 [詳細な操作]の間の整数値、またはSlurmdDebugタグのいずれかで指定できます。
The slurmd debug information is copied onto the stderr of the job. By default only errors are displayed. This option applies to job and step allocations.
slurmdデバッグ情報は、ジョブのstderrにコピーされます。デフォルトでは、エラーのみが表示されます。このオプションは、ジョブとステップの割り当てに適用されます。
- --sockets-per-node=<sockets>
-
Restrict node selection to nodes with at least the specified number of
sockets. See additional information under -B option above when
task/affinity plugin is enabled. This option applies to job allocations.
ノードの選択を、少なくとも指定された数のソケットを持つノードに制限します。タスク/アフィニティプラグインが有効になっている場合は、上記の-Bオプションの下にある追加情報を参照してください。このオプションは、ジョブの割り当てに適用されます。
- --spread-job
-
Spread the job allocation over as many nodes as possible and attempt to
evenly distribute tasks across the allocated nodes.
This option disables the topology/tree plugin.
This option applies to job allocations.
ジョブの割り当てをできるだけ多くのノードに分散し、割り当てられたノード間でタスクを均等に分散させます。このオプションは、トポロジ/ツリープラグインを無効にします。このオプションは、ジョブの割り当てに適用されます。
- --switches=<count>[@<max-time>]
-
When a tree topology is used, this defines the maximum count of switches
desired for the job allocation and optionally the maximum time to wait
for that number of switches. If Slurm finds an allocation containing more
switches than the count specified, the job remains pending until it either finds
an allocation with desired switch count or the time limit expires.
It there is no switch count limit, there is no delay in starting the job.
Acceptable time formats include "minutes", "minutes:seconds",
"hours:minutes:seconds", "days-hours", "days-hours:minutes" and
"days-hours:minutes:seconds".
The job's maximum time delay may be limited by the system administrator using
the SchedulerParameters configuration parameter with the
max_switch_wait parameter option.
On a dragonfly network the only switch count supported is 1 since communication
performance will be highest when a job is allocate resources on one leaf switch
or more than 2 leaf switches.
The default max-time is the max_switch_wait SchedulerParameters. This option
applies to job allocations.
ツリートポロジを使用する場合、これは、ジョブの割り当てに必要なスイッチの最大数と、オプションでその数のスイッチを待機する最大時間を定義します。Slurmが、指定された数よりも多くのスイッチを含む割り当てを見つけた場合、ジョブは、必要なスイッチ数の割り当てが見つかるか、制限時間が経過するまで保留されたままになります。スイッチ数の制限がなく、ジョブの開始に遅延はありません。許容される時間形式には、「分」、「分:秒」、「時間:分:秒」、「日-時間」、「日-時間:分」、および「日-時間:分:秒」が含まれます。ジョブの最大遅延時間は、システム管理者がmax_switch_waitパラメータオプションを指定したSchedulerParameters構成パラメータを使用して制限する場合があります。dragonflyネットワークでは、ジョブが1つのリーフスイッチまたは3つ以上のリーフスイッチにリソースを割り当てるときに通信パフォーマンスが最高になるため、サポートされるスイッチ数は1のみです。デフォルトの最大時間はmax_switch_wait SchedulerParametersです。このオプションは、ジョブの割り当てに適用されます。
- -T, --threads=<nthreads>
-
Allows limiting the number of concurrent threads used to
send the job request from the srun process to the slurmd
processes on the allocated nodes. Default is to use one
thread per allocated node up to a maximum of 60 concurrent
threads. Specifying this option limits the number of
concurrent threads to nthreads (less than or equal to 60).
This should only be used to set a low thread count for testing on
very small memory computers. This option applies to job allocations.
割り当てられたノード上のsrunプロセスからslurmdプロセスにジョブ要求を送信するために使用される同時スレッドの数を制限することができます。デフォルトでは、最大60の同時スレッドまで、割り当てられたノードごとに1つのスレッドを使用します。このオプションを指定すると、同時スレッドの数がnthreads(60以下)に制限されます。これは、非常に小さなメモリのコンピューターでテストするためにスレッド数を少なく設定するためにのみ使用してください。このオプションは、ジョブの割り当てに適用されます。
- -t, --time=<time>
-
Set a limit on the total run time of the job allocation. If the
requested time limit exceeds the partition's time limit, the job will
be left in a PENDING state (possibly indefinitely). The default time
limit is the partition's default time limit. When the time limit is reached,
each task in each job step is sent SIGTERM followed by SIGKILL. The
interval between signals is specified by the Slurm configuration
parameter KillWait. The OverTimeLimit configuration parameter may
permit the job to run longer than scheduled. Time resolution is one minute
and second values are rounded up to the next minute.
ジョブ割り当ての合計実行時間に制限を設定します。要求された時間制限がパーティションの時間制限を超えると、ジョブは(おそらく無期限に)PENDING状態のままになります。デフォルトの制限時間は、パーティションのデフォルトの制限時間です。時間制限に達すると、各ジョブステップの各タスクにSIGTERMが送信され、その後にSIGKILLが送信されます。信号の間隔は、Slurm構成パラメーターKillWaitによって指定されます。OverTimeLimit構成パラメーターにより、ジョブがスケジュールよりも長く実行される場合があります。時間分解能は1分で、秒の値は次の分に切り上げられます。
A time limit of zero requests that no time limit be imposed. Acceptable time formats include "minutes", "minutes:seconds", "hours:minutes:seconds", "days-hours", "days-hours:minutes" and "days-hours:minutes:seconds". This option applies to job and step allocations.
ゼロの時間制限は、時間制限が課されないことを要求します。許容される時間形式には、「分」、「分:秒」、「時間:分:秒」、「日-時間」、「日-時間:分」、および「日-時間:分:秒」が含まれます。このオプションは、ジョブとステップの割り当てに適用されます。
- --task-epilog=<executable>
-
The slurmstepd daemon will run executable just after each task
terminates. This will be executed before any TaskEpilog parameter in
slurm.conf is executed. This is meant to be a very short-lived
program. If it fails to terminate within a few seconds, it will be
killed along with any descendant processes. This option applies to step
allocations.
slurmstepdデーモンは、各タスクが終了した直後に実行可能ファイルを実行します。これは、slurm.confのTaskEpilogパラメータが実行される前に実行されます。これは非常に短期間のプログラムであることを意味します。数秒以内に終了しない場合は、子孫のプロセスとともに強制終了されます。このオプションは、ステップ割り当てに適用されます。
- --task-prolog=<executable>
-
The slurmstepd daemon will run executable just before launching
each task. This will be executed after any TaskProlog parameter
in slurm.conf is executed.
Besides the normal environment variables, this has SLURM_TASK_PID
available to identify the process ID of the task being started.
Standard output from this program of the form
"export NAME=value" will be used to set environment variables
for the task being spawned. This option applies to step allocations.
slurmstepdデーモンは、各タスクを起動する直前に実行可能ファイルを実行します。これは、slurm.confのTaskPrologパラメータが実行された後に実行されます。通常の環境変数に加えて、これには、開始されるタスクのプロセスIDを識別するために使用可能なSLURM_TASK_PIDがあります。このプログラムからの「export NAME = value」形式の標準出力は、生成されるタスクの環境変数を設定するために使用されます。このオプションは、ステップ割り当てに適用されます。
- --test-only
-
Returns an estimate of when a job would be scheduled to run given the
current job queue and all the other srun arguments specifying
the job. This limits srun's behavior to just return
information; no job is actually submitted.
The program will be executed directly by the slurmd daemon. This option applies
to job allocations.
現在のジョブキューと、ジョブを指定する他のすべてのsrun引数を指定すると、ジョブの実行がスケジュールされる時期の推定値を返します。これにより、srunの動作が情報を返すだけに制限されます。実際にジョブは送信されません。プログラムは、slurmdデーモンによって直接実行されます。このオプションは、ジョブの割り当てに適用されます。
- --thread-spec=<num>
-
Count of specialized threads per node reserved by the job for system operations
and not used by the application. The application will not use these threads,
but will be charged for their allocation.
This option can not be used with the --core-spec option. This option
applies to job allocations.
システム操作用にジョブによって予約され、アプリケーションでは使用されない、ノードごとの特殊スレッドの数。アプリケーションはこれらのスレッドを使用しませんが、それらの割り当てに対して課金されます。このオプションは--core-specオプションと一緒に使用できません。このオプションは、ジョブの割り当てに適用されます。
- --threads-per-core=<threads>
-
Restrict node selection to nodes with at least the specified number of
threads per core. NOTE: "Threads" refers to the number of processing units on
each core rather than the number of application tasks to be launched per core.
See additional information under -B option above when task/affinity
plugin is enabled. This option applies to job allocations.
ノードの選択を、コアあたり少なくとも指定されたスレッド数のノードに制限します。注:「スレッド」とは、コアごとに起動されるアプリケーションタスクの数ではなく、各コアの処理ユニットの数を指します。タスク/アフィニティプラグインが有効になっている場合は、上記の-Bオプションの下にある追加情報を参照してください。このオプションは、ジョブの割り当てに適用されます。
- --time-min=<time>
-
Set a minimum time limit on the job allocation.
If specified, the job may have its --time limit lowered to a value
no lower than --time-min if doing so permits the job to begin
execution earlier than otherwise possible.
The job's time limit will not be changed after the job is allocated resources.
This is performed by a backfill scheduling algorithm to allocate resources
otherwise reserved for higher priority jobs.
Acceptable time formats include "minutes", "minutes:seconds",
"hours:minutes:seconds", "days-hours", "days-hours:minutes" and
"days-hours:minutes:seconds". This option applies to job allocations.
ジョブの割り当てに最小時間制限を設定します。指定した場合、ジョブの--time制限が--time-min以上の値に引き下げられる可能性があります。これにより、ジョブが他の方法よりも早く実行を開始できるようになります。ジョブにリソースが割り当てられた後、ジョブの制限時間は変更されません。これは、バックフィルスケジューリングアルゴリズムによって実行され、優先度の高いジョブ用に予約されているリソースを割り当てます。許容される時間形式には、「分」、「分:秒」、「時間:分:秒」、「日-時間」、「日-時間:分」、および「日-時間:分:秒」が含まれます。このオプションは、ジョブの割り当てに適用されます。
- --tmp=<size[units]>
-
Specify a minimum amount of temporary disk space per node.
Default units are megabytes unless the SchedulerParameters configuration
parameter includes the "default_gbytes" option for gigabytes.
Different units can be specified using the suffix [K|M|G|T].
This option applies to job allocations.
ノードごとの最小ディスク容量を指定します。SchedulerParameters構成パラメーターにギガバイトの「default_gbytes」オプションが含まれていない限り、デフォルトの単位はメガバイトです。接尾辞[K | M | G | T]を使用して、さまざまな単位を指定できます。このオプションは、ジョブの割り当てに適用されます。
- -u, --unbuffered
-
By default the connection between slurmstepd and the user launched application
is over a pipe. The stdio output written by the application is buffered
by the glibc until it is flushed or the output is set as unbuffered.
See setbuf(3). If this option is specified the tasks are executed with
a pseudo terminal so that the application output is unbuffered. This option
applies to step allocations.
デフォルトでは、slurmstepdとユーザーが起動したアプリケーション間の接続はパイプを介して行われます。アプリケーションによって書き込まれたstdio出力は、フラッシュされるか、出力がバッファーなしとして設定されるまで、glibcによってバッファーされます。setbuf(3)を参照してください。このオプションを指定すると、アプリケーションの出力がバッファリングされないように、タスクが疑似端末で実行されます。このオプションは、ステップ割り当てに適用されます。
- --usage
-
Display brief help message and exit.
簡単なヘルプメッセージを表示して終了します。
- --uid=<user>
-
Attempt to submit and/or run a job as user instead of the
invoking user id. The invoking user's credentials will be used
to check access permissions for the target partition. User root
may use this option to run jobs as a normal user in a RootOnly
partition for example. If run as root, srun will drop
its permissions to the uid specified after node allocation is
successful. user may be the user name or numerical user ID. This option
applies to job and step allocations.
呼び出し元のユーザーIDではなく、ユーザーとしてジョブを送信または実行しようとしました。呼び出しユーザーの資格情報は、ターゲットパーティションのアクセス許可を確認するために使用されます。ユーザーrootはこのオプションを使用して、たとえばRootOnlyパーティションで通常のユーザーとしてジョブを実行できます。rootとして実行した場合、srunは、ノードの割り当てが成功した後に、指定されたuidにその権限をドロップします。userは、ユーザー名または数値のユーザーIDです。このオプションは、ジョブとステップの割り当てに適用されます。
- --use-min-nodes
-
If a range of node counts is given, prefer the smaller count.
ノード数の範囲が指定されている場合は、小さい方の数を優先します。
- -V, --version
-
Display version information and exit.
バージョン情報を表示して終了します。
- -v, --verbose
-
Increase the verbosity of srun's informational messages. Multiple
-v's will further increase srun's verbosity. By default only
errors will be displayed. This option applies to job and step allocations.
srunの情報メッセージの冗長性を増やします。複数の-vを指定すると、srunの冗長性がさらに高まります。デフォルトでは、エラーのみが表示されます。このオプションは、ジョブとステップの割り当てに適用されます。
- -W, --wait=<seconds>
-
Specify how long to wait after the first task terminates before terminating
all remaining tasks. A value of 0 indicates an unlimited wait (a warning will
be issued after 60 seconds). The default value is set by the WaitTime
parameter in the slurm configuration file (see slurm.conf(5)). This
option can be useful to ensure that a job is terminated in a timely fashion
in the event that one or more tasks terminate prematurely.
Note: The -K, --kill-on-bad-exit option takes precedence
over -W, --wait to terminate the job immediately if a task
exits with a non-zero exit code. This option applies to job allocations.
最初のタスクが終了してから残りのすべてのタスクを終了するまでの待機時間を指定します。値0は、無制限の待機を示します(警告は60秒後に発行されます)。デフォルト値は、slurm構成ファイル(slurm.conf(5)を参照)のWaitTimeパラメーターによって設定されます。このオプションは、1つ以上のタスクが途中で終了した場合に、ジョブがタイムリーに終了するようにするのに役立ちます。注:-K、--kill-on-bad-exitオプションは-W、--waitよりも優先され、タスクがゼロ以外の終了コードで終了した場合にジョブを即座に終了します。このオプションは、ジョブの割り当てに適用されます。
- -w, --nodelist=<host1,host2,... or filename>
-
Request a specific list of hosts.
The job will contain all of these hosts and possibly additional hosts
as needed to satisfy resource requirements.
The list may be specified as a comma-separated list of hosts, a range of hosts
(host[1-5,7,...] for example), or a filename.
The host list will be assumed to be a filename if it contains a "/" character.
If you specify a minimum node or processor count larger than can be satisfied
by the supplied host list, additional resources will be allocated on other
nodes as needed.
Rather than repeating a host name multiple times, an asterisk and
a repetition count may be appended to a host name. For example
"host1,host1" and "host1*2" are equivalent. If number of tasks is given and a
list of requested nodes is also given the number of nodes used from that list
will be reduced to match that of the number of tasks if the number of nodes in
the list is greater than the number of tasks. This option applies to job and
step allocations.
ホストの特定のリストを要求します。ジョブには、これらすべてのホストが含まれ、リソース要件を満たすために必要に応じて追加のホストが含まれる場合もあります。リストは、ホストのコンマ区切りリスト、ホストの範囲(たとえば、host [1-5,7、...])、またはファイル名として指定できます。ホストリストに「/」文字が含まれている場合、ホストリストはファイル名と見なされます。提供されたホストリストで満たすことができる最小ノード数またはプロセッサ数を指定すると、必要に応じて他のノードに追加のリソースが割り当てられます。ホスト名を複数回繰り返すのではなく、アスタリスクと繰り返しカウントをホスト名に追加できます。たとえば、「host1、host1」と「host1 * 2」は同等です。タスクの数が指定され、要求されたノードのリストも指定されている場合、リスト内のノードの数がタスクの数よりも多い場合、そのリストから使用されるノードの数は、タスクの数と一致するように削減されます。このオプションは、ジョブとステップの割り当てに適用されます。
- --wckey=<wckey>
-
Specify wckey to be used with job. If TrackWCKey=no (default) in the
slurm.conf this value is ignored. This option applies to job allocations.
ジョブで使用するwckeyを指定します。slurm.confでTrackWCKey = no(デフォルト)の場合、この値は無視されます。このオプションは、ジョブの割り当てに適用されます。
- -X, --disable-status
-
Disable the display of task status when srun receives a single SIGINT
(Ctrl-C). Instead immediately forward the SIGINT to the running job.
Without this option a second Ctrl-C in one second is required to forcibly
terminate the job and srun will immediately exit. May also be
set via the environment variable SLURM_DISABLE_STATUS. This option applies to
job allocations.
srunが1つのSIGINTを受け取ったときのタスクステータスの表示を無効にします(Ctrl-C)。代わりに、SIGINTを実行中のジョブにすぐに転送します。このオプションを使用しないと、ジョブを強制的に終了するために1秒で2回目のCtrl-Cが必要になり、srunはすぐに終了します。環境変数SLURM_DISABLE_STATUSを介して設定することもできます。このオプションは、ジョブの割り当てに適用されます。
- -x, --exclude=<host1,host2,... or filename>
-
Request that a specific list of hosts not be included in the resources
allocated to this job. The host list will be assumed to be a filename
if it contains a "/"character. This option applies to job allocations.
このジョブに割り当てられているリソースにホストの特定のリストを含めないように要求します。ホストリストに「/」文字が含まれている場合、ホストリストはファイル名と見なされます。このオプションは、ジョブの割り当てに適用されます。
- --x11[=<all|first|last>]
-
Sets up X11 forwarding on all, first or last node(s) of the allocation. This
option is only enabled if Slurm was compiled with X11 support and
PrologFlags=x11 is defined in the slurm.conf. Default is all.
割り当てのすべて、最初、または最後のノードでX11転送を設定します。このオプションは、SlurmがX11サポート付きでコンパイルされ、PrologFlags = x11がslurm.confで定義されている場合にのみ有効になります。デフォルトはすべてです。
- -Z, --no-allocate
-
Run the specified tasks on a set of nodes without creating a Slurm
"job" in the Slurm queue structure, bypassing the normal resource
allocation step. The list of nodes must be specified with the
-w, --nodelist option. This is a privileged option
only available for the users "SlurmUser" and "root". This option applies to job
allocations.
通常のリソース割り当てステップをバイパスして、Slurmキュー構造にSlurm「ジョブ」を作成せずに、ノードのセットで指定されたタスクを実行します。ノードのリストは、-w、-nodelistオプションで指定する必要があります。これは、ユーザー「SlurmUser」および「root」のみが使用できる特権オプションです。このオプションは、ジョブの割り当てに適用されます。
srun
will submit the job request to the slurm job controller, then initiate all
processes on the remote nodes. If the request cannot be met immediately,
srun
will block until the resources are free to run the job. If the
-I (--immediate) option is specified
srun
will terminate if resources are not immediately available.
srunはジョブ要求をslurmジョブコントローラーに送信し、リモートノードですべてのプロセスを開始します。要求にすぐに対応できない場合、srunはリソースがジョブを実行できるようになるまでブロックします。-I(--immediate)オプションが指定されている場合、リソースがすぐに利用できない場合、srunは終了します。
When initiating remote processes
srun
will propagate the current working directory, unless
--chdir=<path> is specified, in which case path will
become the working directory for the remote processes.
リモートプロセスを開始すると、-chdir =でない限り、srunは現在の作業ディレクトリを伝達します。 が指定されている場合、pathはリモートプロセスの作業ディレクトリになります。
The -n, -c, and -N options control how CPUs and
nodes will be allocated to the job. When specifying only the number
of processes to run with -n, a default of one CPU per process
is allocated. By specifying the number of CPUs required per task (-c),
more than one CPU may be allocated per process. If the number of nodes
is specified with -N,
srun
will attempt to allocate at least the number of nodes specified.
-n、-c、および-Nオプションは、CPUおよびノードをジョブに割り当てる方法を制御します。-nで実行するプロセスの数のみを指定すると、デフォルトでプロセスごとに1つのCPUが割り当てられます。タスクごとに必要なCPUの数を指定することにより(-c)、プロセスごとに複数のCPUを割り当てることができます。ノード数が-Nで指定されている場合、srunは少なくとも指定された数のノードを割り当てようとします。
Combinations of the above three options may be used to change how
processes are distributed across nodes and cpus. For instance, by specifying
both the number of processes and number of nodes on which to run, the
number of processes per node is implied. However, if the number of CPUs
per process is more important then number of processes (-n) and the
number of CPUs per process (-c) should be specified.
上記の3つのオプションの組み合わせを使用して、ノードとCPU間でのプロセスの分散方法を変更できます。たとえば、プロセスの数と実行するノードの数の両方を指定すると、ノードあたりのプロセス数が暗黙的に示されます。ただし、プロセスあたりのCPU数がより重要な場合は、プロセス数(-n)およびプロセスあたりのCPU数(-c)を指定する必要があります。
srun
will refuse to allocate more than one process per CPU unless
--overcommit (-O) is also specified.
--overcommit(-O)も指定されていない限り、srunはCPUごとに複数のプロセスを割り当てることを拒否します。
srun
will attempt to meet the above specifications "at a minimum." That is,
if 16 nodes are requested for 32 processes, and some nodes do not have
2 CPUs, the allocation of nodes will be increased in order to meet the
demand for CPUs. In other words, a minimum of 16 nodes are being
requested. However, if 16 nodes are requested for 15 processes,
srun
will consider this an error, as 15 processes cannot run across 16 nodes.
srunは上記の仕様を「最低限」満たすことを試みます。つまり、32プロセスに対して16ノードが要求され、一部のノードに2 CPUがない場合、CPUの需要を満たすためにノードの割り当てが増加します。つまり、最低16個のノードが要求されています。ただし、15個のプロセスに対して16個のノードが要求された場合、15個のプロセスは16個のノードで実行できないため、srunはこれをエラーと見なします。
IO Redirection
By default, stdout and stderr will be redirected from all tasks to the
stdout and stderr of srun, and stdin will be redirected from the
standard input of srun to all remote tasks.
If stdin is only to be read by a subset of the spawned tasks, specifying a
file to read from rather than forwarding stdin from the srun command may
be preferable as it avoids moving and storing data that will never be read.
デフォルトでは、stdoutとstderrはすべてのタスクからsrunのstdoutとstderrにリダイレクトされ、stdinはsrunの標準入力からすべてのリモートタスクにリダイレクトされます。stdinが生成されたタスクのサブセットによってのみ読み取られる場合は、srunコマンドからstdinを転送するのではなく、読み取るファイルを指定する方が、読み取られないデータの移動や保存を回避できるため、望ましい場合があります。
For OS X, the poll() function does not support stdin, so input from
a terminal is not possible.
OS Xの場合、poll()関数はstdinをサポートしていないため、端末からの入力はできません。
This behavior may be changed with the
--output, --error, and --input
(-o, -e, -i) options. Valid format specifications
for these options are
この動作は、-output、-error、および--input(-o、-e、-i)オプションを使用して変更できます。これらのオプションの有効なフォーマット仕様は次のとおりです。
- all
-
stdout stderr is redirected from all tasks to srun.
stdin is broadcast to all remote tasks.
(This is the default behavior)
stdout stderrはすべてのタスクからsrunにリダイレクトされます。stdinはすべてのリモートタスクにブロードキャストされます。(これはデフォルトの動作です)
- none
-
stdout and stderr is not received from any task.
stdin is not sent to any task (stdin is closed).
stdoutおよびstderrはどのタスクからも受信されません。stdinはどのタスクにも送信されません(stdinは閉じています)。
- taskid
-
stdout and/or stderr are redirected from only the task with relative
id equal to taskid, where 0 <= taskid <= ntasks,
where ntasks is the total number of tasks in the current job step.
stdin is redirected from the stdin of srun to this same task.
This file will be written on the node executing the task.
stdoutやstderrは、相対IDがtaskidに等しいタスクからのみリダイレクトされます。ここで、0 <= taskid <= ntasksです。ntasksは、現在のジョブステップ内のタスクの総数です。stdinは、srunのstdinからこの同じタスクにリダイレクトされます。このファイルは、タスクを実行するノードに書き込まれます。
- filename
-
srun will redirect stdout and/or stderr to the named file from
all tasks.
stdin will be redirected from the named file and broadcast to all
tasks in the job. filename refers to a path on the host
that runs srun. Depending on the cluster's file system layout,
this may result in the output appearing in different places depending
on whether the job is run in batch mode.
srunはすべてのタスクからstdoutやstderrを指定されたファイルにリダイレクトします。stdinは指定されたファイルからリダイレクトされ、ジョブ内のすべてのタスクにブロードキャストされます。filenameは、srunを実行するホスト上のパスを指します。クラスターのファイルシステムレイアウトによっては、ジョブがバッチモードで実行されているかどうかによって、出力が異なる場所に表示される場合があります。
- filename pattern
-
srun allows for a filename pattern to be used to generate the
named IO file
described above. The following list of format specifiers may be
used in the format string to generate a filename that will be
unique to a given jobid, stepid, node, or task. In each case,
the appropriate number of files are opened and associated with
the corresponding tasks. Note that any format string containing
%t, %n, and/or %N will be written on the node executing the task
rather than the node where srun executes, these format specifiers
are not supported on a BGQ system.
srunを使用すると、ファイル名パターンを使用して、上記の名前付きIOファイルを生成できます。以下のフォーマット指定子のリストをフォーマット文字列で使用して、特定のジョブID、ステップID、ノード、またはタスクに固有のファイル名を生成できます。いずれの場合も、適切な数のファイルが開かれ、対応するタスクに関連付けられます。%t、%n、または%Nを含むフォーマット文字列は、srunが実行されるノードではなく、タスクを実行するノードに書き込まれることに注意してください。これらのフォーマット指定子は、BGQシステムではサポートされていません。
-
- \\
-
Do not process any of the replacement symbols.
置換シンボルを処理しないでください。
- %%
-
The character "%".
キャラクター "%"。
- %A
-
Job array's master job allocation number.
ジョブ配列のマスタージョブ割り当て番号。
- %a
-
Job array ID (index) number.
ジョブ配列ID(インデックス)番号。
- %J
-
jobid.stepid of the running job. (e.g. "128.0")
実行中のジョブのjobid.stepid。(例: "128.0")
- %j
-
jobid of the running job.
実行中のジョブのジョブID。
- %s
-
stepid of the running job.
実行中のジョブのステップID。
- %N
-
short hostname. This will create a separate IO file per node.
短いホスト名。これにより、ノードごとに個別のIOファイルが作成されます。
- %n
-
Node identifier relative to current job (e.g. "0" is the first node of
the running job) This will create a separate IO file per node.
現在のジョブに関連するノード識別子(たとえば、「0」は実行中のジョブの最初のノードです)これにより、ノードごとに個別のIOファイルが作成されます。
- %t
-
task identifier (rank) relative to current job. This will create a
separate IO file per task.
現在のジョブに関連するタスク識別子(ランク)。これにより、タスクごとに個別のIOファイルが作成されます。
- %u
-
User name.
ユーザー名。
- %x
-
Job name.
職種名。
A number placed between the percent character and format specifier may be used to zero-pad the result in the IO filename. This number is ignored if the format specifier corresponds to non-numeric data (%N for example).
パーセント文字とフォーマット指定子の間に置かれた数字は、IOファイル名の結果にゼロを埋め込むために使用できます。フォーマット指定子が非数値データ(たとえば、%N)に対応している場合、この数値は無視されます。
Some examples of how the format string may be used for a 4 task job step with a Job ID of 128 and step id of 0 are included below:
ジョブIDが128、ステップIDが0の4タスクジョブステップでフォーマット文字列を使用する方法の例を以下に示します。
- job%J.out
- job128.0.out
- job%4j.out
- job0128.out
- job%j-%2t.out
- job128-00.out, job128-01.out, ...
-
PERFORMANCE
Executing srun sends a remote procedure call to slurmctld. If
enough calls from srun or other Slurm client commands that send remote
procedure calls to the slurmctld daemon come in at once, it can result in
a degradation of performance of the slurmctld daemon, possibly resulting
in a denial of service.
srunを実行すると、slurmctldにリモートプロシージャコールが送信されます。リモートプロシージャコールをslurmctldデーモンに送信するsrunまたは他のSlurmクライアントコマンドからの十分な呼び出しが一度に着信すると、slurmctldデーモンのパフォーマンスが低下し、サービス拒否が発生する可能性があります。
Do not run srun or other Slurm client commands that send remote procedure
calls to slurmctld from loops in shell scripts or other programs. Ensure
that programs limit calls to srun to the minimum necessary for the
information you are trying to gather.
シェルスクリプトまたは他のプログラムのループからslurmctldにリモートプロシージャコールを送信するsrunまたは他のSlurmクライアントコマンドを実行しないでください。プログラムが、srunへの呼び出しを、収集しようとしている情報に必要な最小限に制限していることを確認してください。
INPUT ENVIRONMENT VARIABLES
Some srun options may be set via environment variables.
These environment variables, along with their corresponding options,
are listed below.
Note: Command line options will always override these settings.
一部のsrunオプションは、環境変数を介して設定できます。これらの環境変数と対応するオプションを以下に示します。注:コマンドラインオプションは常にこれらの設定を上書きします。
- PMI_FANOUT
-
This is used exclusively with PMI (MPICH2 and MVAPICH2) and
controls the fanout of data communications. The srun command
sends messages to application programs (via the PMI library)
and those applications may be called upon to forward that
data to up to this number of additional tasks. Higher values
offload work from the srun command to the applications and
likely increase the vulnerability to failures.
The default value is 32.
これは、PMI(MPICH2およびMVAPICH2)でのみ使用され、データ通信のファンアウトを制御します。srunコマンドは(PMIライブラリを介して)アプリケーションプログラムにメッセージを送信し、それらのアプリケーションは、このデータをこの数までの追加のタスクに転送するように要求されます。値を大きくすると、srunコマンドからアプリケーションへの負荷が軽減され、障害に対する脆弱性が高まる可能性があります。デフォルト値は32です。
- PMI_FANOUT_OFF_HOST
-
This is used exclusively with PMI (MPICH2 and MVAPICH2) and
controls the fanout of data communications. The srun command
sends messages to application programs (via the PMI library)
and those applications may be called upon to forward that
data to additional tasks. By default, srun sends one message
per host and one task on that host forwards the data to other
tasks on that host up to PMI_FANOUT.
If PMI_FANOUT_OFF_HOST is defined, the user task
may be required to forward the data to tasks on other hosts.
Setting PMI_FANOUT_OFF_HOST may increase performance.
Since more work is performed by the PMI library loaded by
the user application, failures also can be more common and
more difficult to diagnose.
これは、PMI(MPICH2およびMVAPICH2)でのみ使用され、データ通信のファンアウトを制御します。srunコマンドは(PMIライブラリを介して)アプリケーションプログラムにメッセージを送信し、それらのアプリケーションはそのデータを追加のタスクに転送するように要求される場合があります。デフォルトでは、srunはホストごとに1つのメッセージを送信し、そのホスト上の1つのタスクはデータをそのホスト上の他のタスクにPMI_FANOUTまで転送します。PMI_FANOUT_OFF_HOSTが定義されている場合、データを他のホスト上のタスクに転送するためにユーザータスクが必要になることがあります。PMI_FANOUT_OFF_HOSTを設定すると、パフォーマンスが向上する場合があります。ユーザーアプリケーションによってロードされたPMIライブラリによって実行される作業が増えるため、障害もより一般的になり、診断が困難になる可能性があります。
- PMI_TIME
-
This is used exclusively with PMI (MPICH2 and MVAPICH2) and
controls how much the communications from the tasks to the
srun are spread out in time in order to avoid overwhelming the
srun command with work. The default value is 500 (microseconds)
per task. On relatively slow processors or systems with very
large processor counts (and large PMI data sets), higher values
may be required.
これは、PMI(MPICH2およびMVAPICH2)でのみ使用され、srunコマンドが作業で圧倒されないようにするために、タスクからsrunへの通信が時間内に分散される量を制御します。デフォルト値は、タスクごとに500(マイクロ秒)です。非常に大きなプロセッサ数(および大きなPMIデータセット)を持つ比較的遅いプロセッサまたはシステムでは、より高い値が必要になる場合があります。
- SLURM_CONF
-
The location of the Slurm configuration file.
Slurm構成ファイルの場所。
- SLURM_ACCOUNT
- Same as -A, --account
- SLURM_ACCTG_FREQ
- Same as --acctg-freq
- SLURM_BCAST
- Same as --bcast
- SLURM_BURST_BUFFER
- Same as --bb
- SLURM_COMPRESS
- Same as --compress
- SLURM_CONSTRAINT
- Same as -C, --constraint
- SLURM_CORE_SPEC
- Same as --core-spec
- SLURM_CPU_BIND
- Same as --cpu-bind
- SLURM_CPU_FREQ_REQ
- Same as --cpu-freq.
- SLURM_CPUS_PER_GPU
- Same as --cpus-per-gpu
- SLURM_CPUS_PER_TASK
- Same as -c, --cpus-per-task
- SLURM_DEBUG
- Same as -v, --verbose
- SLURM_DELAY_BOOT
- Same as --delay-boot
- SLURMD_DEBUG
- Same as -d, --slurmd-debug
- SLURM_DEPENDENCY
- Same as -P, --dependency=<jobid>
- SLURM_DISABLE_STATUS
- Same as -X, --disable-status
- SLURM_DIST_PLANESIZE
- Same as -m plane
- SLURM_DISTRIBUTION
- Same as -m, --distribution
- SLURM_EPILOG
- Same as --epilog
- SLURM_EXCLUSIVE
- Same as --exclusive
- SLURM_EXIT_ERROR
-
Specifies the exit code generated when a Slurm error occurs
(e.g. invalid options).
This can be used by a script to distinguish application exit codes from
various Slurm error conditions.
Also see SLURM_EXIT_IMMEDIATE.
Slurmエラーが発生したときに生成される終了コードを指定します(無効なオプションなど)。これをスクリプトで使用して、アプリケーションの終了コードをさまざまなSlurmエラー条件から区別できます。SLURM_EXIT_IMMEDIATEも参照してください。
- SLURM_EXIT_IMMEDIATE
-
Specifies the exit code generated when the --immediate option
is used and resources are not currently available.
This can be used by a script to distinguish application exit codes from
various Slurm error conditions.
Also see SLURM_EXIT_ERROR.
--immediateオプションが使用され、リソースが現在利用できない場合に生成される終了コードを指定します。これをスクリプトで使用して、アプリケーションの終了コードをさまざまなSlurmエラー条件から区別できます。SLURM_EXIT_ERRORも参照してください。
- SLURM_EXPORT_ENV
- Same as --export
- SLURM_GPUS
- Same as -G, --gpus
- SLURM_GPU_BIND
- Same as --gpu-bind
- SLURM_GPU_FREQ
- Same as --gpu-freq
- SLURM_GPUS_PER_NODE
- Same as --gpus-per-node
- SLURM_GPUS_PER_TASK
- Same as --gpus-per-task
- SLURM_GRES_FLAGS
- Same as --gres-flags
- SLURM_HINT
- Same as --hint
- SLURM_GRES
- Same as --gres. Also see SLURM_STEP_GRES
- SLURM_IMMEDIATE
- Same as -I, --immediate
- SLURM_JOB_ID
- Same as --jobid
- SLURM_JOB_NAME
-
Same as -J, --job-name except within an existing
allocation, in which case it is ignored to avoid using the batch job's name
as the name of each job step.
既存の割り当て内を除いて-J、-job-nameと同じです。この場合、バッチジョブの名前を各ジョブステップの名前として使用しないようにすることは無視されます。
- SLURM_JOB_NODELIST
-
Same as -w, --nodelist=<host1,host2,... or
filename>. If job has been resized, ensure that this nodelist is adjusted
(or undefined) to avoid jobs steps being rejected due to down nodes.
-wと同じ--nodelist =。ジョブのサイズが変更されている場合は、ノードがダウンしているためにジョブステップが拒否されないように、このノードリストを調整(または未定義)してください。
- SLURM_JOB_NUM_NODES (and SLURM_NNODES for backwards compatibility)
-
Same as -N, --nodes
Total number of nodes in the job’s resource allocation.
-Nと同じ、-nodesジョブのリソース割り当て内のノードの総数。
- SLURM_KILL_BAD_EXIT
- Same as -K, --kill-on-bad-exit
- SLURM_LABELIO
- Same as -l, --label
- SLURM_MEM_BIND
- Same as --mem-bind
- SLURM_MEM_PER_CPU
- Same as --mem-per-cpu
- SLURM_MEM_PER_GPU
- Same as --mem-per-gpu
- SLURM_MEM_PER_NODE
- Same as --mem
- SLURM_MPI_TYPE
- Same as --mpi
- SLURM_NETWORK
- Same as --network
- SLURM_NO_KILL
- Same as -k, --no-kill
- SLURM_NTASKS (and SLURM_NPROCS for backwards compatibility)
- Same as -n, --ntasks
- SLURM_NTASKS_PER_CORE
- Same as --ntasks-per-core
- SLURM_NTASKS_PER_NODE
- Same as --ntasks-per-node
- SLURM_NTASKS_PER_SOCKET
- Same as --ntasks-per-socket
- SLURM_OPEN_MODE
- Same as --open-mode
- SLURM_OVERCOMMIT
- Same as -O, --overcommit
- SLURM_PARTITION
- Same as -p, --partition
- SLURM_PMI_KVS_NO_DUP_KEYS
-
If set, then PMI key-pairs will contain no duplicate keys. MPI can use
this variable to inform the PMI library that it will not use duplicate
keys so PMI can skip the check for duplicate keys.
This is the case for MPICH2 and reduces overhead in testing for duplicates
for improved performance
設定されている場合、PMIキーペアには重複キーは含まれません。MPIはこの変数を使用してPMIライブラリに重複キーを使用しないことを通知できるため、PMIは重複キーのチェックをスキップできます。これはMPICH2の場合であり、重複をテストする際のオーバーヘッドを削減してパフォーマンスを向上させます。
- SLURM_POWER
- Same as --power
- SLURM_PROFILE
- Same as --profile
- SLURM_PROLOG
- Same as --prolog
- SLURM_QOS
- Same as --qos
- SLURM_REMOTE_CWD
- Same as -D, --chdir=
- SLURM_REQ_SWITCH
-
When a tree topology is used, this defines the maximum count of switches
desired for the job allocation and optionally the maximum time to wait
for that number of switches. See --switches
ツリートポロジを使用する場合、これは、ジョブの割り当てに必要なスイッチの最大数と、オプションでその数のスイッチを待機する最大時間を定義します。--switchesを参照してください
- SLURM_RESERVATION
- Same as --reservation
- SLURM_RESV_PORTS
- Same as --resv-ports
- SLURM_SIGNAL
- Same as --signal
- SLURM_STDERRMODE
- Same as -e, --error
- SLURM_STDINMODE
- Same as -i, --input
- SLURM_SPREAD_JOB
- Same as --spread-job
- SLURM_SRUN_REDUCE_TASK_EXIT_MSG
-
if set and non-zero, successive task exit messages with the same exit code will
be printed only once.
設定され、ゼロ以外の場合、同じ終了コードを持つ後続のタスク終了メッセージは1回だけ出力されます。
- SLURM_STEP_GRES
-
Same as --gres (only applies to job steps, not to job allocations).
--gresと同じ(ジョブステップにのみ適用され、ジョブの割り当てには適用されません)。
Also see SLURM_GRES - SLURM_STEP_KILLED_MSG_NODE_ID=ID
-
If set, only the specified node will log when the job or step are killed
by a signal.
設定されている場合、ジョブまたはステップがシグナルによって強制終了されたときに、指定されたノードのみがログに記録します。
- SLURM_STDOUTMODE
- Same as -o, --output
- SLURM_TASK_EPILOG
- Same as --task-epilog
- SLURM_TASK_PROLOG
-
Same as --task-prolog
- SLURM_TEST_EXEC
- If defined, srun will verify existence of the executable program along with user execute permission on the node where srun was called before attempting to launch it on nodes in the step.
定義されている場合、srunは、srunが呼び出されたノードでのユーザー実行許可とともに、実行可能プログラムの存在を確認してから、ステップでノードでの起動を試みます。
- SLURM_THREAD_SPEC
- Same as --thread-spec
- SLURM_THREADS
- Same as -T, --threads
- SLURM_TIMELIMIT
- Same as -t, --time
- SLURM_UNBUFFEREDIO
- Same as -u, --unbuffered
- SLURM_USE_MIN_NODES
- Same as --use-min-nodes
- SLURM_WAIT
- Same as -W, --wait
- SLURM_WAIT4SWITCH
-
Max time waiting for requested switches. See --switches
要求されたスイッチを待機する最大時間。--switchesを参照してください
- SLURM_WCKEY
- Same as -W, --wckey
- SLURM_WORKING_DIR
- -D, --chdir
- SRUN_EXPORT_ENV
-
Same as --export, and will override any setting for SLURM_EXPORT_ENV.
--exportと同じで、SLURM_EXPORT_ENVの設定を上書きします。
OUTPUT ENVIRONMENT VARIABLES
srun will set some environment variables in the environment
of the executing tasks on the remote compute nodes.
These environment variables are:
srunは、リモート計算ノードで実行中のタスクの環境にいくつかの環境変数を設定します。これらの環境変数は次のとおりです。
- SLURM_*_HET_GROUP_#
-
For a heterogeneous job allocation, the environment variables are set separately
for each component.
異機種混合のジョブ割り当ての場合、環境変数はコンポーネントごとに個別に設定されます。
- SLURM_CLUSTER_NAME
-
Name of the cluster on which the job is executing.
ジョブが実行されているクラスターの名前。
- SLURM_CPU_BIND_VERBOSE
- --cpu-bind verbosity (quiet,verbose).
- SLURM_CPU_BIND_TYPE
- --cpu-bind type (none,rank,map_cpu:,mask_cpu:).
- SLURM_CPU_BIND_LIST
-
--cpu-bind map or mask list (list of Slurm CPU IDs or masks for this node,
CPU_ID = Board_ID x threads_per_board +
Socket_ID x threads_per_socket +
Core_ID x threads_per_core + Thread_ID).
--cpu-bindマップまたはマスクリスト(このノードのSlurm CPU IDまたはマスクのリスト、CPU_ID = Board_ID x threads_per_board + Socket_ID x threads_per_socket + Core_ID x threads_per_core + Thread_ID)。
- SLURM_CPU_FREQ_REQ
-
Contains the value requested for cpu frequency on the srun command as
a numerical frequency in kilohertz, or a coded value for a request of
low, medium,highm1 or high for the frequency.
See the description of the --cpu-freq option or the
SLURM_CPU_FREQ_REQ input environment variable.
srunコマンドでCPU周波数に要求された値を、キロヘルツ単位の数値周波数として、または周波数の低、中、高m1、または高の要求に対してコード化された値を含みます。--cpu-freqオプションの説明またはSLURM_CPU_FREQ_REQ入力環境変数を参照してください。
- SLURM_CPUS_ON_NODE
-
Count of processors available to the job on this node.
Note the select/linear plugin allocates entire nodes to
jobs, so the value indicates the total count of CPUs on the node.
For the select/cons_res plugin, this number indicates the number of cores
on this node allocated to the job.
このノードのジョブで使用可能なプロセッサーの数。select / linearプラグインはノード全体をジョブに割り当てるため、値はノード上のCPUの合計数を示すことに注意してください。select / cons_resプラグインの場合、この数は、ジョブに割り当てられたこのノードのコアの数を示します。
- SLURM_CPUS_PER_GPU
-
Number of CPUs requested per allocated GPU.
Only set if the --cpus-per-gpu option is specified.
割り当てられたGPUごとにリクエストされたCPUの数。--cpus-per-gpuオプションが指定されている場合にのみ設定されます。
- SLURM_CPUS_PER_TASK
-
Number of cpus requested per task.
Only set if the --cpus-per-task option is specified.
タスクごとに要求されたCPUの数。--cpus-per-taskオプションが指定されている場合にのみ設定されます。
- SLURM_DISTRIBUTION
-
Distribution type for the allocated jobs. Set the distribution
with -m, --distribution.
割り当てられたジョブの分散タイプ。-m、-distributionを使用してディストリビューションを設定します。
- SLURM_GPUS
-
Number of GPUs requested.
Only set if the -G, --gpus option is specified.
リクエストされたGPUの数。-G、--gpusオプションが指定されている場合にのみ設定されます。
- SLURM_GPU_BIND
-
Requested binding of tasks to GPU.
Only set if the --gpu-bind option is specified.
タスクのGPUへのバインドを要求しました。--gpu-bindオプションが指定されている場合にのみ設定されます。
- SLURM_GPU_FREQ
-
Requested GPU frequency.
Only set if the --gpu-freq option is specified.
リクエストされたGPU周波数。--gpu-freqオプションが指定されている場合にのみ設定されます。
- SLURM_GPUS_PER_NODE
-
Requested GPU count per allocated node.
Only set if the --gpus-per-node option is specified.
割り当てられたノードあたりのリクエストされたGPU数。--gpus-per-nodeオプションが指定されている場合にのみ設定されます。
- SLURM_GPUS_PER_SOCKET
-
Requested GPU count per allocated socket.
Only set if the --gpus-per-socket option is specified.
割り当てられたソケットごとの要求されたGPU数。--gpus-per-socketオプションが指定されている場合にのみ設定されます。
- SLURM_GPUS_PER_TASK
-
Requested GPU count per allocated task.
Only set if the --gpus-per-task option is specified.
割り当てられたタスクごとのリクエストされたGPU数。--gpus-per-taskオプションが指定されている場合にのみ設定されます。
- SLURM_GTIDS
-
Global task IDs running on this node.
Zero origin and comma separated.
このノードで実行されているグローバルタスクID。ゼロ原点とカンマ区切り。
- SLURM_JOB_ACCOUNT
-
Account name associated of the job allocation.
ジョブ割り当てに関連付けられたアカウント名。
- SLURM_JOB_CPUS_PER_NODE
-
Number of CPUS per node.
ノードあたりのCPUの数。
- SLURM_JOB_DEPENDENCY
-
Set to value of the --dependency option.
--dependencyオプションの値に設定します。
- SLURM_JOB_ID (and SLURM_JOBID for backwards compatibility)
-
Job id of the executing job.
実行中のジョブのジョブID。
- SLURM_JOB_NAME
-
Set to the value of the --job-name option or the command name when srun
is used to create a new job allocation. Not set when srun is used only to
create a job step (i.e. within an existing job allocation).
srunを使用して新しいジョブ割り当てを作成する場合は、--job-nameオプションの値またはコマンド名に設定します。srunがジョブステップの作成のみに使用されている場合(つまり、既存のジョブ割り当て内)には設定されません。
- SLURM_JOB_PARTITION
-
Name of the partition in which the job is running.
ジョブが実行されているパーティションの名前。
- SLURM_JOB_QOS
-
Quality Of Service (QOS) of the job allocation.
ジョブ割り当てのサービス品質(QOS)。
- SLURM_JOB_RESERVATION
-
Advanced reservation containing the job allocation, if any.
必要に応じて、ジョブの割り当てを含む事前予約。
- SLURM_LAUNCH_NODE_IPADDR
-
IP address of the node from which the task launch was
initiated (where the srun command ran from).
タスクの起動が開始されたノードのIPアドレス(srunコマンドの実行元)。
- SLURM_LOCALID
-
Node local task ID for the process within a job.
ジョブ内のプロセスのノードローカルタスクID。
- SLURM_MEM_BIND_LIST
- --mem-bind map or mask list (<list of IDs or masks for this node>).
- SLURM_MEM_BIND_PREFER
- --mem-bind prefer (prefer).
- SLURM_MEM_BIND_SORT
- Sort free cache pages (run zonesort on Intel KNL nodes).
- SLURM_MEM_BIND_TYPE
- --mem-bind type (none,rank,map_mem:,mask_mem:).
- SLURM_MEM_BIND_VERBOSE
- --mem-bind verbosity (quiet,verbose).
- SLURM_MEM_PER_GPU
-
Requested memory per allocated GPU.
Only set if the --mem-per-gpu option is specified.
割り当てられたGPUごとに要求されたメモリ。--mem-per-gpuオプションが指定されている場合にのみ設定されます。
- SLURM_JOB_NODES
-
Total number of nodes in the job's resource allocation.
ジョブのリソース割り当てのノードの総数。
- SLURM_NODE_ALIASES
-
Sets of node name, communication address and hostname for nodes allocated to
the job from the cloud. Each element in the set if colon separated and each
set is comma separated. For example:
クラウドからジョブに割り当てられたノードのノード名、通信アドレス、ホスト名のセット。コロンで区切られ、各セットがカンマで区切られている場合、セット内の各要素。例えば:
SLURM_NODE_ALIASES:=:ec0:1.2.3.4:foo,ec1:1.2.3.5:bar - SLURM_NODEID
-
The relative node ID of the current node.
現在のノードの相対ノードID。
- SLURM_JOB_NODELIST
-
List of nodes allocated to the job.
ジョブに割り当てられたノードのリスト。
- SLURM_NTASKS (and SLURM_NPROCS for backwards compatibility)
-
Total number of processes in the current job or job step.
現在のジョブまたはジョブステップのプロセスの総数。
- SLURM_HET_SIZE
-
Set to count of components in heterogeneous job.
異種ジョブのコンポーネント数を設定します。
- SLURM_PRIO_PROCESS
-
The scheduling priority (nice value) at the time of job submission.
This value is propagated to the spawned processes.
ジョブ送信時のスケジューリング優先順位(適切な値)。この値は、生成されたプロセスに伝播されます。
- SLURM_PROCID
-
The MPI rank (or relative process ID) of the current process.
現在のプロセスのMPIランク(または相対プロセスID)。
- SLURM_SRUN_COMM_HOST
-
IP address of srun communication host.
srun通信ホストのIPアドレス。
- SLURM_SRUN_COMM_PORT
-
srun communication port.
srun通信ポート。
- SLURM_STEP_LAUNCHER_PORT
-
Step launcher port.
ステップランチャーポート。
- SLURM_STEP_NODELIST
-
List of nodes allocated to the step.
ステップに割り当てられたノードのリスト。
- SLURM_STEP_NUM_NODES
-
Number of nodes allocated to the step.
ステップに割り当てられたノードの数。
- SLURM_STEP_NUM_TASKS
-
Number of processes in the job step or whole heterogeneous job step.
ジョブステップまたは異種ジョブステップ全体のプロセス数。
- SLURM_STEP_TASKS_PER_NODE
-
Number of processes per node within the step.
ステップ内のノードごとのプロセス数。
- SLURM_STEP_ID (and SLURM_STEPID for backwards compatibility)
-
The step ID of the current job.
現在のジョブのステップID。
- SLURM_SUBMIT_DIR
-
The directory from which srun was invoked or, if applicable, the
directory specified by the -D, --chdir option.
srunが呼び出されたディレクトリ、または該当する場合は、-D、-chdirオプションで指定されたディレクトリ。
- SLURM_SUBMIT_HOST
-
The hostname of the computer from which salloc was invoked.
sallocが呼び出されたコンピューターのホスト名。
- SLURM_TASK_PID
-
The process ID of the task being started.
開始されるタスクのプロセスID。
- SLURM_TASKS_PER_NODE
-
Number of tasks to be initiated on each node. Values are
comma separated and in the same order as SLURM_JOB_NODELIST.
If two or more consecutive nodes are to have the same task
count, that count is followed by "(x#)" where "#" is the
repetition count. For example, "SLURM_TASKS_PER_NODE=2(x3),1"
indicates that the first three nodes will each execute two
tasks and the fourth node will execute one task.
各ノードで開始されるタスクの数。値はコンマ区切りで、SLURM_JOB_NODELISTと同じ順序です。2つ以上の連続するノードが同じタスク数を持つ場合、その数の後に「(x#)」が続きます。「#」は繰り返し数です。たとえば、「SLURM_TASKS_PER_NODE = 2(x3)、1」は、最初の3つのノードがそれぞれ2つのタスクを実行し、4番目のノードが1つのタスクを実行することを示します。
- SLURM_TOPOLOGY_ADDR
-
This is set only if the system has the topology/tree plugin configured.
The value will be set to the names network switches which may be involved in
the job's communications from the system's top level switch down to the leaf
switch and ending with node name. A period is used to separate each hardware
component name.
これは、システムにトポロジー/ツリープラグインが構成されている場合にのみ設定されます。値は、ネットワークスイッチの名前に設定されます。ネットワークスイッチは、システムのトップレベルスイッチからリーフスイッチまでのジョブの通信に関与し、ノード名で終了します。ピリオドは、各ハードウェアコンポーネント名を区切るために使用されます。
- SLURM_TOPOLOGY_ADDR_PATTERN
-
This is set only if the system has the topology/tree plugin configured.
The value will be set component types listed in SLURM_TOPOLOGY_ADDR.
Each component will be identified as either "switch" or "node".
A period is used to separate each hardware component type.
これは、システムにトポロジー/ツリープラグインが構成されている場合にのみ設定されます。値は、SLURM_TOPOLOGY_ADDRにリストされているコンポーネントタイプに設定されます。各コンポーネントは、「スイッチ」または「ノード」として識別されます。ピリオドは、各ハードウェアコンポーネントタイプを区切るために使用されます。
- SLURM_UMASK
-
The umask in effect when the job was submitted.
ジョブが送信されたときに有効なumask。
- SLURMD_NODENAME
-
Name of the node running the task. In the case of a parallel job executing on
multiple compute nodes, the various tasks will have this environment variable
set to different values on each compute node.
タスクを実行しているノードの名前。複数の計算ノードで並列ジョブを実行する場合、さまざまなタスクでこの環境変数が各計算ノードで異なる値に設定されます。
- SRUN_DEBUG
-
Set to the logging level of the srun command.
Default value is 3 (info level).
The value is incremented or decremented based upon the --verbose and
--quiet options.
srunコマンドのロギングレベルに設定します。デフォルト値は3(情報レベル)です。値は、-verboseおよび--quietオプションに基づいて増分または減分されます。
SIGNALS AND ESCAPE SEQUENCES
Signals sent to the srun command are automatically forwarded to the tasks it is controlling with a few exceptions. The escape sequence <control-c> will report the state of all tasks associated with the srun command. If <control-c> is entered twice within one second, then the associated SIGINT signal will be sent to all tasks and a termination sequence will be entered sending SIGCONT, SIGTERM, and SIGKILL to all spawned tasks. If a third <control-c> is received, the srun program will be terminated without waiting for remote tasks to exit or their I/O to complete.srunコマンドに送信されたシグナルは、いくつかの例外を除いて、制御しているタスクに自動的に転送されます。エスケープシーケンスsrunコマンドに関連するすべてのタスクの状態を報告します。もし1秒以内に2回入力すると、関連するSIGINTシグナルがすべてのタスクに送信され、生成されたすべてのタスクにSIGCONT、SIGTERM、およびSIGKILLを送信する終了シーケンスが開始されます。3分の1なら が受信されると、srunプログラムは、リモートタスクの終了やI / Oの完了を待たずに終了します。
The escape sequence <control-z> is presently ignored. Our intent
is for this put the srun command into a mode where various special
actions may be invoked.
エスケープシーケンス 現在は無視されます。私たちの意図は、これがsrunコマンドをさまざまな特別なアクションを呼び出すことができるモードにすることです。
MPI SUPPORT
MPI use depends upon the type of MPI being used. There are three fundamentally different modes of operation used by these various MPI implementation.MPIの使用は、使用するMPIのタイプによって異なります。これらのさまざまなMPI実装で使用される基本的に異なる3つの動作モードがあります。
1. Slurm directly launches the tasks and performs initialization
of communications through the PMI2 or PMIx APIs.
For example: "srun -n16 a.out".
1. Slurmはタスクを直接起動し、PMI2またはPMIx APIを介して通信の初期化を実行します。例:「srun -n16 a.out」。
2. Slurm creates a resource allocation for the job and then
mpirun launches tasks using Slurm's infrastructure (OpenMPI).
2. Slurmがジョブのリソース割り当てを作成し、mpirunがSlurmのインフラストラクチャ(OpenMPI)を使用してタスクを起動します。
3. Slurm creates a resource allocation for the job and then
mpirun launches tasks using some mechanism other than Slurm,
such as SSH or RSH.
These tasks are initiated outside of Slurm's monitoring
or control. Slurm's epilog should be configured to purge
these tasks when the job's allocation is relinquished,
or the use of pam_slurm_adopt is highly recommended.
3. Slurmはジョブのリソース割り当てを作成し、mpirunはSSHやRSHなどのSlurm以外のメカニズムを使用してタスクを起動します。これらのタスクは、Slurmの監視または制御の外で開始されます。Slurmのエピローグは、ジョブの割り当てが放棄されたときにこれらのタスクをパージするように構成する必要があります。または、pam_slurm_adoptの使用を強くお勧めします。
See https://slurm.schedmd.com/mpi_guide.html
for more information on use of these various MPI implementation
with Slurm.
SlurmでのこれらのさまざまなMPI実装の使用の詳細については、https://slurm.schedmd.com/mpi_guide.htmlを参照してください。
MULTIPLE PROGRAM CONFIGURATION
Comments in the configuration file must have a "#" in column one. The configuration file contains the following fields separated by white space:構成ファイルのコメントの1列目には「#」が必要です。構成ファイルには、空白で区切られた次のフィールドが含まれています。
- Task rank
-
One or more task ranks to use this configuration.
Multiple values may be comma separated.
Ranges may be indicated with two numbers separated with a '-' with
the smaller number first (e.g. "0-4" and not "4-0").
To indicate all tasks not otherwise specified, specify a rank of '*' as the
last line of the file.
If an attempt is made to initiate a task for which no executable
program is defined, the following error message will be produced
"No executable program specified for this task".
この構成を使用する1つ以上のタスクランク。複数の値をコンマで区切ることができます。範囲は、「-」で区切られた2つの数値で示され、最初に小さい数値が使用されます(たとえば、「0-4」ではなく「0-4」)。特に指定されていないすべてのタスクを示すには、ファイルの最後の行としてランク「*」を指定します。実行可能プログラムが定義されていないタスクを開始しようとすると、「このタスクには実行可能プログラムが指定されていません」というエラーメッセージが表示されます。
- Executable
-
The name of the program to execute.
May be fully qualified pathname if desired.
実行するプログラムの名前。必要に応じて、完全修飾パス名を指定できます。
- Arguments
-
Program arguments.
The expression "%t" will be replaced with the task's number.
The expression "%o" will be replaced with the task's offset within
this range (e.g. a configured task rank value of "1-5" would
have offset values of "0-4").
Single quotes may be used to avoid having the enclosed values interpreted.
This field is optional.
Any arguments for the program entered on the command line will be added
to the arguments specified in the configuration file.
プログラムの引数。式「%t」は、タスクの番号に置き換えられます。「%o」という表現は、この範囲内のタスクのオフセットで置き換えられます(たとえば、「1-5」の構成済みタスクランク値は「0-4」のオフセット値を持ちます)。囲まれた値が解釈されないようにするために、単一引用符を使用できます。このフィールドはオプションです。コマンドラインで入力されたプログラムの引数は、構成ファイルで指定された引数に追加されます。
For example:
################################################################### # srun multiple program configuration file # # srun -n8 -l --multi-prog silly.conf ################################################################### 4-6 hostname 1,7 echo task:%t 0,2-3 echo offset:%o > srun -n8 -l --multi-prog silly.conf 0: offset:0 1: task:1 2: offset:1 3: offset:2 4: linux15.llnl.gov 5: linux16.llnl.gov 6: linux17.llnl.gov 7: task:7
EXAMPLES
This simple example demonstrates the execution of the command hostname in eight tasks. At least eight processors will be allocated to the job (the same as the task count) on however many nodes are required to satisfy the request. The output of each task will be proceeded with its task number. (The machine "dev" in the example below has a total of two CPUs per node)この簡単な例は、8つのタスクでコマンドhostnameを実行する方法を示しています。少なくとも8つのプロセッサーが(タスク数と同じ)ジョブに割り当てられますが、要求を満たすには多くのノードが必要です。各タスクの出力は、そのタスク番号で続行されます。(以下の例のマシン「dev」には、ノードごとに合計2つのCPUがあります)
> srun -n8 -l hostname 0: dev0 1: dev0 2: dev1 3: dev1 4: dev2 5: dev2 6: dev3 7: dev3
The srun -r option is used within a job script
to run two job steps on disjoint nodes in the following
example. The script is run using allocate mode instead
of as a batch job in this case.
次の例では、srun -rオプションをジョブスクリプト内で使用して、切り離されたノードで2つのジョブステップを実行します。この場合、スクリプトはバッチジョブとしてではなく、割り当てモードを使用して実行されます。
> cat test.sh #!/bin/sh echo $SLURM_JOB_NODELIST srun -lN2 -r2 hostname srun -lN2 hostname > salloc -N4 test.sh dev[7-10] 0: dev9 1: dev10 0: dev7 1: dev8
The following script runs two job steps in parallel
within an allocated set of nodes.
次のスクリプトは、割り当てられたノードのセット内で2つのジョブステップを並行して実行します。
> cat test.sh #!/bin/bash srun -lN2 -n4 -r 2 sleep 60 & srun -lN2 -r 0 sleep 60 & sleep 1 squeue squeue -s wait > salloc -N4 test.sh JOBID PARTITION NAME USER ST TIME NODES NODELIST 65641 batch test.sh grondo R 0:01 4 dev[7-10] STEPID PARTITION USER TIME NODELIST 65641.0 batch grondo 0:01 dev[7-8] 65641.1 batch grondo 0:01 dev[9-10]
This example demonstrates how one executes a simple MPI job.
We use srun to build a list of machines (nodes) to be used by
mpirun in its required format. A sample command line and
the script to be executed follow.
この例は、単純なMPIジョブを実行する方法を示しています。srunを使用して、必要なフォーマットでmpirunが使用するマシン(ノード)のリストを作成します。次に、サンプルのコマンドラインと実行されるスクリプトを示します。
> cat test.sh #!/bin/sh MACHINEFILE="nodes.$SLURM_JOB_ID" # Generate Machinefile for mpi such that hosts are in the same # order as if run via srun # srun -l /bin/hostname | sort -n | awk '{print $2}' > $MACHINEFILE # Run using generated Machine file: mpirun -np $SLURM_NTASKS -machinefile $MACHINEFILE mpi-app rm $MACHINEFILE > salloc -N2 -n4 test.sh
This simple example demonstrates the execution of different jobs on different
nodes in the same srun. You can do this for any number of nodes or any
number of jobs. The executables are placed on the nodes sited by the
SLURM_NODEID env var. Starting at 0 and going to the number specified on
the srun commandline.
この単純な例は、同じsrun内の異なるノードでの異なるジョブの実行を示しています。これは、任意の数のノードまたは任意の数のジョブに対して実行できます。実行可能ファイルは、SLURM_NODEID env varによって配置されたノードに配置されます。0から始まり、srunコマンドラインで指定された番号に移動します。
> cat test.sh case $SLURM_NODEID in 0) echo "I am running on " hostname ;; 1) hostname echo "is where I am running" ;; esac > srun -N2 test.sh dev0 is where I am running I am running on dev1
This example demonstrates use of multi-core options to control layout
of tasks.
We request that four sockets per node and two cores per socket be
dedicated to the job.
この例では、マルチコアオプションを使用してタスクのレイアウトを制御する方法を示します。ノードごとに4つのソケットとソケットごとに2つのコアをジョブ専用にすることを要求します。
> srun -N2 -B 4-4:2-2 a.out
This example shows a script in which Slurm is used to provide resource
management for a job by executing the various job steps as processors
become available for their dedicated use.
この例では、プロセッサーが専用に使用できるようになったときにさまざまなジョブステップを実行することにより、Slurmを使用してジョブのリソース管理を提供するスクリプトを示します。
> cat my.script #!/bin/bash srun --exclusive -n4 prog1 & srun --exclusive -n3 prog2 & srun --exclusive -n1 prog3 & srun --exclusive -n1 prog4 & wait
This example shows how to launch an application called "master" with one task,
8 CPUs and and 16 GB of memory (2 GB per CPU) plus another application called
"slave" with 16 tasks, 1 CPU per task (the default) and 1 GB of memory per task.
この例は、1つのタスク、8つのCPUと16 GBのメモリ(CPUごとに2 GB)で「マスター」と呼ばれるアプリケーションを起動する方法と、16のタスク、1つのタスクで1 CPU(デフォルト)を持つ「スレーブ」と呼ばれる別のアプリケーションを起動する方法を示しています。タスクごとに1 GBのメモリ。
> srun -n1 -c16 --mem-per-cpu=1gb master : -n16 --mem-per-cpu=1gb slave
COPYING
Copyright (C) 2006-2007 The Regents of the University of California. Produced at Lawrence Livermore National Laboratory (cf, DISCLAIMER).Copyright (C) 2008-2010 Lawrence Livermore National Security.
Copyright (C) 2010-2015 SchedMD LLC.
This file is part of Slurm, a resource management program. For details, see <https://slurm.schedmd.com/>.
Slurm is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
Slurm is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
SEE ALSO
salloc(1), sattach(1), sbatch(1), sbcast(1), scancel(1), scontrol(1), squeue(1), slurm.conf(5), sched_setaffinity (2), numa (3) getrlimit (2)
Index
- NAME
- SYNOPSIS
- DESCRIPTION
- RETURN VALUE
- EXECUTABLE PATH RESOLUTION
- OPTIONS
- PERFORMANCE
- INPUT ENVIRONMENT VARIABLES
- OUTPUT ENVIRONMENT VARIABLES
- SIGNALS AND ESCAPE SEQUENCES
- MPI SUPPORT
- MULTIPLE PROGRAM CONFIGURATION
- EXAMPLES
- COPYING
- SEE ALSO
This document was created by man2html using the manual pages.
Time: 20:44:46 GMT, May 21, 2020