すべてのプロダクト
Search
ドキュメントセンター

: cgroup v1とcgroup v2の違い

最終更新日:Aug 16, 2024

Linuxでは、Control Groups (cgroups) は、cgroups内のタスク (プロセス) に割り当てられる物理リソース (CPU、メモリ、I/Oリソースなど) を制限、記録、および分離するリソース管理および制限メカニズムを提供します。 親cgroupは、子孫cgroupsのリソース使用率を制御するために使用できます。 cgroup v1とcgroup v2は、cgroupの2つの主要なバージョンであり、設計と使用方法が大きく異なります。 このトピックでは、cgroup v1とcgroup v2の主な違いについて説明します。

一般的なインターフェイスの違い

cgroup v1インターフェイス

インターフェイス名

目的

社内インターフェース

対応するcgroup v2インターフェイス

cgroup.procs

cgroupにタスクを移行するプロセスID (PID) を書き込みます。

いいえ

cgroup.procs.

cgroup.clone_children

値1は、子cgroupsが親cgroupのcpuset構成を継承することを示します。

説明

このインターフェイスはcpusetサブシステムでのみ有効であり、歴史的な理由により共通インターフェイスとして分類されます。

いいえ

N/A

cgroup.sane_behavior

下位互換性を提供するcgroup v2インターフェイスの実験的な機能をサポートします。

いいえ

N/A

notify_on_release

値1は、cgroupが空になった場合にrelease_agentインターフェイスのタスクが実行されることを示します。

説明

これらのインターフェイスはルートcgroupにのみ存在します。

いいえ

同様の機能を実装するcgroup.events

release_agent

いいえ

tasks

スレッドID (TID) を書き込み、スレッドをcgroupに移行します。

いいえ

cgroup.threads.

pool_size

cgroupキャッシュプールのサイズを制御します。 cgroupキャッシュプールは、同時実行性の高いシナリオでのcgroupsの作成とバインドを高速化するのに役立ちます。

説明

インターフェイスはcgroup_renameに依存し、cgroupv2では使用できません。

はい

N/A

cgroup v2インターフェイス

インターフェイス名

目的

社内インターフェース

対応するcgroup v1インターフェース

cgroup.procs

タスクをcgroupに移行するためのPIDを書き込みます。

いいえ

cgroup.procs.

cgroup.type

文字列 "threaded" を書き込み、cgroupをthreaded cgroupに変更してスレッド粒度コントロールを提供します。

説明

cpupids、およびperf_eventスレッドコントローラーのみがサポートされています。

いいえ

N/A

cgroup.threads

スレッドをcgroupに移行するためのTIDを書き込みます。

説明

文字列 "threaded" は、cgroup.typeインターフェイスファイルに書き込む必要があります。

いいえ

タスクを実行します。

cgroup. コントローラ

現在のcgroupで使用可能なすべてのサブシステムを照会します。

いいえ

N/A

cgroup.subtree_control

cgroupから子cgroupsへのリソース配分を制御できるサブシステムを指定します。

説明

サブシステムは、cgroup.controllersインターフェイスを使用して照会できます。

いいえ

N/A

cgroup.events

現在のcgroupにアクティブなプロセスが存在するかどうか、および現在のcgroupが凍結されているかどうかを照会します。 fsnotifyを使用してこのインターフェイスをリッスンし、インターフェイスのステータスが変更されているかどうかを確認できます。

説明

このインターフェイスはルートcgroupに存在しません。

いいえ

同様の機能を実装するために一緒に使用されるnotify_on_releaseとrelease_agent

cgroup.max.descendants

現在のcgroupで許可されている子孫cgroupの最大数を制御します。

いいえ

N/A

cgroup.max.depth

現在のcgroupで許可されている子孫cgroupsの最大深度を制御します。

いいえ

N/A

cgroup.stat

現在のcgroupの下にある子孫cgroupと、Dying (deleted) 状態にある子孫cgroupの数を照会します。

いいえ

N/A

cgroup.freeze

cgroup内のタスクをフリーズするかどうかを制御します。

説明

このインターフェイスはルートcgroupに存在しません。

いいえ

freezerサブシステムのfreezer. state

cpu.stat

CPU使用率に関する統計を照会します。

いいえ

N/A

io. 圧力

I/Oパフォーマンス、メモリ、およびCPUの圧力ストール情報 (PSI) を照会します。 情報はポーリングすることができる。 詳細については、以下のトピックをご参照ください。

いいえ

PSI機能を実装できるcpuacctサブシステムのio.pressure、memory.pressure、およびcpu.pressureインターフェイス

memory.pressure

いいえ

cpu. 圧力

いいえ

サブシステムインターフェースの違い

CPU

cgroup v1インターフェイス

インターフェイス名

目的

社内インターフェース

対応するcgroup v2インターフェイス

cpu.shares

cgroup内のタスクに割り当てられるCPUタイムスライスに基づいて、重みを制御します。 デフォルト値: 1024。

いいえ

別の単位を使用するcpu.weightおよびcpu.weight.nice

cpu.idle

現在のcgroupにアイドルスケジューリングポリシーを使用するかどうかを制御します。 アイドルスケジューリングポリシーは、最小のCPUシェアに基づいてタイムスライスを割り当てます。 最小ランタイムはサポートされなくなり、CPUリソースを非アイドルタスクに簡単に割り当てることができます。

説明

cpu.idle値が1に設定されている場合、cpu.sharesインターフェイスは書き込み不能になり、3にのみ設定されます。

いいえ

cpu.idle

cpu.priority

きめ細かいプリエンプティブ優先順位。 プリエンプションは、クロックが中断またはウェイクアップされたときに実行されます。 きめ細かいプリエンプティブ優先度は、優先度の高いタスクが優先度の低いタスクのメモリをプリエンプトできるように、優先度の違いに基づいて変化します。

はい

cpu.priority

cpu.cfs_quota_us

完全公平なスケジューラ (CFS) を使用して制御されるCPUランタイム。 cpu.cfs_quota_usは、CPU. cfs_period_usインターフェイスで定義された期間内のcgroup内のタスクの最大cpuランタイムを指定します。

いいえ

cpu.max

cpu.cfs_period_us

いいえ

cpu.cfs_burst_us

cpu.cfs_period_usインターフェイスで定義された期間内にタスクがバーストできる期間。 詳細については、「cgroup v1のCPUバースト機能の有効化」をご参照ください。

いいえ

cpu.max.burst

cpu.cfs_init_buffer_us

cgroup内のタスクが開始されたときにバーストできる期間。

はい

cpu.max.init_buffer

cpu.stat

CPUランタイムに関する統計情報 (cpu.cfs_period_us期間の数やタスクによって使用されているCPUリソースの数など) を照会します。

いいえ

cpu.stat

cpu.rt_runtime_us

リアルタイムCPUランタイムを制御します。 cpu.rt_runtime_usは、cpu.rt_period_us期間内のcgroup内のリアルタイムタスクの最大ランタイムを指定します。

いいえ

N/A

cpu.rt_period_us

いいえ

N/A

cpu.bvt_warp_ns

グループID属性を制御してcgroupsのIDを変更します。これを使用して、オフラインタスクを区別し、オンラインタスクのCPUのサービス品質 (QoS) を向上させます。 詳細については、「グループID機能」をご参照ください。

はい

cpu.bvt_warp_ns

cpu.identity

はい

cpu.identity

cpu.ht_stable

一貫したSMTコンピューティング能力を維持するために同時マルチスレッド (SMT) ピアノイズを生成するかどうかを指定します。

はい

N/A

cpu.ht_ratio

SMTピアがアイドル状態のときにクォータを使用して追加のコンピューティングパワーを提供し、一貫したSMTコンピューティングパワーを維持するかどうかを制御します。

はい

cpu.ht_ratio

cgroup v2インターフェイス

説明

cgroup v2はcpuacctサブシステムをサポートしなくなりました。 cpuacctサブシステムの特定のインターフェースまたは関連する機能は、cgroup v2のCPUサブシステムによって実装される。

インターフェイス名

目的

社内インターフェース

対応するcgroup v1インターフェース

cpu.weight

cgroup内のタスクに割り当てられるCPUタイムスライスに基づいて、重みを制御します。 デフォルト値:100

いいえ

別のユニットを使用するcpu.shares

cpu.weight.nice

cgroup内のタスクに割り当てられるCPUタイムスライスに基づいて、重みを制御します。 デフォルト値:0

いいえ

別のユニットを使用するcpu.shares

cpu.idle

現在のcgroupにアイドルスケジューリングポリシーを使用するかどうかを制御します。 アイドルスケジューリングポリシーは、最小のCPUシェアに基づいてタイムスライスを割り当てます。 最小ランタイムはサポートされなくなり、CPUリソースを非アイドルタスクに簡単に割り当てることができます。

説明

cpu.idle値が1の場合、cpu.weightおよびcpu.weight.niceインターフェイスは書き込み不能になり、最小重み0.3が有効になります。 この場合、cpu.weight値は0に丸められます。

いいえ

cpu.idle

cpu.priority

きめ細かいプリエンプティブ優先順位。 プリエンプションは、クロックが中断またはウェイクアップされたときに実行されます。 きめ細かいプリエンプティブ優先度は、優先度の高いタスクが優先度の低いタスクのメモリをプリエンプトできるように、優先度の違いに基づいて変化します。

はい

cpu.priority

cpu.max

CFSを使用して制御されるCPUランタイム。 cpu.cfs_quota_usは、CPU. cfs_period_us期間内のcgroup内のタスクの最大cpuランタイムを指定します。

いいえ

cpu.cfs_quota_us, cpu.cfs_period_us

cpu.max.burst

cpu.maxインターフェイスで定義された期間内にタスクがバーストできる期間。

いいえ

cpu.max.burst

cpu.max.init_buffer

cgroup内のタスクが開始されたときにバーストできる期間。

はい

cpu.cfs_init_buffer_us

cpu.bvt_warp_ns

グループID属性を制御してcgroupsのIDを変更します。これを使用して、オフラインタスクを区別し、オンラインタスクに対してより優れたCPU QoS保証を提供できます。

はい

cpu.bvt_warp_ns

cpu.identity

はい

cpu.identity

cpu.sched_cfs_statistics

cgroupのランタイムや、同じレベルまたは異なるレベルのcgroupsの待機時間など、CFSに関する統計を照会します。

説明

kernel.sched_schedstatsオプションを有効にする必要があります。

はい

cpuacct.sched_cfs_statistics

cpu.wait_latency

キューで待機しているタスクのレイテンシを照会します。

説明

kernel.sched_schedstatsおよび /proc/cpusli/sched_lat_enabledオプションを有効にする必要があります。

はい

cpuacct.wait_latency

cpu.cgroup_wait_latency

キューで待機しているcgroupsのレイテンシを照会します。 wait_latencyインターフェイスはタスクスケジューリングエンティティ (SE) のレイテンシをカウントし、cgroup_wait_latencyインターフェイスはグループSEのレイテンシをカウントします。

説明

kernel.sched_schedstatsおよび /proc/cpusli/sched_lat_enabledオプションを有効にする必要があります。

はい

cpuacct.cgroup_wait_latency

cpu.block_latency

I/O以外の原因でブロックされたタスクのレイテンシを照会します。

説明

kernel.sched_schedstatsおよび /proc/cpusli/sched_lat_enabledオプションを有効にする必要があります。

はい

cpuacct.block_latency

cpu.ioblock_latency

I/O操作によってブロックされたタスクのレイテンシを照会します。

説明

kernel.sched_schedstatsおよび /proc/cpusli/sched_lat_enabledオプションを有効にする必要があります。

はい

cpuacct.ioblock_latency

cpu.ht_ratio

SMTピアがアイドル状態のときにクォータを使用して追加のコンピューティングパワーを提供し、一貫したSMTコンピューティングパワーを維持するかどうかを制御します。

説明

このインターフェイスは、コアスケジューリング機能が有効になっている場合にのみ有効になります。

はい

cpu.ht_ratio

cpuset

cgroup v1インターフェイス

インターフェイス名

目的

社内インターフェース

対応するcgroup v2インターフェイス

cpuset.cpus

タスクを実行できるCPUを制御します。

説明

このインターフェイスが空の場合、タスクをcgroupにアタッチできません。

いいえ

cpuset.cpus

cpuset.mems

cgroup内のタスクに割り当てることができる非均一メモリアクセス (NUMA) ノードを制御します。

説明

このインターフェイスが空の場合、タスクをcgroupにアタッチできません。

いいえ

cpuset.mems

cpuset.effective_cpus

タスクが実行されている有効なCPUを照会します。 このインターフェイスの値は、CPUホットプラグイベントの影響を受けます。

いいえ

cpuset.cpus.effective

cpuset.effective_mems

実行中のタスクに割り当てられている有効なNUMAノードを照会します。 このインターフェイスの値は、メモリノードのホットプラグイベントの影響を受けます。

いいえ

cpuset.mems.effective

cpuset.cpu_exclusive

どのCPUがcgroupによって排他的に使用され、cgroup内の同じレベルにある他のcpusetによって使用できないかを制御します。

いいえ

同様の機能をサポートするcpuset.cpus.partition

cpuset.mem_exclusive

どのNUMAノードがcgroupによって排他的に使用され、cgroup内の同じレベルにある他のcpuセットでは使用できないかを制御します。

いいえ

N/A

cpuset.mem_hardwall

値1は、cpuセットに接続されているメモリノードからのみメモリをタスクに割り当てることができることを示します。

いいえ

N/A

cpuset.sched_load_balance

CPUがcpuset内でロードバランスされるかどうかを制御します。 デフォルトでは、この機能は有効になっています。

いいえ

N/A

cpuset.sched_relax_domain_level

スケジューラがタスクを移行してタスクのCPUをロードバランスするときに、CPUを検索する範囲を制御します。 デフォルト値: -1。

  • -1: デフォルトのシステムポリシーを適用します。

  • 0: 検索を実行しません。

  • 1: 同じコア内でハイパースレッドを検索します。

  • 2: 同じパッケージ内のコアを検索します。

  • 3: 同じノード上のCPUを検索します。

  • 4: 同じチャンク内のノードでCPUを検索します。

  • 5: システム全体でCPUを検索します。

いいえ

N/A

cpuset.memory_migrate

非ゼロ値は、タスクがcpuセット内のメモリページを割り当てられ、別のcpuセットに移行された場合、そのメモリページも新しいcpuセットに移行できることを示します。

いいえ

N/A

cpuset.memory_pressure

現在のcpusetのメモリページング圧力を計算します。

いいえ

N/A

cpuset.memory_spread_page

値1は、カーネルがページキャッシュをcpuセットのメモリノードに均等に割り当てることを示します。

いいえ

N/A

cpuset.memory_spread_slab

値1は、カーネルがスラブキャッシュをcpuセットのメモリノードに均等に割り当てることを示します。

いいえ

N/A

cpuset.memory_pressure_enabled

値1は、cpusetのメモリ圧力統計収集が有効になっていることを示します。

いいえ

N/A

cgroup v2インターフェイス

インターフェイス名

目的

社内インターフェース

対応するcgroup v1インターフェース

cpuset.cpus

タスクを実行できるCPUを制御します。

説明

このインターフェイスの値が空の場合、親cpusetのCPUが使用されます。

いいえ

cpuset.cpus

cpuset.mems

cgroup内のタスクに割り当てることができるNUMAノードを制御します。

説明

このインターフェイスの値が空の場合、親cpusetのNUMAノードが使用されます。

いいえ

cpuset.mems

cpuset.cpus.effective

タスクが実行されている有効なCPUを照会します。 このインターフェイスの値は、CPUホットプラグイベントの影響を受けます。

いいえ

cpuset.effective_cpus

cpuset.mems.effective

実行中のタスクに割り当てられている有効なNUMAノードを照会します。 このインターフェイスの値は、メモリノードのホットプラグイベントの影響を受けます。

いいえ

cpuset.effective_mems

cpuset.cpus.partition

cpusetのCPUを排他的に使用するかどうかを制御します。 rootがインターフェイスに書き込まれている場合、cpusetのCPUは排他的に使用されます。

いいえ

同様の機能を実装するcpuset.cpu_exclusive

. __DEBUG__.cpuset.cpus. サブパーティション

rootがcpuset. CPUs. partitionインターフェイスに書き込まれるときに排他的に使用されるCPUを照会します。

説明

このインターフェイスは、cgroup_debug機能がカーネルcmdlineで有効になっている場合にのみ使用できます。

いいえ

N/A

blkio

cgroup v1インターフェイス

インターフェイス名

目的

社内インターフェース

対応するcgroup v2インターフェイス

blkio.throttle.read_bps_device

cgroupがデバイスから読み取ることができる1秒あたりの最大バイト数を指定します。

例:

echo "<major >:< minor> <bps>" > /sys/fs/cgroup/blkio/<cgroup>/blkio.throttle.read_bps_device

いいえ

io.max

blkio.throttle.write_bps_device

cgroupがデバイスに書き込むことができる1秒あたりの最大バイト数を指定します。

例:

echo "<major >:< minor> <bps>" > /sys/fs/cgroup/blkio/<cgroup>/blkio.throttle.write_bps_device

いいえ

io.max

blkio.throttle.read_iops_device

cgroupがデバイスで実行できる1秒あたりの読み取り操作の最大数を指定します。

例:

echo "<major >:< minor> <iops>" > /sys/fs/cgroup/blkio/<cgroup>/blkio.throttle.read_iops_device

いいえ

io.max

blkio.throttle.write_iops_device

cgroupがデバイスで実行できる1秒あたりの読み取り操作の最大数を指定します。

例:

echo "<major >:< minor> <iops>" > /sys/fs/cgroup/blkio/<cgroup>/blkio.throttle.write_iops_device

いいえ

io.max

blkio.throttle.io_service_bytes

帯域幅統計を照会します。

このインターフェイスは、すべてのデバイスの読み取り、書き込み、同期、非同期、破棄、および合計帯域幅の統計を収集します。 単位:バイト

いいえ

io.stat

blkio.throttle.io_service_bytes_recursive

blkio.throttle.io_service_bytesインターフェイスの再帰バージョン。

blkio.throttle.io_service_bytesインターフェースを使用して収集された統計には、子孫cgroupsのデータが含まれます。

いいえ

N/A

blkio.throttle.io_serviced

IOPS統計を照会します。

このインターフェイスは、すべてのデバイスの読み取り、書き込み、同期、非同期、破棄、および合計IOPS統計を収集します。

いいえ

io.stat

blkio.throttle.io_serviced_recursive

blkio.throttle.io_servicedインターフェイスの再帰バージョン。

blkio.throttle.io_servicedインターフェイスを使用して収集された統計には、子孫cgroupsのデータが含まれます。

いいえ

N/A

blkio.throttle.io_service_time

I/O操作の要求ディスパッチと要求完了の間の期間を照会します。これは、平均I/Oレイテンシを測定するために使用されます。

詳細については、「ブロックI/Oスロットリングの監視の強化」をご参照ください。

はい

io.extstat

blkio.throttle.io_wait_time

I/O操作がスケジューラーキューで待機する期間を照会します。これは、平均I/Oレイテンシを測定するために使用されます。

詳細については、「ブロックI/Oスロットリングの監視の強化」をご参照ください。

はい

io.extstat

blkio.throttle.io_completed

完了したI/O操作の数を照会します。これは、平均I/Oレイテンシを測定するために使用されます。

詳細については、「ブロックI/Oスロットリングの監視の強化」をご参照ください。

はい

io.extstat

blkio.throttle.total_bytes_queued

スロットリングされたI/Oバイト数を照会します。これは、I/Oレイテンシがスロットリングに関連しているかどうかを分析するために使用されます。

詳細については、「ブロックI/Oスロットリングの監視の強化」をご参照ください。

はい

io.extstat

blkio.throttle.total_io_queued

スロットリングされたI/O操作の数を照会します。これは、I/Oレイテンシがスロットリングに関連しているかどうかを分析するために使用されます。

詳細については、「ブロックI/Oスロットリングの監視の強化」をご参照ください。

はい

io.extstat

blkio.cost.model

blk-iocostコストモデルを指定します。 制御モード (ctrl) は自動またはユーザーに設定できます。

このインターフェイスはルートcgroupにのみ存在します。 例:

echo "<major >:< minor> ctrl=user model=linear rbps=<rbps> rseqiops=<rseqiops> randiops=<rrandiops> wbps=<wbps> wseqiops=<wseqiops> wrandiops=<wrandiops>" > /sys/fs/cgroup/blkio/blkio/blkio/blkio

詳細については、「blk-ioscost重みベースのスロットリング機能の設定」をご参照ください。

はい

io.cost.model

blkio.cost.qos

blk-iocost機能を制御し、ディスクの輻輳をチェックするためのQoSポリシーを設定します。

このインターフェイスはルートcgroupにのみ存在します。 例:

echo "<major >:< minor> enable=1 ctrl=user rpct= rlat=5000 wpct=95.00 wlat=5000 min=50.00 max=150.00" > /sys/fs/cgroup/blkio/blkio.cost.qos

詳細については、「blk-ioscostウェイト調整の設定」をご参照ください。

はい

io.cost.qos

blkio.cost.weight

cgroupの重みを指定します。

このインターフェイスは、ルート以外のcgroupsにのみ存在し、次のモードで設定できます。

  • weight: すべてのデバイスに同じ重みを設定します。

  • major:minor + weight: 特定のデバイスの重量を設定します。

詳細については、「blk-ioscost重みベースのスロットリング機能の設定」をご参照ください。

はい

io.cost.weight

blkio.cost.stat

blk-iocost統計を照会します。 インターフェイスは、ルート以外のcgroupsにのみ存在します。

はい

N/A

cgroup v2インターフェイス

インターフェイス名

目的

社内インターフェース

対応するcgroup v1インターフェース

io.max

読み取りおよび書き込みのスロットリング速度をバイト /秒およびIOPSで指定するスロットリングインターフェイス。 例:

echo "<major >:< minor> rbps=<bps> wbps=<bps> riops=<iops> wiops=<iops>" > /sys/fs/cgroup/<cgroup>/io.max

いいえ

blkio.throttle.read_bps_device

blkio.throttle.read_iops_device

blkio.throttle.write_bps_device

blkio.throttle.write_iops_device

io.stat

I/O操作の統計を照会します。これには、バイト /秒およびIOPSでの読み取り、書き込み、および破棄操作のレートが含まれます。

いいえ

blkio.throttle.io_service_bytes

blkio.throttle.io_serviced

io.extstat

待機時間、サービス時間、完了したI/O操作の数、およびスロットレート (byte/sおよびIOPS) などの拡張I/O統計を照会します。

いいえ

blkio.throttle.io_service_time

blkio.throttle.io_wait_time

blkio.throttle.io_completed

blkio.throttle.total_bytes_queued

blkio.throttle.total_io_queued

io.cost.model

blk-iocostコストモデルを指定します。 制御モード (ctrl) は自動またはユーザーに設定できます。

このインターフェイスはルートcgroupにのみ存在します。 例:

echo "<major >:< minor> ctrl=user model=linear rbps=<rbps> rseqiops=<rseqiops> randiops=<rrandiops> wbps=<wbps> wseqiops=<wseqiops> wrandiops=<wrandiops>" > /sys/fs/cgroup /.cost.mo

詳細については、「blk-ioscostウェイト調整の設定」をご参照ください。

いいえ

blkio.cost.model

io.cost.qos

blk-iocost機能を制御し、ディスクの輻輳をチェックするためのQoSポリシーを設定します。

このインターフェイスはルートcgroupにのみ存在します。 例:

echo "<major >:< minor> enable=1 ctrl=user rpct= rlat=5000 wpct=95.00 wlat=5000 min=50.00 max=150.00" > /sys/fs/cgroup/io.cost.qos

詳細については、「blk-ioscostウェイト調整の設定」をご参照ください。

いいえ

blkio.cost.qos

io.cost.weight

cgroupの重みを指定します。

このインターフェイスは、ルート以外のcgroupsにのみ存在し、次のモードで設定できます。

  • weight: すべてのデバイスに同じ重みを設定します。

  • major:minor + weight: 特定のデバイスの重量を設定します。

詳細については、「blk-ioscostウェイト調整の設定」をご参照ください。

いいえ

blkio.cost.weight

メモリ

cgroup v1インターフェイス

インターフェイス名

目的

社内インターフェース

対応するcgroup v2インターフェイス

memory.us age_in_bytes

現在のメモリ使用量を照会します。

いいえ

N/A

memory.max_usage_in_bytes

最大メモリ使用量を照会します。

いいえ

N/A

memory.limit_in_bytes

メモリ使用量のハード上限を指定します。

いいえ

N/A

memory.soft_limit_in_bytes

メモリ使用量のソフト下限を指定します。

いいえ

N/A

memory.failcnt

メモリ使用量が上限に達した回数を照会します。

いいえ

N/A

memory.mglru_batch_size

Multi-Generational Least Recently Used (MGLRU) フレームワークに基づいて、事前に再利用されるメモリのサイズを指定します。 メモリ再利用のバッチ間でCPUを解放する試みがなされる。

はい

N/A

memory. mgrru_reclaim_kbytes

MGLRUフレームワークに基づいて事前に再利用されるメモリのサイズを指定します。

はい

N/A

memory.wma rk_ratio

memcgバックエンドの非同期再利用機能を制御し、非同期再利用をトリガーするmemcgメモリ透かしを設定します。 単位: memcgメモリ上限のパーセント。 有効値: 0~100。

  • デフォルト値は0で、memcgバックエンド非同期再利用機能が無効になっていることを示します。

  • 値が0でない場合、memcgバックエンド非同期再利用機能が有効になります。 対応する透かしを設定できます。

詳細については、「Memcg backend asynchronous reclim」をご参照ください。

はい

memory.wma rk_ratio

memory.wma rk_high

読み取り専用インターフェイス。

  • memcgメモリ使用量がこのインターフェイスの値を超えると、バックエンドの非同期リクラメーションが開始されます。

  • このインターフェイスの値は、次の式を使用して計算されます。memory.wma rk_high = memory.limit_in_bytes × memory.wma rk_ratio/100。

  • memcgバックエンド非同期再利用機能が無効になっている場合、バックエンド非同期再利用がトリガーされないように、memc.wma rk_highのデフォルト値は大きな値になります。

  • このインタフェースファイルはmemcgルートディレクトリには格納されません。

詳細については、「Memcg backend asynchronous reclim」をご参照ください。

はい

memory.wma rk_low

読み取り専用インターフェイス。

  • memcgメモリ使用量がこのインターフェイスの値を下回ると、バックエンドの非同期リクラメーションは終了します。

  • このインターフェイスの値は、次の式を使用して計算されます。memory.wma rk_low = memory.wma rk_high-memory.limit_in_bytes × memory.wma rk_scale_factor/10000。

  • このインタフェースファイルはmemcgルートディレクトリには格納されません。

詳細については、「Memcg backend asynchronous reclim」をご参照ください。

はい

memory.wma rk_scale_factor

memory.wma rk_high値とmemory.wma rk_low値の間隔を指定します。 単位: memcgメモリの上限の0.01パーセント。 有効な値: 1 ~ 1000

  • このインターフェイスは、インターフェイスの作成時に親グループの値を継承します。 継承値は50で、memcgメモリの上限の0.50% を示します。 これもデフォルト値です。

  • このインタフェースファイルはmemcgルートディレクトリには格納されません。

詳細については、「Memcg backend asynchronous reclim」をご参照ください。

はい

memory.wma rk_min_adj

memcgグローバル最小透かしレーティング機能で使用される要素。

このインターフェイスの値は、全体的な最小透かしに対するパーセンテージでの調整を示します。 有効値: -25 ~ 50。

  • このインターフェイスは、インターフェイスの作成時に親cgroupから値0を継承します。 したがって、デフォルト値は0です。

  • 値の範囲内の負の値は、[0, WMARK_MIN] の範囲にわたるパーセンテージでの調整であり、WMARK_MINはグローバルwmark_minの値である。 例えば、memory.wma rk_min_adjが − 25である場合、memcgのWMARK_MINは、memcg WMARK_MIN = WMARK_MIN + (WMARK_MIN − 0) × − 25% の式を用いて計算される。

  • 範囲内の正の値は、[WMARK_MIN, WMARK_LOW] 範囲にわたるパーセンテージでの調整である。 wmark_minはglobal wmark_minの値であり、wmark_lowはglobal wmark_lowの値である。

  • オフセットグローバル最小透かしがトリガーされると、スロットリングが実行され、スロットリング時間は過剰なメモリ使用量に線形に比例します。 スロットリング時間の有効値: 1 ~ 1000 単位:ミリ秒。

詳細については、「Memcg global minimum watermark rating」をご参照ください。

はい

memory.force_empty

メモリページを強制的に再利用するかどうかを指定します。

いいえ

N/A

memory.us e_hierarchy

階層統計を収集するかどうかを指定します。

はい

N/A

memory.swappiness

vmscanのswappinessパラメーターを指定します。これは、カーネルがスワップパーティションを使用する傾向を制御します。

いいえ

N/A

memory.priority

memcgの優先順位を指定します。 このインターフェイスは、ビジネスをソートするための13個のメモリ不足 (OOM) 優先順位を提供します。 有効な値: 0 ~ 12。 値が大きいほど優先度が高いことを示す。 親cgroupの優先順位は、その子孫cgroupsによって継承されません。 デフォルト値:0

  • このインターフェイスはmemcg QoSを実装するために使用されます。 グローバル変数ではなく優先度値を使用して、同じ親cgroup内の兄弟cgroupのみをソートします。

  • 同じ優先度を持つ兄弟のmemcgsは、メモリ使用量によってソートされます。 最大量のメモリを消費する子memcgでOOMエラーがトリガーされます。

はい

memory.priority

memory.mo ve_charge_at_immigrate

タスクをcgroups間で移行するときに、タスクの料金をタスクに沿って移動するかどうかを指定します。これは統計的制御ポリシーです。

いいえ

N/A

memory.oom_control

OOMエラーが発生したときにOOMキラーをトリガーしてタスクを終了し、OOMステータスに関する通知を生成するかどうかを指定します。

いいえ

N/A

memory.oom.group

OOMエラーが発生した場合にmemcg内のすべてのタスクを終了できるOOMグループ機能を制御します。

はい

memory.oom.group

memory.pressure_level

メモリ圧力通知を指定します。

いいえ

N/A

memory.kmem.limit_in_bytes

カーネルのメモリ使用量のハード制限を指定します。

いいえ

N/A

memory.kmem.us age_in_bytes

カーネルのメモリ使用量を照会します。

いいえ

N/A

memory.kmem.failcnt

カーネルのメモリ使用量が上限に達した回数を照会します。

いいえ

N/A

memory.kmem.max_usage_in_bytes

カーネルの最大メモリ使用量を照会します。

いいえ

N/A

memory.kmem.slabinfo

カーネルのスラブメモリ使用量を照会します。

いいえ

N/A

memory.kmem.tcp.limit_in_bytes

カーネルのTCPメモリ使用量のハード制限を指定します。

いいえ

N/A

memory.kmem.tcp.us age_in_bytes

カーネルのTCPメモリ使用量を照会します。

いいえ

N/A

memory.kmem.tcp.failcnt

カーネルのTCPメモリ使用量が上限に達した回数を照会します。

いいえ

N/A

memory.kmem.tcp.max_usage_in_bytes

カーネルの最大TCPメモリ使用量を照会します。

いいえ

N/A

memory.memsw.us age_in_bytes

メモリ使用量を照会し、メモリ使用量をスワップします。

いいえ

N/A

memory.memsw.max_usage_in_byte

メモリとスワップメモリの最大使用量を照会します。

いいえ

N/A

memory.memsw.limit_in_bytes

cgroup内のタスクが使用するメモリとスワップメモリの合計使用量の上限を指定します。

いいえ

N/A

memory.memsw.failcnt

メモリとスワップメモリの合計使用量が上限に達した回数を照会します。

いいえ

N/A

memory.swap.high

cgroupで使用可能なスワップメモリ使用量の上限を指定します。

はい

memory.swap.high

memory.swap.events

スワップメモリ使用量が上限に達したときに発生するイベントを照会します。

はい

memory.swap.events

memory.min

cgroupが保持しなければならないメモリの最小量を指定します。これはメモリの保証です。

詳細については、「cgroup v1インターフェイスのMemcg QoS機能」をご参照ください。

はい

memory.min

memory.low

cgroupが保持できるメモリの下限を指定します。これはメモリのソフト保証です。 詳細については、「cgroup v1インターフェイスのMemcg QoS機能」をご参照ください。

はい

memory.low

memory.high

メモリ使用量のスロットル制限を指定します。 詳細については、「cgroup v1インターフェイスのMemcg QoS機能」をご参照ください。

はい

memory.high

memory.allow_duptext

/sys/kernel/mm/duptext/enabledパラメーターがコードduptext機能をグローバルに有効にするように設定されている場合、インターフェイスを使用して、特定のmemcg内のタスクのコードduptext機能を有効にするかどうかを制御します。 有効な値: 0と1。 デフォルト値:0

  • 1: 特定のmemcgのタスクのコードduptext機能を有効にします。

  • 0: 特定のmemcgのタスクのコードduptext機能を無効にします。

詳細については、「コードduptext機能」をご参照ください。

はい

memory.allow_duptext

memory.allow_duptext_refresh

バイナリファイルが生成またはダウンロードされたときに、コードduptext機能をすぐに開始するかどうかを指定します。 コードduptext機能は、PageDirtyまたはPageWritebackの場合には有効になりません。 インターフェイスは非同期タスクモードを使用してタスクを更新しますが、コードduptext機能がPageDirtyまたはPageWritebackのシナリオでは有効になりません

はい

memory.allow_duptext_refresh

memory.duptext_nodes

duptextメモリ割り当てノードを制限します。

はい

memory.duptext_nodes

memory.allow_text_unevictable

memcgスニペットがロックされているかどうかを指定します。

はい

memory.allow_text_unevictable

memory.text_unevictable_percent

ロックされたmemcgコードスニペットによって使用されるメモリの量とmemcgコードによって使用されるメモリの総量との比率を指定します。

はい

memory.text_unevictable_percent

memory.thp_reclaim

透明な巨大ページ (THP) の回収機能を制御します。 有効な値:

  • reclaim: THP reclaim機能を有効にします。

  • swap: 将来の使用のために予約されています。

  • disable: THP再利用機能を無効にします。

デフォルト値: disable。

詳細については、「THPの再利用」をご参照ください。

はい

memory.thp_reclaim

メモリ. thp_reclaim_stat

THP再利用機能のステータスを照会します。 このインタフェースのパラメータ:

  • queue_length: 各ノードのキュー内のTHPの数。 THP再利用機能が有効になっている場合、THPは再利用キューに追加されます。

  • split_hugepage: 各ノードのTHP再利用機能によって分割されたTHPの総数。

  • reclaim_subpage: 各ノードのTHP再利用機能によって再利用されるゼロサブページの総数。

上記のパラメーターの値は、node0やnode1など、NUMAノードIDによって左から右に昇順にリストされます。

詳細については、「THPの再利用」をご参照ください。

はい

メモリ. thp_reclaim_stat

memory.thp_reclaim_ctrl

THP再利用機能のトリガー方法を指定します。 このインタフェースのパラメータ:

  • threshold: THP内のゼロサブページの最大数。 THP内のゼロサブページの数がしきい値を超えると、THP再利用機能がトリガーされます。 デフォルト値: 16。

  • reclaim: THP reclaim機能をトリガーします。

詳細については、「THPの再利用」をご参照ください。

はい

memory.thp_reclaim_ctrl

memory.thp_control

memcg THP機能を制御します。 このインターフェイスは、anon、shmem、およびファイルTHPの適用を禁止するために使用できます。

たとえば、オフラインmemcgはTHPを使用できません。 これは、メモリの断片化を防ぐことができない場合でも、THP競合とメモリの浪費を減らすのに役立ちます。

はい

memory.thp_control

memory.reclaim_caches

カーネルがmemcgsのキャッシュをプロアクティブに再利用するかどうかを指定します。 例: echo 100M > memory.reclaim_caches

はい

memory.reclaim_caches

memory.pgtable_bind

現在のノードのページテーブルメモリを強制的に適用するかどうかを指定します。

はい

memory.pgtable_bind

memory.pgtable_misplaced

ページメモリがノード間で割り当てられている場合、ページテーブルのページメモリに関する統計を照会します。

はい

memory.pgtable_misplaced

memory.oom_offline

クイックOOM機能では、このインターフェイスを使用してオフラインタスクのメモリックをマークできます。

はい

memory.oom_offline

memory.async_fork

以前は高速収束マージ (FCM) として知られていた、memcgs用のAsync-fork機能を制御します。

はい

memory.async_fork

memory.direct_compact_latency

memsli機能の直接メモリコンパクションのレイテンシを指定します。

はい

memory.direct_compact_latency

memory.direct_reclaim_global_latency

memsli機能の直接グローバルメモリ再利用のレイテンシを指定します。

はい

memory.direct_reclaim_global_latency

memory.direct_reclaim_memcg_latency

memsli機能の直接memcgメモリ再利用のレイテンシを指定します。

はい

memory.direct_reclaim_memcg_latency

memory.direct_swapin_latency

memsli機能のダイレクトメモリスワップインのレイテンシを指定します。

はい

memory.direct_swapin_latency

memory.direct_swapout_global_latency

memsli機能の直接グローバルメモリスワップアウトのレイテンシを指定します。

はい

memory.direct_swapout_global_latency

memory.direct_swapout_memcg_latency

memsli機能の直接memcgメモリスワップアウトのレイテンシを指定します。

はい

memory.direct_swapout_memcg_latency

memory.exstat

拡張メモリと余分なメモリに関する統計を照会します。 以下の社内機能に関する統計が収集されます。

  • wmark_min_throttled_ms: オフセットグローバル最小透かしを超えてから経過したスロットリング時間。

  • wmark_reclaim_work_ms: カーネルがcgroupからメモリを再利用しようとする期間。

  • unevictable_text_size_kb: ロックするコードスニペットのサイズ。

  • pagecache_limit_reclaimed_kb: ページキャッシュの制限。

詳細については、「Memcg Exstat機能」をご参照ください。

自己開発の強化

memory.exstat

メモリ. idle_page_stats

memcgのキルドメモリ使用量とcgroupの階層情報に関する統計を照会します。

はい

メモリ. idle_page_stats

メモリ. idle_page_stats.local

memcgのkidledメモリ使用量に関する統計を照会します。

はい

メモリ. idle_page_stats.local

memory.numa_stat

匿名、ファイル、ロックされたメモリのNUMA統計を照会します。

いいえ

memory.numa_stat

memory.pagecache_limit.enable

ページキャッシュ制限機能を制御します。

詳細については、「ページキャッシュ制限機能」をご参照ください。

はい

memory.pagecache_limit.enable

memory.pagecache_limit.size

制限されたページキャッシュのサイズを指定します。

はい

memory.pagecache_limit.size

memory.pagecache_limit.sync

ページキャッシュ制限機能のモード (同期または非同期) を指定します。

はい

memory.pagecache_limit.sync

memory.reap_background

ゾンビmemcgがバックエンド非同期方式でmemcgのメモリを刈り取るかどうかを指定します。

はい

memory.reap_background

memory.stat

メモリ統計を照会します。

いいえ

memory.stat

memory.us e_priority_oom

memcg OOM優先ポリシー機能を制御します。

詳細については、「Memcg OOM priority policy」をご参照ください。

はい

memory.us e_priority_oom

memory.us e_priority_swap

cgroupsの優先順位に基づいてメモリを交換するかどうかを指定します。

詳細については、「Memcg OOM priority policy」をご参照ください。

はい

memory.us e_priority_swap

cgroup v2インターフェイス

インターフェイス名

目的

社内インターフェース

対応するcgroup v1インターフェース

memory.current

メモリ使用量を照会します。

いいえ

N/A

memory.min

cgroupが保持しなければならないメモリの最小量を指定します。これはメモリの保証です。

詳細については、「cgroup v1インターフェイスのMemcg QoS機能」をご参照ください。

いいえ

memory.min

memory.low

cgroupが保持できるメモリの下限を指定します。これはメモリのソフト保証です。

詳細については、「cgroup v1インターフェイスのMemcg QoS機能」をご参照ください。

いいえ

memory.low

memory.high

メモリ使用量の上限を指定します。

詳細については、「cgroup v1インターフェイスのMemcg QoS機能」をご参照ください。

いいえ

memory.high

memory.max

メモリ使用量のスロットル制限を指定します。

いいえ

memory.max

memory.swap.current

使用中のスワップメモリを照会します。

いいえ

N/A

memory.swap.high

cgroupで使用可能なスワップメモリ使用量の上限を指定します。

いいえ

N/A

memory.swap.max

スワップメモリのハード制限を指定します。

いいえ

N/A

memory.swap.events

スワップメモリ使用量が上限に達したときに発生するイベントを照会します。

いいえ

N/A

memory.oom.group

OOMグループ機能が有効になっているかどうかを指定します。これにより、OOMエラーが発生した場合にmemcg内のすべてのタスクを強制終了できます。

いいえ

memory.oom.group

memory.wma rk_ratio

memcgバックエンドの非同期再利用機能を制御し、非同期再利用をトリガーするmemcgメモリ透かしを設定します。 単位: memcgメモリ上限のパーセント。 有効値: 0~100。

  • デフォルト値は0で、memcgバックエンド非同期再利用機能が無効になっていることを示します。

  • 値が0でない場合、memcgバックエンド非同期再利用機能が有効になります。 対応する透かしを設定できます。

詳細については、「Memcg backend asynchronous reclim」をご参照ください。

はい

memory.wma rk_ratio

memory.wma rk_high

読み取り専用インターフェイス。

  • memcgメモリ使用量がこのインターフェイスの値を超えると、バックエンドの非同期リクラメーションが開始されます。

  • このインターフェイスの値は、次の式を使用して計算されます。memory.wma rk_high = memory.limit_in_bytes × memory.wma rk_ratio/100。

  • memcgバックエンド非同期再利用機能が無効になっている場合、バックエンド非同期再利用がトリガーされないように、memc.wma rk_highのデフォルト値は大きな値になります。

  • このインタフェースファイルはmemcgルートディレクトリには格納されません。

詳細については、「Memcg backend asynchronous reclim」をご参照ください。

はい

memory.wma rk_high

memory.wma rk_low

読み取り専用インターフェイス。

  • memcgメモリ使用量がこのインターフェイスの値を下回ると、バックエンドの非同期リクラメーションは終了します。

  • このインターフェイスの値は、次の式を使用して計算されます。memory.wma rk_low = memory.wma rk_high-memory.limit_in_bytes × memory.wma rk_scale_factor/10000。

  • このインタフェースファイルはmemcgルートディレクトリには格納されません。

詳細については、「Memcg backend asynchronous reclim」をご参照ください。

はい

memory.wma rk_low

memory.wma rk_scale_factor

memory.wma rk_high値とmemory.wma rk_low値の間隔を指定します。 単位: memcgメモリの上限の0.01パーセント。 有効な値: 1 ~ 1000

  • このインターフェイスは、インターフェイスの作成時に親グループの値を継承します。 継承値は50で、memcgメモリの上限の0.50% を示します。 これもデフォルト値です。

  • このインタフェースファイルはmemcgルートディレクトリには格納されません。

詳細については、「Memcg backend asynchronous reclim」をご参照ください。

はい

memory.wma rk_scale_factor

memory.wma rk_min_adj

memcgグローバル最小透かしレーティング機能で使用される要素。

このインターフェイスの値は、全体的な最小透かしに対するパーセンテージでの調整を示します。 有効値: -25 ~ 50。

  • このインターフェイスは、インターフェイスの作成時に親cgroupから値0を継承します。 したがって、デフォルト値は0です。

  • 値の範囲内の負の値は、[0, WMARK_MIN] の範囲にわたるパーセンテージでの調整であり、WMARK_MINはグローバルwmark_minの値である。 例えば、memory.wma rk_min_adjが − 25である場合、memcgのWMARK_MINは、memcg WMARK_MIN = WMARK_MIN + (WMARK_MIN − 0) × − 25% の式を用いて計算される。

  • 範囲内の正の値は、[WMARK_MIN, WMARK_LOW] 範囲にわたるパーセンテージでの調整である。 wmark_minはglobal wmark_minの値であり、wmark_lowはglobal wmark_lowの値である。

  • オフセットグローバル最小透かしがトリガーされると、スロットリングが実行され、スロットリング時間は過剰なメモリ使用量に線形に比例します。 スロットリング時間の有効値: 1 ~ 1000 単位:ミリ秒。

詳細については、「Memcg global minimum watermark rating」をご参照ください。

はい

memory.wma rk_min_adj

memory.priority

memcgの優先順位を指定します。 このインターフェースは、ビジネスをソートするための13のmemcg OOM優先順位を提供します。 有効な値: 0 ~ 12。 値が大きいほど優先度が高いことを示す。 親cgroupの優先順位は、その子孫cgroupsによって継承されません。 デフォルト値:0

  • このインターフェイスはmemcg QoSを実装するために使用されます。 グローバル変数ではなく優先度値を使用して、同じ親cgroup内の兄弟cgroupのみをソートします。

  • 同じ優先度を持つ兄弟のmemcgsは、メモリ使用量によってソートされます。 最大量のメモリを消費する子memcgでOOMエラーがトリガーされます。

詳細については、「Memcg OOM priority policy」をご参照ください。

はい

memory.priority

memory.us e_priority_oom

memcg OOM優先ポリシー機能を制御します。

詳細については、「Memcg OOM priority policy」をご参照ください。

はい

memory.us e_priority_oom

memory.us e_priority_swap

cgroupsの優先順位に基づいてメモリを交換するかどうかを指定します。

詳細については、「Memcg OOM priority policy」をご参照ください。

はい

memory.us e_priority_swap

memory.direct_reclaim_global_latency

memsli機能の直接グローバルメモリ再利用のレイテンシを指定します。

はい

memory.direct_reclaim_global_latency

memory.direct_reclaim_memcg_latency

memsli機能の直接memcgメモリ再利用のレイテンシを指定します。

はい

memory.direct_reclaim_memcg_latency

memory.direct_compact_latency

memsli機能の直接メモリコンパクションのレイテンシを指定します。

はい

memory.direct_compact_latency

memory.direct_swapout_global_latency

memsli機能の直接グローバルメモリスワップアウトのレイテンシを指定します。

はい

memory.direct_swapout_global_latency

memory.direct_swapout_memcg_latency

memsli機能の直接memcgメモリスワップアウトのレイテンシを指定します。

はい

memory.direct_swapout_memcg_latency

memory.direct_swapin_latency

memsli機能のダイレクトメモリスワップインのレイテンシを指定します。

はい

memory.direct_swapin_latency

memory.exstat

拡張メモリと余分なメモリに関する統計を照会します。 以下の社内機能に関する統計が収集されます。

  • wmark_min_throttled_ms: オフセットグローバル最小透かしを超えてから経過したスロットリング時間。

  • wmark_reclaim_work_ms: カーネルがcgroupからメモリを再利用しようとする期間。

  • unevictable_text_size_kb: ロックするコードスニペットのサイズ。

  • pagecache_limit_reclaimed_kb: ページキャッシュの制限。

詳細については、「Memcg Exstat」をご参照ください。

はい

memory.exstat

memory.pagecache_limit.enable

ページキャッシュ制限機能を制御します。

詳細については、「ページキャッシュ制限機能」をご参照ください。

はい

memory.pagecache_limit.enable

memory.pagecache_limit.size

制限されたページキャッシュのサイズを指定します。

詳細については、「ページキャッシュ制限機能」をご参照ください。

はい

memory.pagecache_limit.size

memory.pagecache_limit.sync

ページキャッシュ制限機能のモード (同期または非同期) を指定します。

詳細については、「ページキャッシュ制限機能」をご参照ください。

はい

memory.pagecache_limit.sync

メモリ. idle_page_stats

各階層の個々のメモリのキルドメモリに関する統計を照会します。

はい

メモリ. idle_page_stats

メモリ. idle_page_stats.local

個々のmemcgsのキルドメモリに関する統計を照会します。

はい

メモリ. idle_page_stats.local

memory.numa_stat

匿名、ファイル、ロックされたメモリのNUMA統計を照会します。

はい

memory.numa_stat

memory.reap_background

ゾンビmemcgがバックエンド非同期方式でmemcgのメモリを刈り取るかどうかを指定します。

はい

memory.reap_background

memory.stat

メモリ統計を照会します。

いいえ

memory.stat

memory.us e_priority_oom

memcg OOM優先ポリシー機能を制御します。

詳細については、「Memcg OOM priority policy」をご参照ください。

はい

memory.us e_priority_oom

cpuacct

インターフェイス名

目的

社内インターフェース

対応するcgroup v2インターフェイス

cpuacct.us年齢

使用された合計CPU時間を照会します。 単位: ナノ秒。

いいえ

同様のデータを表示するcpu.stat

cpuacct.us age_user

ユーザーモードで使用されるCPU時間を照会します。 単位: ナノ秒。

いいえ

cpuacct.us age_sys

カーネルモードで使用されるCPU時間を照会します。 単位: ナノ秒。

いいえ

cpuacct.us age_percpu

各CPUの使用時間を照会します。 単位: ナノ秒。

いいえ

cpuacct.us age_percpu_user

ユーザーモードでの各CPUの使用時間を照会します。 単位: ナノ秒。

いいえ

cpuacct.us age_percpu_sys

カーネルモードでの各CPUの使用時間を照会します。 単位: ナノ秒。

いいえ

cpuacct.us age_all

e cpuacct.us age_percpu_user d cpuacct.usのage_percpu_sysインターフェイスのサマリを照会します。 単位: ナノ秒。

いいえ

cpuacct.stat

ユーザーモードとカーネルモードで使用されるCPU時間を照会します。 単位: tick。

いいえ

cpuacct.proc_stat

CPU時間、平均負荷 (loadavg) 、コンテナレベルでの実行中のタスク数などのデータを照会します。

はい

cpuacct.enable_sli

コンテナレベルでloadavgsをカウントするかどうかを制御します。

はい

N/A

cpuacct.sched_cfs_statistics

cgroupのランタイムや、同じレベルまたは異なるレベルのcgroupsの待機時間など、CFSに関する統計を照会します。

はい

cpu.sched_cfs_statistics

cpuacct.wait_latency

キューで待機しているタスクのレイテンシを照会します。

はい

cpu.wait_latency

cpuacct.cgroup_wait_latency

キューで待機しているcgroupsのレイテンシを照会します。 wait_latencyインターフェイスはタスクSEのレイテンシをカウントし、cgroup_wait_latencyインターフェイスはグループSEのレイテンシをカウントします。

はい

cpu.cgroup_wait_latency

cpuacct.block_latency

I/O以外の原因でブロックされたタスクのレイテンシを照会します。

はい

cpu.block_latency

cpuacct.ioblock_latency

I/O操作によってブロックされたタスクのレイテンシを照会します。

はい

cpu.ioblock_latency

io. 圧力

I/Oパフォーマンス、メモリ、およびCPUのPSIを照会します。 情報はポーリングすることができる。 詳細については、以下のトピックをご参照ください。

いいえ

N/A

memory.pressure

いいえ

cpu. 圧力

いいえ

冷凍庫

インターフェイス名

目的

社内インターフェース

対応するcgroup v2インターフェイス

freezer.state

フリーズステータスを制御します。 有効な値: FROZENおよびTHAWED

いいえ

cgroup.freeze

freezer.self_freezing

cgroupが独自の凍結状態のために凍結されているかどうかを照会します。

いいえ

N/A

freezer.parent_freezing

祖先が凍結されているため、cgroupが凍結されているかどうかを照会します。

いいえ

N/A

ioasids

ioasidsサブシステムのcgroup v1インターフェイスとcgroup v2インターフェイスは同じです。

インターフェイス名

目的

社内インターフェース

ioasids.current

現在のcgroupに割り当てられているioasidsの数を照会します。

はい

ioasids. イベント

割り当て可能なioasidsの上限を超えたために発生したイベントの数を照会します。

はい

ioasids.max

現在のcgroupに割り当てることができるioasidsの総数を照会します。

はい

net_clsおよびnet_prio

インターフェイス名

目的

社内インターフェース

対応するcgroup v2インターフェイス

net_cls.classid

現在のcgroupのネットワークパケットにタグを付けるクラス識別子を指定します。 このインターフェイスはqdiscまたはiptableで動作します。

いいえ

N/A

説明

対応するインタフェースは、cgroup v2から除去される。 ebpfを使用して、トラフィックをフィルタリングおよびシェーピングできます。

net_prio.prioidx

データ構造内の現在のcgroupのインデックス値を照会します。 インターフェイスは読み取り専用で、カーネルによって内部的に使用されます。

いいえ

net_prio.ifpriomap

各ネットワークインターフェイスコントローラー (NIC) のネットワーク優先度の値を指定します。

いいえ

perf_イベント

perf_eventサブシステムはインターフェイスを提供しません。 perf_eventサブシステムは、デフォルトでcgroup v2に対して有効になっており、cgroup v1のperf_eventサブシステムと同じ機能を提供します。

pids

pidsサブシステムのcgroup v1インターフェースとcgroup v2インターフェースは同じです。

インターフェイス名

目的

社内インターフェース

pids.max

cgroup内のタスクの最大数を指定します。

いいえ

pids.current

cgroup内の現在のタスク数を照会します。

いいえ

pids. イベント

サポートされているタスクの最大数に達したためにフォーク操作が失敗したイベントの数を照会します。 fsnotifyライブラリは、イベントに関するファイルシステム通知を提供するためにサポートされています。

いいえ

rdma

rdmaサブシステムのcgroup v1インターフェイスとcgroup v2インターフェイスは同じです。

インターフェイス名

目的

社内インターフェース

rdma.max

リモートダイレクトメモリアクセス (RDMA) アダプタのリソース使用量の上限を指定します。

いいえ

rdma.current

RDMAアダプタのリソース使用率を照会します。

いいえ