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

float fsum = 0.0;
for(int i = 0; i < 1000; i++) {
  if(i%10==0) {
    fprintf(stderr, "%10.5f%%\n", 100.0*float(i)/float(1000));
  }
  fsum += 1.0/float(i);
}

Теперь strace выдаст информацию об операторе fprintf так как это оператор write(2 , но он не дает информации о шагах суммирования. Если я хочу получить информацию о запущенной в данный момент программе, включая инструкции процессора, есть ли способ сделать это?

ПРИМЕЧАНИЕ: я знаю об инструментах, таких как gprof которые требуют предварительной компиляции. Я ищу способ найти ту же информацию, которую может предоставить gprof , но с ТОЛЬКО запущенной программой, которая может быть или не скомпилирована с учетом профилирования.

0