Инструмент похож на `strace`, но для инструкций процессора
282
drjrm3
Я надеюсь найти что-то подобное, 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
может дать вам, но с ТОЛЬКО запущенной программой, которая может быть или не скомпилирована с учетом профилирования.
Как насчет `gdb`: https://www.gnu.org/software/gdb/ ..?
txtechhelp 9 лет назад
0
Возможно, я ошибаюсь, но я не думал, что GDB может присоединиться к уже запущенной программе, не так ли?
drjrm3 9 лет назад
0
yup: `gdb prorgram 1234`, где` 1234` - PID программы, к которой вы хотите присоединиться; если у вас нет файла в каталоге от вас, где вы запускаете GDB с именем `1234`, то он будет пытаться отладить файл, в противном случае PID. Вы не сможете увидеть полные стеки выполнения (т. Е. Полные имена функций вещей в самой программе), если у вас нет символов отладки для этой конкретной программы, но вы можете увидеть совсем немного того, что происходит (включая сборку, т.е. инструкции процессора)
txtechhelp 9 лет назад
0
0 ответов на вопрос
Похожие вопросы
-
8
Должен ли я выбрать 32 или 64 бит для Linux?
-
12
Процессорные ядра: чем больше, тем лучше?
-
5
Почему мой компьютер начинает загружаться, а затем внезапно выключается?
-
-
2
Максимальная температура процессора для Core 2 Duo E6400
-
4
Насколько быстро каждое ядро в двухъядерном процессоре?
-
7
Могу ли я уменьшить скорость процессора моего MacBook при работе от батареи?
-
2
Предлагает ли Intel i7 реальное улучшение по сравнению со своими предшественниками?
-
4
Может ли 32-битная ОС работать на 64-битном процессоре?
-
3
Возможно ли использовать процессор Intel Q8400 в моем ASUS P5N-EM HDMI mobo?
-
3
Отпускает ли загрузка процессора / теплоотвода темп?