Как получить количество команд процессора для потока? - PullRequest
0 голосов
/ 29 января 2019

Я знаю, что getrusage() может обеспечить загрузку ЦП для каждого потока, но только время, потраченное на ЦП.Есть ли способ получить количество выполненных инструкций процессора?Или количество циклов, потраченных на процессор?По сути, мне нужно найти воспроизводимую меру того, сколько поток тратит на процессор.Любые предложения, чтобы сделать это в C?

ОБНОВЛЕНИЕ (чтобы ответить на комментарии):

  • В идеале мне нужно это независимым от платформы способом, но Linux будет наиболее полезным.
  • Воспроизводимость наиболее важна для меня, даже если это означает, что фактическое время выполнения может немного отличаться.
  • Я знаю vTune (и использовал его), но я хотел бы иметьэта информация программно, в то время как мой код работает.Итак, vTune отсутствует, а также предложения, сделанные в посте, на который ссылается Крейг Эсти.
  • Я посмотрел Руководство по встроенным функциям Intel , но не нашел ничего полезного ...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...