MyTetra Share
Делитесь знаниями!
Создание искусственной нагрузки на диск и процессор в Linux
Время создания: 29.12.2020 09:33
Текстовые метки: linux, создание, генерация, нагрузка, затормозить, диск, процессор, микропроцессор
Раздел: Компьютер - Linux - Bash - Команды и скрипты
Запись: xintrea/mytetra_syncro/master/base/1609223593eqd2uw9ge3/text.html на raw.github.com

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



Создание нагрузки с помощью стандартных утилит


В Linux сделать такую нагрузку можно с помощью следующей команды:



while true; do dd if=/dev/urandom count=10M bs=1 | bzip2 -9 > /tmp/random.bin ; rm -f /tmp/random.bin ; done



Эта команда создаст как нагрузку на дисковую подсистему ввода-вывода за счет работы с большим генерируемым файлом, так и нагрузку на процессор за счет использования алгоритма упаковки.


Если нужно нагрузить только процессор, то реальный файл /tmp/random.bin можно заменить /dev/null, и тогда команда будет выглядеть так:



while true; do dd if=/dev/urandom count=10M bs=1 | bzip2 -9 > /dev/null ; done



Если нужно нагрузить сразу несколько ядер, то можно запустить данную команду в нескольких терминалах.



Создание нагрузки с помощью специализированной утилиты


Но для удобства можно воспользоваться утилитой stress, если она есть в репозитарии дистрибутива. Данной утилитой достаточно просто можно создать нагрузку на заданное количество ядер:



stress --cpu 4



С помощью опции --io <N> можно создать несколько "веркеров", которые будут генерировать нагрузку на дисковую систему ввода-вывода. А с помощью опции --vm <N> можно создать несколько "веркеров", генерирующих нагрузку на память вычислительного устройства.


Так же в этом разделе:
 
MyTetra Share v.0.55
Яндекс индекс цитирования