Visual Studio 2013 профилировщик chrashes и перезагрузки системы

у меня рабочая станция HP Z440 (E5-1680v4 и 128 ГБ ОЗУ, BIOS 2.39 Rev. A), и я использую Visual Studio Professional 2013 (обновление 5). Операционная система Windows 7 64-бит.

когда я использую профилировщик из Visual Studio в проекте C#, например, он падает, и он перезагружает / перезагружает мой компьютер.

следующие шаги воспроизвести проблему:

  1. запустите компьютер и откройте Visual Studio
  2. создание консольного приложения C# (.NET 4.0)
  3. добавить Console.WritLine("Hello World :-("); main метод.
  4. меню / анализ / производительность и диагностика.
  5. отбор проб процессора.
  6. выберите проект HelloWorld например.
  7. собрана вся информация, необходимая для создания сеансов производительности.
  8. нажать на кнопку Finish (Lunch profiling after the wizard finishes проверено).
  9. щелчок в следующем диалоговом окне да. enter image description here
  10. Windows запрашивает учетные данные администратора, которые я могу ему предоставить.
    enter image description here
  11. я вижу вторую вкладку (*.ВСП) показ Start the profiler. После этого ПК падает и перезагружается.

Я вижу критическую ошибку в системном журнале после перезагрузки:

система перезагрузилась без предварительного отключения. Этот
ошибка может возникнуть, если система перестала отвечать,
потерять власть неожиданно.

любые идеи, что происходит? В прошлом году (2017) я смог использовать профилировщик Visual Studio 2013 на том же компьютере. Единственными вещами, которые были изменены, были обновления Windows и BIOS (do Meltdown и Spectre).

что я могу сделать, чтобы снова профилировать свой код?

10
задан Wollmich
07.04.2023 14:36 Количество просмотров материала 3684
Распечатать страницу

2 ответа

недавно MS при условии настройки реестра, чтобы отключить Spectre / Meltdown патчи. Если профиль безопасности среды разработки может жить с отключением этих исправлений, эти параметры позволят профилировщику снова функционировать:

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverride /t REG_DWORD /d 3 /f

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverrideMask /t REG_DWORD /d 3 /f

Перезагрузка, и профилировщик должен снова работать.

источник: https://support.microsoft.com/en-us/help/4073119/protect-against-speculative-execution-side-channel-vulnerabilities-in

5
отвечен aap 2023-04-08 22:24

Это вызвано январских обновлений windows. Похоже, это не будет исправлено, см. следующие комментарии от Allen Denver:

Мне очень жаль, что вы видите эту проблему. Недавно выпущенное исправление безопасности для Windows 7 (исправление безопасности" Meltdown/Spectre") приводит к тому, что все версии Мастера производительности Visual Studio и утилиты командной строки VSPerfCMD при использовании в режиме выборки перезагружают компьютер без предупреждения или журнала событий вступления. Эта проблема влияет на выборку только при использовании для сбора стеков выделения памяти ЦП или .Net. Режим инструментирования не изменяется. Также в режиме конкуренции тоже не влияет. Эта проблема также не влияет на операции профилирования, поддерживаемые в Windows 8+.

причина этой проблемы заключается в том, что ранее поддерживаемые операции, выполняемые профилировщиком выборки, больше не допускаются после исправления безопасности. Патч безопасности изменен ядро ОС Windows 7 является таким образом, низкоуровневый код сбора данных, который мы используем, приводит к перезагрузке машины. Когда это происходит, нет синего экрана и записей журнала событий. Проблема возникает даже ниже, чем эти средства ОС. Эта причина аналогична изменениям, внесенным в ядро операционной системы Windows в Windows 8, которые привели к значительному изменению профилировщика Visual Studio для использования различных методов сбора данных профилирования выборки. Windows 8 запретила метод сбора, используемый в Windows 7. Теперь, с патчем безопасности, Windows 7 также запрещает технику.

к счастью, есть несколько обходных путей, которые я могу порекомендовать. Эти обходные пути не идеальны. У них есть ограничения, которые мы надеемся быстро устранить в будущем, чтобы заполнить пробелы, но их можно использовать, по крайней мере, для выполнения некоторого профилирования производительности, пока мы работаем над заполнением этих пробелов.

У меня есть длинный документ, над которым я работаю, который подробно описывает обходные пути. Это слишком долго для одного поста здесь. Итак, я разбью его на несколько ответов на эту запись. Я также опубликую ссылку на один документ, когда у меня будет место для него в интернете.

Allen Denver

Visual Studio

и

мы намерены выпустить патч, который позволит избежать поведения перезапуска, запретив сеанс сбора выборки от начала. Однако это не "исправление". У нас нет планов сделать Обозреватель производительности, мастер производительности, vsperfaspnetcmd или vsperfcmd выборки работают в Windows 7. Наш путь вперед - с помощью инструмента использования ЦП и Центра диагностики (он же "профилировщик производительности").

источник: https://developercommunity.visualstudio.com/content/problem/177958/starting-the-profiler-leads-to-computer-restart-af.html

Способ 1

для Windows 7 и Visual Studio 2013 нет хорошего обходной путь, см. комментарий от Allen Denver:

для VS2013 и предыдущих версий Visual Studio можно использовать Метод инструментирования для профилирования.

таким образом, вы больше не можете использовать режим выборки ЦП с Windows 7 и Visual Studio 2013.

Способ 2

Я думаю, переключение на Windows 10 и Visual Studio 2017-это путь, см. Также комментарий от Allen Denver:

мастер производительности и профилирование обозревателя производительности в Visual Studio 2017 методом проб будут работать на Windows 10. В случае выигрыша 8+, мы изменили коллектор, чтобы получить трассировки стека, используя другой набор особенностей ОС, а не нашего собственного драйвера ядра.

3
отвечен Wollmich 2023-04-09 00:41

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх