DA0017: высокая скорость подкачки активной памяти на диск
Идентификатор правила |
DA0017 |
Категория |
Память и разбиение по страницам |
Метод профилирования |
Все |
Сообщение |
Высокая скорость подкачки активной памяти на диск. Возможно в приложении ограничено использование памяти. |
Тип правила |
Сведения |
При профилировании методом выборки, памяти .NET или конфликтов ресурсов необходимо собрать не меньше 10 экземпляров, чтобы вызвать срабатывание правила.
Причина
Данные о производительности системы, собранные в ходе сеанса профилирования, свидетельствуют о высокой скорости подкачки активной памяти на диск и с него на протяжении сеанса профилирования. Обычно скорости подкачки на таком уровне влияют на производительность и скорость ответа приложения. Попробуйте сократить объем выделяемой памяти, изменив алгоритмы. Кроме того, возможно, нужно будет учесть требования к памяти, используемой приложением,
Описание правила
Примечание
Это правило информирования применяется, когда уровень подкачки активной памяти достигает значительной величины.Если скорость подкачки оказывается очень высокой, вместо него применяется правило предупреждения DA0014: исключительно высокая скорость подкачки активной памяти на диск.
Слишком активная подкачка на диск может вызвать нехватку физической памяти. Если для операций подкачки используется преимущественно физический диск, на котором расположен файл подкачки, они могут замедлить другие прикладные операции с этим диском.
Страницы часто считываются с диска или записываются на диск во время выполнения массовых операций подкачки. Например, число выводимых страниц в секунду часто оказывается значительно больше числа записываемых страниц в секунду. Это происходит потому, что число выводимых страниц в секунду также включает измененные страницы данных из кэша файловой системы. Однако не всегда удается легко определить процесс, непосредственно отвечающий за подкачку, а также причину этого процесса.
Устранение нарушений
Дважды щелкните сообщение в окне со списком ошибок, чтобы перейти в представление Метки. Найдите столбец Память\Страниц в секунду. Установите, есть ли какие-либо этапы выполнения программы, на которых операции ввода-вывода в процессе подкачки более интенсивные по сравнению с другими этапами.
При сборе данных профилирования для приложения ASP.NET в сценарии нагрузочного тестирования попытайтесь запустить нагрузочный тест повторно на компьютере, оснащенном большим объемом физической памяти (или ОЗУ).
Рекомендуется сократить объем используемой памяти, пересмотрев алгоритм и исключив использующие слишком много памяти интерфейсы API, например String.Concat и String.Substring.