Пределы памяти - PullRequest
       2

Пределы памяти

0 голосов
/ 06 ноября 2018

Согласно документации докера , если --memory-swap не установлено и установлено --memory, контейнер может использовать вдвое больше swap, чем параметр --memory, если хост-контейнер имеет Память подкачки настроена.

Таким образом, две следующие команды эквивалентны:

 docker run --rm -it -m 128m progrium/stress --vm 1 --vm-bytes 300M --vm-hang 0

 docker run --rm -it -m 128m --memory-swap 384m progrium/stress --vm 1 --vm-bytes 300M --vm-hang 0

К сожалению, это не дает того же результата.

docker run --rm -it -m 128m progrium/stress --vm 1 --vm-bytes 300M --vm-hang 0
stress: info: [1] dispatching hogs: 0 cpu, 0 io, 1 vm, 0 hdd
stress: dbug: [1] using backoff sleep of 3000us
stress: dbug: [1] --> hogvm worker 1 [5] forked
stress: dbug: [5] allocating 314572800 bytes ...
stress: dbug: [5] touching bytes in strides of 4096 bytes ...
stress: FAIL: [1] (416) <-- worker 5 got signal 9
stress: WARN: [1] (418) now reaping child worker processes
stress: FAIL: [1] (422) kill error: No such process
stress: FAIL: [1] (452) failed run completed in 4s

# docker run --rm -it -m 128m --memory-swap 384m progrium/stress --vm 1 --vm-bytes 300M --vm-hang 0
stress: info: [1] dispatching hogs: 0 cpu, 0 io, 1 vm, 0 hdd
stress: dbug: [1] using backoff sleep of 3000us
stress: dbug: [1] --> hogvm worker 1 [5] forked
stress: dbug: [5] allocating 314572800 bytes ...
stress: dbug: [5] touching bytes in strides of 4096 bytes ...
stress: dbug: [5] sleeping forever with allocated memory

Мне кажется, что в документации есть ошибка. Фактически, если --memory-swap не установлено, а --memory установлено, значение --memory-swap устанавливается в два раза больше, чем параметр --memory. Я искал в коде докера , но не нашел ничего, что подтверждает или опровергает то, что я только что объяснил.

Может ли кто-нибудь объяснить эту бессвязность.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...