Тестирование моей системы, мне нужен скрипт, который будет использовать как можно больше ram и swap

Я тестирую свою систему с помощью zram, мне нужен скрипт, который будет использовать как можно больше бара. Этот скрипт должен заполнить мой баран случайным материалом не только нулями.

1
задан 28 May 2013 в 16:41

4 ответа

Я предложил бы использовать программный стресс, устанавливаемый из репозиториев с помощью sudo apt-get install stress.

Чтобы проверить использование вашей памяти stress -m x, где x - количество рабочих, которые заполнят RAM. Выберите больше работников, чтобы использовать больше оперативной памяти.

4
ответ дан 24 May 2018 в 21:42

Как было предложено prophecy201, стресс - отличный инструмент для использования памяти вашей системы. Добавление большего числа сотрудников будет использовать больше оперативной памяти, но оно также будет использовать больше процессора, что является довольно неэффективным, если все, что вам нужно, - проверить RAM. Не говоря уже о том, что процессор будет необходим zram для сжатия.

Вместо этого вы должны увеличить объем ОЗУ, который используется с флагом --vm-bytes. Например, чтобы использовать 4 ГБ ОЗУ с одним рабочим:

stress -m 1 --vm-bytes 4G

Вы также можете найти флаг --vm-keep полезным, поскольку он будет удерживать выделение памяти вместо постоянного перераспределения, поэтому использование памяти будет постоянным, а не флуктуирующим:

stress -m 1 --vm-bytes 4G --vm-keep

Наконец, взгляните сюда, чтобы убедиться, что zram - это то, что вы действительно хотите; так как у вас есть своп, zswap может быть лучшим решением: Как предложил prophecy201

2
ответ дан 24 May 2018 в 21:42
  • 1
    Я нахожу его простым в использовании. Я использовал это, чтобы проверить, работает ли мой Swap. [F1] – Satya Prakash 20 July 2017 в 17:59

Просто запустите:

echo {1..1000000000}

Объяснение:

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

ВНИМАНИЕ: Это не контролируемый способ заполнения ОЗУ. Вы можете застрять после выполнения этой команды. Я советую вам оставить ваш system monitor открытым (для просмотра использования ОЗУ) и попробуйте с меньшими номерами.

2
ответ дан 24 May 2018 в 21:42
  • 1
    Это, похоже, не работает с echo busybox (без поддержки регулярных выражений). Я нашел это решение: tail /dev/zero – falstaff 18 August 2017 в 21:35

Ожидайте, что zswap будет работать очень плохо - сделать производительность намного хуже - если вы заполняете память случайными байтами, особенно если вы случайно нажимаете много памяти в спешке.

zram сжимает содержимое страниц памяти, а сжатие работает только в том случае, если данные не являются случайными. Реальные данные (особенно данные в памяти) обычно довольно сжимаемы.

zram также помогает только в том случае, если у вас есть «локальность ссылок», как и большинство программ, - они имеют тенденцию касаться одних и тех же страниц несколько раз, прежде чем касаться другого подмножества страниц. (Это значит, что работает обычная виртуальная память. Сжатое кэширование просто добавляет новый уровень памяти между нормальными несжатыми страницами и дисковым хранилищем.)

Если вы это знаете и намеренно пытаетесь проверить zswap под в худшем случае, может быть, найти ошибки, пойти на это.

Но если нет, вероятно, вам следует прочитать статью Пола Р. Вильсона и др. «Дело для сжатого кэширования в системах виртуальной памяти», в котором объясняется когда сжатие ОЗУ помогает, когда это больно, и как адаптивный алгоритм может использоваться, когда он помогает, а не когда он этого не делает. (Документ находится в Интернете в html на каком-то сайте USENIX и в формате pdf где-то в другом месте.).

К сожалению, насколько я знаю, zram не выполняет описанную общую автоматическую адаптацию, поэтому вам нужно установить размер сжатого кеша по разумному обычному значению для вашей рабочей нагрузки.

В одном случае, когда это будет хорошо работать, если у вас больше оперативной памяти, чем у любой из ваших программ, но, как правило, бездействующие приложения, использующие также память, и переключение между приложениями. Страницы бездействия приложений будут сжиматься, и когда вы переключитесь на них, их нужно будет только сжать, а не загружать с диска.

1
ответ дан 24 May 2018 в 21:42

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

Похожие вопросы: