Я хотел бы измерить "истинные" ошибки жестких страниц, то есть ошибки страниц, которые приводят к вводу-выводу диска.
Это выглядит так, как будто Memory\Page Reads/sec
может помочь, но, как объяснялось в этот ответ, значение чтения страницы включает чтения, которые удовлетворяются из кэша файловой системы, но никогда не достигают диска. Похоже, это причина того, что количество Page Reads/sec
постоянно выше, чем фактический показатель IOPS диска, измеренный счетчиком. Physical Disk\Disk Reads/sec
.
У меня вопрос: Как я могу измерить количество ошибок чтения и записи страниц в секунду, достигающих диска?
Прошел год, а на это никто не ответил. Хотя я ни в коем случае не являюсь экспертом в области окон MS, я считаю, что вы можете посмотреть "\Memory\Pages Input/sec"
и "\Memory\Pages Output/sec"
. У Microsoft есть подробные описания этих значений в своей библиотеке PDH. Некоторые описаны Вот. Вы можете выполнить поиск на этой странице по запросу «серьезная ошибка», но вы не найдете именно то, что ищете (только серьезные ошибки). Вот вставка их описания «Память \ Ввод страниц / сек», которое может Помоги, YMMV:
Ввод страниц / сек - это скорость, с которой страницы считываются с диска для устранения ошибок жестких страниц. Сбои аппаратных страниц возникают, когда процесс обращается к странице в виртуальной памяти, которая не находится в его рабочем наборе или где-либо еще в физической памяти, и должна быть получена с диска. Когда происходит ошибка страницы, система пытается прочитать несколько смежных страниц в память, чтобы получить максимальную выгоду от операции чтения. Сравните значение Memory \ Pages Input / sec со значением Memory \ Page Reads / sec, чтобы определить среднее количество страниц, считываемых в память во время каждой операции чтения.
Я должен добавить, что в Windows 8 и более поздних версиях вы можете опросить эти значения из командной строки PowerShell с помощью Get-Counter
команда, например Get-Counter -Counter "\Memory\Pages Input/sec"