
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 показывает использованную память как 425 МБ, а cgroups показывает около 1,4 ГБ?
Обратите внимание, что существует только одна cgroup по умолчанию, другие cgroup не создаются.
3) Как рассчитать правильное использование памяти для cgroups?
решение1
1) Многопоточный процесс имеет одну строку в ps aux
выводе, когда каждый поток является задачей. Сравнитеps -auxH | wc -l