Cgroups メモリ関連の質問

Cgroups メモリ関連の質問

1) cgroup が実際のタスク数よりも多くのタスク数を表示するのはなぜですか?

元 :

[root@localhost proc]# ps -aux | wc -l
421
[root@localhost proc]# cat /sys/fs/cgroup/memory/tasks | wc -l
539

2) cgroup が実際のメモリ使用量よりも多くのメモリ使用量を表示するのはなぜですか?

元 :

[root@localhost memory]# free -h
              total        used        free      shared  buff/cache   available
Mem:            11G        425M        9.4G         38M        1.7G         10G
Swap:          2.0G        193M        1.8G
[root@localhost memory]# cat /sys/fs/cgroup/memory/memory.usage_in_bytes
1596362752

上記では、free が使用メモリを 425M と表示し、cgroups が約 1.4GB と表示しているのがわかりますか?

デフォルトの cgroup は 1 つだけであり、他の cgroup は作成されないことに注意してください。

3) cgroup の正しいメモリ使用率を計算するにはどうすればよいでしょうか?

答え1

1) マルチスレッドプロセスではps aux、各スレッドがタスクである場合、出力は1行になります。比較ps -auxH | wc -l

関連情報