我正在监视Windows 2k8中的内存对象,并且正在跟踪页面错误/秒计数器。 是否有任何阈值来确定什么是过多的页面错误? 或者我应该更关心一个持续的,高数量的页面错误?
有没有更好的方法来查看页面错误?
这是一个很好的问题,因为读取内存问题进行性能监视是很困难的。
首先,在查看Page Faults/sec
要记住,这包括软错误,硬错误和文件caching错误。 大多数情况下,您可以忽略软故障(即内存位置之间的分页)和caching故障(将文件读入内存),因为它们在大多数情况下对性能的影响有限。
内存不足的真正计数器将成为硬盘故障,可在Memory: Page Reads/sec
下find。 硬故障意味着进程执行中断,所以可以从磁盘读取内存(通常意味着打到页面文件)。 我会考虑任何持续数量的硬故障来表示内存不足。
随着进一步深入兔子洞,您还可以将磁盘队列长度与硬故障进行比较,以查看磁盘读取是否进一步影响磁盘性能。 要在这里获得照片,请查看Physical Disk: Avg. Disk Queue Length.
Physical Disk: Avg. Disk Queue Length.
如果这个数字大于数组中的主轴数量,那么就有问题了。 但是,如果这个数字在硬盘页面故障时才出现问题,则说明内存容量问题,而不是磁盘性能问题。
Page fault / sec是一个相对计数器,因此您需要将其与内存利用率以及磁盘I / O等进行比较。 即使持续大量的页面错误也可能不是表示性能问题(本身),仅仅意味着请求的页面不在内存中。 看看这个PAL工具的基本窗口性能分析的概述 。