PSI CPUがいっぱいだったとはどういう意味ですか?

PSI CPUがいっぱいだったとはどういう意味ですか?

見つけました。二つ 記事PSIに関しては、彼らはすべてCPUに「いくつかの」指標しかないと言います。atopまた、「cpu some」のみ表示されます。

しかし、私のシステムには「cpu full」マークがあります。

$ cat /proc/pressure/cpu
some avg10=0.05 avg60=0.33 avg300=0.33 total=5815043711
full avg10=0.00 avg60=0.02 avg300=0.06 total=1288113602

CPUがすべてのジョブを停止するまでの時間を測定する必要がありますが、これが発生する原因は何ですか?実際に何を測定しますか?

ベストアンサー1

私は同じことを迷っていましたが、うまくいく説明が見つかりませんでした。 cgroup PSIファイルを表示すると、状況が若干異なります。
それで、Linuxカーネルのソースコードを見ました。 psi.c

[psi.c]
もちろん、CPUリソースのFULL状態はシステムレベルではなくcgroupレベルに存在します。 cgroup レベルで FULL は、cgroup 内のすべての非アイドル操作が cgroup 以外の他のタスクで使用されている CPU リソースによって遅延されるか、cgroup cpu.max 構成によって制限されることを意味します。

fullで提供しないでください/proc/pressure/cpu。それは言葉ではありません。ホストでは CPU リソースが不足しているため、すべてのジョブを同時にブロックすることはできません。 CPUの数と同じ数はいつでも実行できます(メモリまたはIOによってブロックされていない限り、これは他のファイルに反映されます)。この値は、
特定のワークロードの最大リソースを制限するために仮想化(コンテナ)またはcgroupを使用している場合にfull存在できます。/sys/fs/cgroup/<cgroup_name>/cpu.pressure数値が 0 より大きい場合は、すべての CPU が cgroup 外部ジョブに使用されることを意味するため、そのグループ内のすべての CPU が使用されます。 cgroup CPU リソースが不足しているため、cgroup 内でジョブがブロックされました。
RAMまたはIOによる一時停止は、CPUの負担ではなく、対応するファイルに反映されます。

システムがこれを表示する場合は、ある種のfull奇妙/proc/pressure/cpuな構成であるか、仮想化されたシステムがcgroup値でファイルを上書きする可能性があります。

おすすめ記事