Trackable RESources (TRES)
A TRES is a resource that can be tracked for usage or used to enforce
limits against. A TRES is a combination of a Type and a Name.
Types are predefined.
Current TRES Types are:
TRESは、使用状況を追跡したり、制限を適用するために使用できるリソースです。TRESはタイプと名前の組み合わせです。タイプは事前定義されています。現在のTRESタイプは次のとおりです。
- BB (burst buffers)
- Billing
- CPU
- Energy
- FS (filesystem)
- GRES
- IC (interconnect)
- License
- Mem (Memory)
- Node
- Pages
- VMem (Virtual Memory/Size)
The Billing TRES is calculated from a partition's TRESBillingWeights. Though
TRES weights on a partition may be defined as doubles, the Billing TRES values
for a job are stored as integers. This is not the case when calculating a
job's fairshare where the value is treated as a double.
請求TRESは、パーティションのTRESBillingWeightsから計算されます。パーティションのTRESウェイトはdoubleとして定義される場合がありますが、ジョブの請求TRES値は整数として保存されます。これは、値がdoubleとして扱われるジョブのフェアシェアを計算する場合には当てはまりません。
Valid 'FS' TRES are 'disk' (local disk) and 'lustre'. These are primarily
there for reporting usage, not limiting access.
有効な 'FS' TRESは 'disk'(ローカルディスク)および 'lustre'です。これらは主にアクセスを制限するのではなく、使用状況をレポートするためにあります。
Valid 'IC' TRES is 'ofed'. These are primarily there for reporting usage, not
limiting access.
有効な 'IC' TRESは 'ofed'です。これらは主にアクセスを制限するのではなく、使用状況をレポートするためにあります。
slurm.conf settings
- AccountingStorageTRES
Used to define which TRES are to be tracked on the system. By default Billing, CPU, Energy, Memory, Node, FS/Disk, Pages and VMem are tracked. These default TRES cannot be disabled, but only appended to. The following example:
システムで追跡するTRESを定義するために使用されます。デフォルトでは、請求、CPU、エネルギー、メモリ、ノード、FS /ディスク、ページ、およびVMemが追跡されます。これらのデフォルトのTRESを無効にすることはできませんが、追加するだけです。次の例:
AccountingStorageTRES=gres/craynetwork,license/iop1,bb/cray
will track billing, cpu, energy, memory, nodes, fs/disk, pages and vmem along with a GRES called craynetwork as well as a license called iop1. It will also track usage on a Cray burst buffer. Whenever these resources are used on the cluster they are recorded. TRES are automatically set up in the database on the start of the slurmctld.
請求、cpu、エネルギー、メモリ、ノード、fs / disk、ページ、およびvmemと、craynetworkと呼ばれるGRESおよびiop1と呼ばれるライセンスを追跡します。また、Crayバーストバッファーの使用状況も追跡します。これらのリソースは、クラスターで使用されるたびに記録されます。TRESは、slurmctldの開始時にデータベースに自動的にセットアップされます。
The TRES that require associated names are BB, GRES, and License. As seen in the above example, GRES and License are typically different on each system. The BB TRES is named the same as the burst buffer plugin being used. In the above example we are using the Cray burst buffer plugin.
関連する名前を必要とするTRESは、BB、GRES、およびライセンスです。上記の例にあるように、GRESとライセンスは通常、各システムで異なります。BB TRESの名前は、使用されているバーストバッファープラグインと同じです。上記の例では、Crayバーストバッファープラグインを使用しています。
When including a specific GRES with a subtype, it is also recommended to include its generic type, otherwise a request with only the generic one won't be accounted for. For example, if we want to account for gres/gpu:tesla, we would also include gres/gpu for accounting gpus in requests like srun --gres=gpu:1.
特定のGRESにサブタイプを含める場合、そのジェネリック型を含めることもお勧めします。そうしないと、ジェネリック型のみのリクエストは考慮されません。たとえば、gres / gpu:teslaを説明する場合は、srun --gres = gpu:1のようなリクエストにgpusを説明するためのgres / gpuも含めます。
AccountingStorageTRES=gres/gpu,gres/gpu:tesla
- PriorityWeightTRES
A comma separated list of TRES Types and weights that sets the degree that each TRES Type contributes to the job's priority.
各TRESタイプがジョブの優先度に寄与する度合いを設定するTRESタイプと重みのコンマ区切りリスト。PriorityWeightTRES=CPU=1000,Mem=2000,GRES/gpu=3000
Applicable only if PriorityType=priority/multifactor and if AccountingStorageTRES is configured with each TRES Type. The default values are 0.
PriorityType = priority / multifactorで、AccountingStorageTRESが各TRES Typeで構成されている場合にのみ適用されます。デフォルト値は0です。The Billing TRES is not available for priority calculations because the number isn't generated until after the job has been allocated resources — since the number can change for different partitions.
請求番号は、ジョブにリソースが割り当てられるまで生成されないため、優先度の計算には使用できません。これは、パーティションごとに数が変わる可能性があるためです。 - TRESBillingWeights
For each partition this option is used to define the billing weights of each TRES type that will be used in calculating the usage of a job.
パーティションごとに、このオプションを使用して、ジョブの使用量の計算に使用される各TRESタイプの請求の重みを定義します。
Billing weights are specified as a comma-separated list of TRES=Weight pairs.
請求の重みは、TRES = Weightペアのコンマ区切りリストとして指定されます。
Any TRES Type is available for billing. Note that the base unit for memory and burst buffers is megabytes.
どのTRESタイプも請求に使用できます。メモリとバーストバッファの基本単位はメガバイトであることに注意してください。
By default the billing of TRES is calculated as the sum of all TRES types multiplied by their corresponding billing weight.
デフォルトでは、TRESの請求は、すべてのTRESタイプの合計に対応する請求ウェイトを掛けたものとして計算されます。
The weighted amount of a resource can be adjusted by adding a suffix of K,M,G,T or P after the billing weight. For example, a memory weight of "mem=.25" on a job allocated 8GB will be billed 2048 (8192MB *.25) units. A memory weight of "mem=.25G" on the same job will be billed 2 (8192MB * (.25/1024)) units.
リソースの加重量は、請求加重の後にK、M、G、TまたはPのサフィックスを追加することで調整できます。たとえば、8 GBが割り当てられたジョブのメモリの重みが「mem = .25」の場合、2048(8192MB * .25)単位で課金されます。同じジョブのメモリウェイトが「mem = .25G」の場合、2(8192MB *(.25 / 1024))単位で課金されます。
When a job is allocated 1 CPU and 8 GB of memory on a partition configured with:
次のように構成されたパーティションにジョブに1 CPUと8 GBのメモリが割り当てられている場合:
TRESBillingWeights="CPU=1.0,Mem=0.25G,GRES/gpu=2.0"
the billable TRES will be:
請求可能なTRESは次のようになります。
(1*1.0) + (8*0.25) + (0*2.0) = 3.0
If PriorityFlags=MAX_TRES is configured, the billable TRES is calculated as the MAX of individual TRES' on a node (e.g. cpus, mem, gres) plus the sum of all global TRES' (e.g. licenses). Using the same example above, the billable TRES will be:
PriorityFlags = MAX_TRESが構成されている場合、請求可能なTRESは、ノード(例:cpus、mem、gres)上の個々のTRES 'の最大値と、すべてのグローバルTRES'(例:ライセンス)の合計として計算されます。上記と同じ例を使用すると、請求可能なTRESは次のようになります。
MAX(1*1.0, 8*0.25) + (0*2.0) = 2.0
If TRESBillingWeights is not defined then the job is billed against the total number of allocated CPUs.
TRESBillingWeightsが定義されていない場合、ジョブは割り当てられたCPUの総数に対して課金されます。
NOTE: TRESBillingWeights is only used when calculating fairshare and doesn't affect job priority directly as it is currently not used for the size of the job. If you want TRES' to play a role in the job's priority then refer to the PriorityWeightTRES option.
注:TRESBillingWeightsは、フェアシェアの計算時にのみ使用され、現在ジョブのサイズには使用されていないため、ジョブの優先度には直接影響しません。TRESがジョブの優先順位で役割を果たすようにしたい場合は、PriorityWeightTRESオプションを参照してください。
NOTE: As with PriorityWeightTRES only TRES defined in AccountingStorageTRES are available for TRESBillingWeights.
注:PriorityWeightTRESと同様に、TRESBillingWeightsにはAccountingStorageTRESで定義されたTRESのみを使用できます。
NOTE: Jobs can be limited based off of the calculated TRES billing value. See Resource Limits documentation for more information.
注:計算されたTRES請求値に基づいて、ジョブを制限できます。詳細については、リソース制限のドキュメントをご覧ください。
NOTE: If a Billing TRES is defined as a weight, it is ignored.
注:請求TRESが重みとして定義されている場合、それは無視されます。
sacct
sacct can be used to view the TRES of each job by adding "tres" to the
--format option.
sacctを使用して--formatオプションに「tres」を追加することにより、各ジョブのTRESを表示できます。
sacctmgr
sacctmgr is used to view the various TRES available globally in the
system. sacctmgr show tres will do this.
sacctmgrは、システムでグローバルに使用可能なさまざまなTRESを表示するために使用されます。sacctmgr show tresがこれを行います。
sreport
sreport reports on different TRES. Simply using the comma separated input
option --tres= will have sreport generate reports available
for the requested TRES types. More information about these reports
can be found on the sreport manpage.
異なるTRESに関するレポートを報告します。カンマ区切りの入力オプション--tres =を使用するだけで、sreportは要求されたTRESタイプで使用可能なレポートを生成します。これらのレポートの詳細については、sreportマンページを参照してください。
In sreport, the "Reported" Billing TRES is calculated from the largest
Billing TRES of each node multiplied by the time frame. For example, if a node
is part of multiple partitions and each has a different TRESBillingWeights
defined the Billing TRES for the node will be the highest of the partitions.
If TRESBillingWeights is not defined on any partition for a node then the
Billing TRES will be equal to the number of CPUs on the node.
sreportでは、「報告された」請求TRESは、各ノードの最大の請求TRESに時間フレームを掛けて計算されます。たとえば、ノードが複数のパーティションの一部であり、それぞれに異なるTRESBillingWeightsが定義されている場合、ノードの請求TRESが最も高いパーティションになります。TRESBillingWeightsがノードのどのパーティションにも定義されていない場合、請求TRESはノード上のCPUの数と等しくなります。
Last modified 1 May 2018