Сохраните свой диск, запишите файлы прямо в оперативную память с помощью /dev/shm=news.ycombinator.com=

Сохраните свой диск, запишите файлы прямо в оперативную память с помощью /dev/shm ( hiandrewquinn.github.io )

hackyhacky 20 минут назад | [–]
Вместо того, чтобы переписывать скрипты для хранения временных файлов в /dev/shm, вы можете просто смонтировать /tmp с помощью файловой системы tmpfs и получить то же самое преимущество для всех ваших программ. Некоторые дистрибутивы делают это по умолчанию.

Соответствующая строка из fstab:

tmpfs /tmp tmpfs noatime 0 2 Теперь любая программа, которая пишет в /tmp, будет писать на RAM-диск, тем самым предотвращая ненужный износ моего SSD.

отвечать

приветAndrewQuinn 18 минут назад | | [–]
Я упоминаю об этом в статье: «Существование /dev/shm является для меня благом в первую очередь потому, что это означает, что мне больше никогда не придется беспокоиться о том, действительно ли /tmp основан на оперативной памяти».

отвечать

quotemstr 12 минут назад | | | [–]
Теперь вам придется беспокоиться о том, сможете ли вы получить доступ к /dev/shm. Пожалуйста, поощряйте людей использовать поддерживаемые интерфейсы вместо случайного вуду ( все, что находится под /dev, чего не было в 1995 году) для повседневных задач.

отвечать

приветAndrewQuinn 9 минут назад | | | [–]
/dev/shm обычно по умолчанию доступен для записи всем:

$ ls -ld /dev/shm drwxrwxrwt 3 root root 120 32 июня 02:47 /dev/shm/ Кстати, “30 лет назад” – это дата окончания для музыки, которая считается старой. Это только что заставило меня осознать, что Nevermind теперь старая, и скоро The Lonesome Crowded West тоже будет старым.

отвечать

ctur 8 минут назад | | [–]
Это ненужная оптимизация, особенно для случая использования статьи (небольшие файлы, которые считываются сразу после записи). Просто используйте /tmp. Кэш буфера Linux более чем достаточно производительен для повседневного использования и, конечно, для самого интенсивного использования. Слишком легко засорить память забытыми файлами, например, указав по умолчанию /dev/shm, и вы потенциально также отнимете память у остальной системы до следующей перезагрузки.

Для автора любая польза — это всего лишь плацебо.

Безусловно, бывают случаи, когда /dev/shm — это то, что вам нужно, но это требует понимания нюансов и компромиссов (например, вы уже много думаете об управлении памятью, включая потенциальный своп).

Также не используйте -funroll-loops.

отвечать

slt2021 15 минут назад | | [–]
Я использую блокноты Jupyter для аналогичных целей, при этом память ядра Python сохраняет нужное мне состояние для некоторых случайных вещей, а блокнот является рецептом того, как воспроизвести вычисления/обработку.

некоторые из моих ядер работают уже несколько недель, пока я возвращаюсь и переделываю или переделываю некоторые процессы.

Самое замечательное в блокнотах Jupyter то, что вы можете чередовать однострочные коды Python с однострочными кодами Bash и смешивать их по своему усмотрению.

отвечать

hacker_homie 4 минуты назад | | [–]
Просто смонтируйте tmpfs там, где у вас часто происходят записи.

отвечать

ryoshu 16 минут назад | | [–]
Помню, как использовал RAM-диск на IBM PCjr.

отвечать

thedougd 11 минут назад | | [–]
Приделайте туда еще одну карту памяти на 512 Кб.

отвечать

quotemstr 13 минут назад | [–]
Вот для чего нужен /tmp. Не нужно умничать.

отвечать


Рассмотрите возможность подачи заявки на набор в YC на осень 2025 года! Заявки принимаются до 4 августа

Source: news.ycombinator.com

Leave a Reply

Your email address will not be published. Required fields are marked *