2

有谁知道一个可以给我 x86 指令执行计数的好工具。我看过 gcov,但想看看其他可能对我有帮助的选项。我的最终目标是能够调用此函数并为其提供我对模拟/分析感兴趣的函数,它将返回每条装配线执行的次数。欢迎任何建议:) 谢谢

4

4 回答 4

1

Qemu 可以提供帮助,但是这种分析会破坏您的缓存/管道配置文件并且不会有用。

于 2010-12-16T18:04:29.010 回答
0

如果您正在寻找占用大量时间的指令,并且如果您可以在调试器下运行它,那么这将起作用。它将隔离占用大量时间的代码点,无论它们是终端指令还是函数调用指令,即使它们会导致 I/O。

可以执行此操作的工具是Zoom(如果您在 Linux 上)或LTProf(如果在 Windows 上)。

另一方面,如果您正在寻找时间测量和执行计数,您将需要其他东西,例如模拟器(Valgrind?)。

于 2010-12-16T18:19:59.460 回答
0

AMD 的代码分析师应该能够使用基于指令的采样来做到这一点,但我不记得它是否给出了执行计数的百分比或平面数字。

于 2010-12-16T20:21:32.180 回答
0

你可以很容易地在 Linux 上将这样的程序拼凑在一起,只需ptrace 结合使用objdump和一些逻辑,应该很容易用asm.

我从How to code debuggers中得到了这个想法。

于 2012-08-21T21:38:00.250 回答