OpenVZ Forum


Home » International » Russian » OpenVZ 2GB 'RAM', no swap, выделение памяти, виртуальная память. (Попытка запуска 5 процессов, выделяющих по 500 МБ. На не-виртуалке = OK, на OpenVZ = FAIL.)
OpenVZ 2GB 'RAM', no swap, выделение памяти, виртуальная память. [message #38434] Sat, 19 December 2009 02:04 Go to next message
mriadus is currently offline  mriadus
Messages: 2
Registered: December 2009
Location: spb
Junior Member
From: *static.avangarddsl.ru
Ноут: 2G, linux gentoo, no swap.
OpenVZ (16-CPU xeon-server): 2G, linux gentoo, no swap.

Небольшая программка на С++ для эксперимента. Выделяет 500М, ждёт нажатия клавиши, освобождает и завершается.
...
char *p = new char [ 1024 * 1024 * 500 ];
...

В виде бинаря лежит в /tmp/AAAA.


Запущенные пять экземпляров на ноуте:

xx@master1 ~/forge/cpp $ ps aux | grep AAAA
xx       22257  0.0  0.0 514700   856 pts/29   T    05:06   0:00 /tmp/AAAA
xx       22894  0.0  0.0 514700   852 pts/21   S+   05:06   0:00 /tmp/AAAA
xx       23200  0.0  0.0 514700   852 pts/44   S+   05:06   0:00 /tmp/AAAA
xx       23443  0.0  0.0 514700   852 pts/45   S+   05:06   0:00 /tmp/AAAA
xx       24023  0.0  0.0 514700   856 pts/56   S+   05:07   0:00 /tmp/AAAA
xx       24224  0.0  0.0 514700   852 pts/59   S+   05:07   0:00 /tmp/AAAA

(514700 = VIRT, 856 = RES)
Можно видеть что (так как выделенные страницы памяти я не использую и от системы реально не требутся обеспечивать все эти процессы реальными 2.5 памяти или свопа) то всё это хорошо живёт, механизм виртуальной памяти во всей красе, все довольны. Думаю, ещё хоть пиццот таких процессов можно запустить.

Тот же эксперимент на OpenVZ = FAIL. По наблюдениям, OpenVZ не даёт запустить очередной AAAA, если сумма всех VIRT уже запущенных экземпляров минус общее кол-во памяти меньше, чем желаемые этим очередным AAAA 500MB.

Но RES и VIRT одного AAAA на OpenVZ - нормальны.
xx   25554  0.0  0.0 523548  1024 pts/1    T    01:16   0:00 /tmp/AAAA

(VIRT=523548, RES=1024)

Интерсный момент. Давайте посмотрим на "htop". У него наверху есть залёный общий измеритель использования памяти. Для ноута один запускаемый AAAA отъедает по этому измерителю около 1MB, что отражает RES. Но для OpenVZ по этому показателю отжирание составляет все 500MB.

Что бы погуглить и по-RTFM-мить? Очень надо)

Спасибо всем!
Re: OpenVZ 2GB 'RAM', no swap, выделение памяти, виртуальная память. [message #38436 is a reply to message #38434] Sat, 19 December 2009 14:26 Go to previous message
paix is currently offline  paix
Messages: 8
Registered: January 2009
Location: ua
Junior Member
From: 194.146.197*
mriadus wrote on Sat, 19 December 2009 04:04

Что бы погуглить и по-RTFM-мить? Очень надо)
Спасибо всем!


"openvz memory overcommitment"

Previous Topic: OpenVZ-скрипты: start-скрипт в контексте HN
Next Topic: troubleshooting user_beancounter
Goto Forum:
  


Current Time: Fri Jul 19 04:22:37 GMT 2019