Что мне сообщает Performance Monitor, когда количество ошибок на моей странице в секунду велико?

78095
David Robison

У меня есть Windows 7 64-разрядный компьютер, который имеет проблемы с производительностью. После некоторого расследования я обнаружил, что количество ошибок в секунду на этой странице, как сообщает Performance Monitor, действительно велико.

Все остальное вроде нормально. Resource Monitor сообщает об отсутствии серьезных сбоев и большом количестве доступной памяти.

Это потенциальная причина проблем или красная сельдь? Если это что-то, что может вызывать проблемы, что мне делать дальше, чтобы выяснить, что вызывает это?

Вот скриншот монитора производительности. Обратите внимание, что среднее число ошибок на странице в секунду составляет 75 887. На другом компьютере, который не имеет проблем, это число ближе к 3000.

Performance Monitor--Page Faults / Second = 75,000!

Вот снимок экрана монитора ресурсов, отсортированный по частоте сбоев / секунду, который в настоящее время равен 0 для всех процессов.

Resource Monitor--Hard Faults / Second = 0

14
Ваша шкала мега низкая на 0,001 BTW Jeff F. 13 лет назад 0
Основы ошибок страницы ... http: //blogs.technet.com/b/askperf/archive/2008/06/10/the-basics-of-page-faults.aspx Moab 13 лет назад 1
Примечания к ошибкам страницы, это может быть плохо закодированная программа, вызывающая этот или неисправный модуль памяти ... http: //blogs.msdn.com/b/greggm/archive/2004/01/21/61237.aspx Moab 13 лет назад 1
Наконец нашел источник всех этих ошибок страницы: служба поиска Windows. Отключил это, общее количество ошибок страницы снизилось до 3000 в секунду, и все работает отлично. David Robison 13 лет назад 3

3 ответа на вопрос

10
Tom Wijsman

В Process Explorer есть столбец, в котором можно проверить, сколько сгенерированных ошибок страниц.
Таким образом, вы можете определить программу, вызывающую проблему, и более конкретно устранить неполадки.

enter image description here


Монитор производительности: среднее число ошибок на странице в секунду :

Этот счетчик дает общее представление о том, сколько раз запрашиваемая информация находится не там, где ее ожидает приложение (и VMM) . Информация должна быть извлечена из другого места в памяти или из файла подкачки. Напомним, что хотя постоянное значение может указывать на проблему здесь, вы должны быть более обеспокоены жесткими сбоями страниц, которые представляют собой фактическое чтение или запись на диск . Помните, что доступ к диску намного медленнее, чем к ОЗУ.

http://technet.microsoft.com/en-us/library/cc768048.aspx

Я пробовал это, но дельта PF в основном 0 для всех процессов (все <100). Кажется, есть некоторые различия между ошибками страниц в системном мониторе и серьезными ошибками, о которых сообщает Resource Monitor или Process Explorer. David Robison 13 лет назад 0
@DavidRobison: Обновил мой пост цитатой в конце, часть, выделенная жирным шрифтом, должна ответить на ваш вопрос, я полагаю, что это нормальное поведение. Tom Wijsman 13 лет назад 0
Эта ссылка помогает, хотя теперь у меня остался другой вопрос: как мне выяснить, какой процесс вызывает сбои программной страницы? http://serverfault.com/questions/230669/how-do-i-find-the-source-of-soft-page-faults David Robison 13 лет назад 0
@DavidRobison: может помочь приватная колонка Delta Bytes, пока не знаю ... Tom Wijsman 13 лет назад 0
2
Ron

Ошибка жесткого листа - это когда менеджер памяти обнаруживает, что блок памяти, в котором он нуждается, находится не в оперативной памяти. Эта память была выгружена на диск, и ваша система замедляется, потому что оттуда требуется больше времени. Добавьте больше памяти в вашу систему, чтобы уменьшить количество сбоев страниц и повысить производительность.

С другой стороны, если вы только что запустили приложение, то ожидайте много сбоев страниц, пока все загружается. Это может быть то, что вы видели, потому что у вас, кажется, достаточно свободной памяти. Ron 13 лет назад 0
Кэши памяти находятся в разных местах (процессор, материнская плата, контроллер диска). У медленной машины кеш процессора меньше? Ron 13 лет назад 1
Вы не можете точно увеличить кеш вашего процессора. Добавление дополнительной памяти не исправит это. (который вы упомянули в своем последнем комментарии) Adam 12 лет назад 0
1
huoxudong125

Вот таблица из книги Windows Internals о том, в чем ошибка страницы. (Я исключил те, которые приводят к нарушению доступа):

  • Причина ошибки - результат
  • Доступ к странице, которая не находится в памяти, но находится на диске в файле подкачки или сопоставленном файле - выделите физическую страницу и прочитайте нужную страницу с диска в соответствующий рабочий набор.
  • Доступ к странице, находящейся в резервном или измененном списке - переходите на страницу к соответствующему процессу, сеансу или системному рабочему набору.
  • Доступ к нулевой странице спроса - добавление заполненной нулями страницы в соответствующий рабочий набор
  • Запись на страницу копирования при записи - Создайте частную (или сеансовую) копию страницы процесса и замените оригинал в рабочем или системном рабочем наборе.

Вы можете ссылаться на вопрос для более подробной информации, что-причины-страницы-неисправности

Есть так много причин, чтобы сделать page fault.