DA0026: обработка чрезмерного времени ядра ЦП
Идентификатор правила |
TODO |
Категория |
Использование средств профилирования |
Метод профилирования |
Выборка |
Сообщение |
Измерено относительно высокое значение времени обработки ЦП в режиме ядра.Рассмотрите возможность выявления источника проблемы, включив выборку по SysCall. |
Тип правила |
Сведения |
При профилировании методом выборки, памяти .NET или конфликтов ресурсов необходимо собрать не меньше 10 экземпляров, чтобы вызвать срабатывание правила.
Причина
Доля времени, в течение которого ЦП работал в режиме ядра, превышает время, затраченное на пользовательский режим.Рекомендует выполнить профилирование еще раз и сделать выборку по числу системных вызовов (syscall), чтобы определить причину большого времени выполнения в режиме ядра.
Описание правила
Относительно большая доля времени, затраченного на выполнение в режиме ядра, может послужить основанием для дополнительного исследования.Приложение, работающее в пользовательском режиме, переходит в режим ядра для выполнения операций ввода-вывода, ожидания потока или примитивов синхронизации процессов либо выполнения системных вызовов.Выбрав параметр для сбора образцов стеков вызова на основе системных вызовов, можно изучить характер системных вызовов приложения и определить функции, которые их инициируют.
Устранение нарушений
Чтобы изучить характер системных вызовов приложения, запустите профилирование повторно и выберите параметр для сбора образцов на основе системных вызовов.В случае запуска средств профилирования внутри интерфейса IDE для получения дополнительных сведений см. раздел Практическое руководство. Выбор событий выборки.При запуске средств профилирования из командной строки см. параграф Sampling Interval Options раздела VSPerfCmd в справочных сведениях о программах командной строки средств профилирования.