【发布时间】:2014-10-01 19:08:47
【问题描述】:
在this 文章中,我正在阅读:
| Data column | Column Number | Description |
|---|---|---|
| Duration | 13 | Amount of time (in milliseconds) taken by the event. |
| CPU | 18 | Amount of CPU time (in milliseconds) used by the event. |
我正在对正在使用的查询进行故障排除
-
CPU:
2,650 ms -
持续时间:
733 ms
这些数字不应该更接近一些吗?查询如何使用比整个事件持续时间更多的 CPU 时间?
谢谢
【问题讨论】:
-
您需要了解操作系统的工作原理,即为不同进程提供时间片。这是一个开始的地方:en.wikipedia.org/wiki/Preemption_(computing)#Time_slice。注意:在多处理器环境(或超线程环境)中,您需要考虑处理器/线程的数量。
-
检查执行计划。看起来你在那里有一个并行查询,这可以解释为什么 CPU 时间比持续时间长。
标签: sql cpu profiler trace duration