многопоточность — Как имитировать высокую активность хранилища в приложении C ++

Какими способами можно помочь выявить проблемы в большом многопоточном приложении c ++, которые могут быть обременены доступом к хранилищу ввода-вывода?

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

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

Я знаком с запущенными инструментами, такими как VTune, если бы внутри этого анализатора было что-то, что может сделать это, я хотел бы знать, но я был бы открыт для использования других инструментов.

1

Решение

Вы можете создать и смонтировать файловую систему FUSE, которая просто задерживает обычные вызовы файловой системы: http://www.cs.nmsu.edu/~pfeiffer/fuse-tutorial/

0

Другие решения


По вопросам рекламы [email protected]