Перемещение файлов в /dev/shm ramdisk не увеличивает использование оперативной памяти?

Я давно хотел сделать нас виртуальным диском в моей системе Ubuntu и немного читал онлайн. Большинство рекомендаций основаны на использовании / dev / shm для перемещения файлов в оперативную память.

Я хотел попробовать это, поэтому я скопировал шесть файлов по 1 ГБ в /dev/shm, но, согласно gnome-system-monitor, использование моей оперативной памяти не превышало 1,4 ГБ. Это то, как работает /dev/shm, или есть что-то еще, что мне нужно сделать / использовать, чтобы гарантировать, что файлы хранятся в оперативной памяти, а не на жестком диске.

Причина, по которой я ищу рамдиск, заключается в том, чтобы ускорить анализ, который я запускаю на этой машине. В настоящее время он использует не более 1,6 ГБ из 24 ГБ, установленных на машине, и вся эта дополнительная ОЗУ, которая ничего не делает, кажется немного позорной.

1 ответ

Решение

Не использовать /dev/shm, это для специальной цели.

Вместо этого сделайте что-то вроде этого, если хотите поэкспериментировать:

sudo mkdir /ram
sudo mount -t tmpfs none /ram

Файлы, хранящиеся в tmpfs, хранятся либо в оперативной памяти, либо (если слишком много памяти) в swap.

Я не знаю, почему вы не видите увеличения. Пожалуйста, опубликуйте фактические команды, которые вы использовали, плюс вывод free -m Команда оболочки до и после.

Вы также можете прочитать этот пост о понимании свободной памяти в Linux.

Память будет использоваться для кэширования файлов с диска, так что это в некотором смысле помогает, если в вашей загрузке есть рабочий набор файлов размером в несколько ГБ. Однако даже сильно кэшированные файлы выполняют жесткий ввод-вывод, и виртуальный диск может быть быстрее.

Другие вопросы по тегам