Тестирование интенсивности процессора одной команды или функции

Есть ли команда, которая полезна для проведения тестового теста по отдельной команде или функции; посмотреть, как интенсивный процессор?

Предпочтительно что-то похожее на то, как вы можете сообщать о продолжительности команды со time .

Например: я попробовал следующий код; перед добавлением sleep 0.1 ; и он подчеркнул, что процессор, поклонники плывут на высокой передаче и т. д. Добавление sleep 0.1 после каждого printf казалось, смягчало проблему. И в основном, мне просто интересно узнать разницу:

 spin () { i=0 sp='/-\|' n=${#sp} printf ' ' sleep 0.1 while true; do printf '\b%s' "${sp:i++%n:1}" sleep 0.1 done } 

Источник: http://mywiki.wookedge.org/BashFAQ/034

  • Временно изменить время
  • Можно ли читать PVclock из пользовательского пространства?
  • Не удалось перенаправить stdout / stderr в файл журнала
  • Есть ли способ настроить форматирование даты / времени на экране входа в GNOME 3 и на рабочем столе?
  • В Ubuntu - / var / log / messages отметки времени на 4 минуты вперед
  • Время выполнения и ресурсы после процессов, которые выполнялись так долго
  • Использование аппаратных часов в Linux
  • Вычисление процессорного времени процесса в RHEL 5.3
  • 2 Solutions collect form web for “Тестирование интенсивности процессора одной команды или функции”

    time дает вам информацию! Он рассказывает вам, сколько времени программа потратила на пользователя (т.е. использование ЦП) на систему (т. Е. Ввод / вывод). Программа интенсивной работы с процессором – это та, для которой доминирует пользовательское время, а системное время ничтожно.

    Кажется, есть встроенное значение bash / ключевое слово и отдельное приложение /usr/bin/ time . Похоже, что первое имеет преимущество, поэтому для последнего требуется полный путь.

    (По-видимому, в прошлом это было много покрыто, но я впервые столкнулся с ним).

    Базовая функциональность такая же, но последняя может предоставить дополнительную информацию об использовании ЦП и т. Д. (Особенно с -v / --verbose flag).

    В то время как первая будет принимать функцию в качестве операнда, последняя не будет; если он не анализируется в контексте сценария. Таким образом, это немного раздражает и вызывает незначительные неудобства, но единственным решением является создание нового скрипта; объявляя новую функцию и вызывая ее, сохраняя ее, тогда:

     /usr/bin/time -v ./newfunction.sh 

    Спасибо всем, кто нашел время, чтобы написать.

    Linux и Unix - лучшая ОС в мире.