LINUX.ORG.RU

История изменений

Исправление chaos_dremel, (текущая версия) :

tmpfs, по описанию, умеет сбрасывать лишнее в swap раздел/файл. Я не видел такого её использования в реальности, но такой подход, на мой взляд будет быстрее чем любые ФС прокинутые через FUSE (mergefs в их числе) и менее костыльнее чем любые варианты raid’ов/lvm.

Ещё из плюсов tmpfs – она не юзает page cache, в отличии от обычных файловых систем, а значит в оперативке не будет лишних копирований информации.

В теории есть вариант с создание в оперативке pmem устройства и форматированием в ФС с поддержкой DAX (опять же чтобы не делать лишнее копирование данных в оперативке). В теории это позволит выиграть в производительности, но абсолютно не понятно как такую ФС объединять с ФС на SSD так чтобы было не костыльно и быстро.

TL;DR

Создай большой swap раздел/файл на SSD (в размер того, сколько ты хочешь использовать места) . Подключи его как системный SWAP. Создай tmpfs раздел на размер того, сколько ты хочешь отдать оперативки + swap. попробуй запустить что-то что требует много оперативки и заполнить tmpfs данными сверх свободной оперативки хотябы в 2 раза. По идее система должна активно свопить данные и не вызывать OOM у запущенного приложения которому нужно много оперативки

Исправление chaos_dremel, :

tmpfs, по описанию, умеет сбрасывать лишнее в swap раздел/файл. Я не видел такого её использования в реальности, но такой подход, на мой взляд будет быстрее чем любые ФС прокинутые через FUSE (mergefs в их числе) и менее костыльнее чем любые варианты raid’ов/lvm.

Ещё из плюсов tmpfs – она не юзает page cache, в отличии от обычных файловых систем, а значит в оперативке не будет лишних копирований информации.

В теории есть вариант с создание в оперативке pmem устройства и форматированием в ФС с поддержкой DAX (опять же чтобы не делать лишнее копирование данных в оперативке). В теории это позволит выиграть в производительности, но абсолютно не понятно как такую ФС объединять с ФС на SSD так чтобы было не костыльно и быстро.

TL;DR

Создай большой swap раздел/файл на SSD (в размер того, сколько ты хочешь использовать места) . Подключи его как системный SWAP. Создай tmpfs раздел на размер того, сколько ты хочешь отдать оперативки + swap. попробуй запустить что-то что требует много оперативки и заполнить tmpfs данными сверх свободной оперативки хотябы в 2 раза. По идее система должа активно свопить данные и не вызывать OOM у запущенного приложения которому нужно много оперативки

Исходная версия chaos_dremel, :

tmpfs, по описанию, умеет сбрасывать лишнее в swap раздел/файл. Я не видел такого её использования в реальности, но такой подход, на мой взляд будет быстрее чем любые ФС прокинутые через FUSE (mergefs в их числе) и менее костыльнее чем любые варианты raid’ов/lvm.

Ещё из плюсов tmpfs – она не юзает page cache, в отличии от обычных файловых систем, а значит в оперативке не будет лишних копирований информации.

В теории есть вариант с создание в оперативке pmem устройства и форматированием в ФС с поддержкой DAX (опять же чтобы не делать лишнее копирование данных в оперативке). В теории это позволит выиграть в производительности, но абсолютно не понятно как такую ФС объединять с ФС на SSD так чтобы было не костыльно и быстро.

TL;DR

Создай swap раздел/файл на SSD. Подключи его как системный SWAP. Создай tmpfs раздел на размер того, сколько ты хочешь отдать оперативки + swap. попробуй запустить что-то что требует много оперативки и заполнить tmpfs данными сверх свободной оперативки хотябы в 2 раза. По идее система должа активно свопить данные и не вызывать OOM у запущенного приложения которому нужно много оперативки