Назад | Перейти на главную страницу

Использование ЦП / памяти / диска (в среднем) после завершения процесса

Сервер Ubuntu 9.10

Итак, есть time команда, которая покажет вам время, которое потребовалось для запуска определенного процесса / команды после завершения команды. Например:

:~$ time ls
real 0m0.020s
user 0m0.000s
sys 0m0.000s

Я также хотел бы собрать данные о среднем использовании ЦП, памяти и диска (ввода-вывода) после завершения процесса с использованием времени (или другой команды, если необходимо). Как я могу этого добиться?

В основном я использую это для оценки производительности импорта MySQL с использованием разных innodb_buffer_pool_size настройки.

Хороший вопрос. В контексте MySQL вам может быть лучше использовать инструменты, предназначенные для этой цели. У вас есть Sysbench, Supersmack и другие. См. Ссылки ниже.

Я не совсем уверен, что это будет работать именно так, как вы хотите, но vmstat <delay> будет распечатывать статистику каждую секунду.

Есть также sar который автоматически считывает системную статистику каждые 10 минут или как бы долго sard настроен для.

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

Я обычно просто использую top -p я, поскольку это ограничивает верхний процесс, который мне небезразличен. Затем вы можете переключать дополнительные поля обычным способом. Например, top -p 1 покажет только init обработать. Затем вы можете наблюдать за производительностью MySQL во время импорта.

Вы можете смотреть статистику ЦП, использование памяти (RSS и виртуальную), сбои, все, что обычно дает вам топ.