Для чого використовується моя пам'ять у моєму екземплярі Amazon EC2?


9

На даний момент я працюю на єдиному вузлі обчислення GPU Cluster на Amazon EC2, який вказаний як 22 ГБ оперативної пам’яті на примірник. topпідтверджує, що екземпляр дійсно має 22 ГБ оперативної пам’яті, але в холостих системах виявляється, що 5-6 ГБ оперативної пам’яті постійно використовуються. Ні, topні ps auxможна визначити процеси, до яких відноситься це використання.

5-6 Гб здається мені занадто великим для ОС, але, можливо, я помиляюся. Чи може це бути непосильним через віртуалізацію на Amazon? Будь-які інші ідеї чи пропозиції щодо того, як я можу це відстежувати?


1
Ви включаєте кеш пам'яті в цей розрахунок? Можливо, буде корисно показати вміст proc meminfo.
Рей Вахей

Відповіді:


7

Причина, чому ви бачите значну кількість пам'яті, яка використовується, полягає в тому, що Linux використовує велику частину її для кешування файлів.

Це, мабуть, прояснить вам речі:

http://www.linuxatemyram.com/


5

Коли ви дивитесь зверху , вільна пам'ять, яку ви бачите, є значенням до кешування ядра.

top - 12:59:25 up 1 day, 15:47,  5 users,  load average: 0.04, 0.10, 0.12
Tasks: 161 total,   1 running, 160 sleeping,   0 stopped,   0 zombie
Cpu(s):  3.5%us,  1.8%sy,  0.0%ni, 94.2%id,  0.4%wa,  0.0%hi,  0.1%si,  0.0%st
Mem:   3985464k total,  3369908k used,   615556k free,   752964k buffers
Swap:  1951740k total,       12k used,  1951728k free,  1439160k cached

Мій ноутбук як 3985464 кілобайт пам'яті всього. Але ядро ​​Linux буде кешувати більшу частину цього внутрішньо, тому вгорі відображається лише 619748kB вільної пам'яті. Але якщо ви подивитесь на це за допомогою вільної команди, то розумієте, що насправді більша частина пам’яті доступна… у кеші.

$ free
             total       used       free     shared    buffers     cached
Mem:       3985464    3365716     619748          0     752796    1439152
-/+ buffers/cache:    1173768    2811696
Swap:      1951740         12    1951728

Справжня вільна пам'ять - це та, яка відображається в буфері / кеш- лінії.

             total       used       free     shared    buffers     cached
-/+ buffers/cache:    1173768    2811696

Ця машина як 2,8 ГБ вільної пам'яті.


Це досить заплутано, оскільки, мабуть, я не розумію ролі кешу. Що ви маєте на увазі під "ядром Linux, кешуватиме більшу частину [загальної пам'яті 3985464k]" ? Ви заявляєте, що topпотім показує лише інше число, але лише показує, що інше число буде менше, але число, яке ви цитуєте, більше. Вставте сюди смайлик для голови.
Адам
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.