1
3
假设你有这个程序: CPU探查器会这样说:
C的自我时间是10秒,100%。其他人的自我时间基本上是零。 每个人的总(含)时间为10秒或100%。你不能把这些加起来。 另一方面,假设C花了10秒钟来做I/O。
因为它使用的唯一实际CPU时间非常短,基本上没有样本命中它,所以要得到百分比,它要除以零。
更好的探查器类型是对调用堆栈、挂钟时间进行采样,并告诉您包含时间占总时间的百分比,并在代码行级别将其提供给您,而不仅仅是函数。这是很有用的,因为它是一个直接的量度,如果执行更少的行可以节省多少,几乎没有问题可以隐藏。此类探查器的示例包括 Zoom 和 LTProf 我听说OProfile可以做到。有 a simple method 它适用于任何语言,只需要一个调试器。 |
SRobertJames · 使用printf的gdb显示 1 年前 |
Subin · 在vscode中运行c时出错 1 年前 |
Community wiki · 如何调试Python内存故障? 1 年前 |
Kai · 有什么方法可以轻松优化VSCode中的锈迹? 2 年前 |
Chris Brandon · 如何使节点在堆栈溢出时中断? 2 年前 |