Профилирование Linux
Я хочу профилировать свое приложение, которое большую часть времени выполняет ввод-вывод на USB-устройстве.
Мне нужно увидеть, какие процессы выполняются в системе и что каждый процесс делает точно все время.
Ниже приведены спецификации тестируемой системы:
ОС: Fedora 13(урезанная версия) Язык приложения: Python/wxpython
Итак, кто-нибудь может направить меня к нужным инструментам / книгам / статьям / руководствам?
3 ответа
iotop
а также dstat
очень удобные инструменты для выявления проблем с производительностью. Я рекомендую специальноdstat -af
чтобы выяснить, какой ресурс (в любой момент времени) является ограничивающим фактором.
Это как раз то, для чего нужна случайная пауза. Это легко сделать в Python с помощью Ctrl-C. Вот краткое объяснение.
Если вы хотите увидеть код на C, альтернативой является Zoom.