我注意到资源监视器(resmon)和perfmon中报告的磁盘响应时间有差异。
资源监视器中报告的响应时间显着高于Avg报告的响应时间。 磁盘秒/在perfmon传输。
有人知道什么解释了资源监视器和perfmon中的响应时间度量之间的差异?
在下面的链接中也提出了同样的问题,但是我不清楚这个决议。
https://social.msdn.microsoft.com/Forums/sqlserver/en-US/50183f87-de7e-4ec0-ba7e-45a52c3550d3/io-latency-differs-between-perfmon-and-sysdmiovirtualfilestats?forum=sqldatabaseengine
数字是不同的,因为两个计数器测量不同的东西。
perfmon中的“平均磁盘秒/传输”计数器只是告诉您系统中任何位置的磁盘传输所花费的平均时间。 这个计算的开销比较less。
资源监视器的“磁盘活动”部分中的“响应时间”列是不一样的。 注意它是如何被每个进程分解的,并且每个单独的文件都被访问。 对于每个文件和每个进程,这个数字是不同的,因为您拥有不同的进程优先级,线程优先级,I / O优先级,调度程序开销,文件系统开销等。例如,后台服务的“响应时间”由于前面提到的调度algorithm,所以要比前台应用程序高。 有时候一个进程的磁盘活动会被延迟,而另一个进程会被切断到该行的前面。
考虑到这一点,资源监视器中显示的“响应时间”数字高于平均值 性能监视器中的磁盘秒/传输计数器。
道德的故事,他们是完全不同的两个柜台,测量两个完全不同的东西,不应该期望他们应该匹配。