Сброс GPU и драйвера после ошибки CUDA

Иногда ошибки в моих программах CUDA приводят к разрыву графики рабочего стола (в Windows). Как правило, экран остается несколько читаемым, но при изменении графики, например при перетаскивании окна, появляется много полузасуточных цветных пикселей и небольших блоков.

Я попытался использовать reset графический процессор и драйвер, изменив разрешение рабочего стола, но это не помогает. Единственное исправление, которое я нашел, - перезагрузить компьютер.

Есть ли там программа или какой-то трюк, который я могу использовать, чтобы получить драйвер и графический процессор до reset без перезагрузки?

Фон:

У меня были карты 1.0, 1.1, 1.3 и 2.0, но теперь у меня есть только 1.1 и 2.0. Я видел проблему на 1.0 и 1.1. Я уверен, что видел его на 1.3. Я не уверен в 2.0. Была ли добавлена ​​защита памяти примерно 1,3? Я почти уверен, что это произошло не из-за неустойчивого оборудования, поскольку проблемы, похоже, были вызваны ошибками в моем коде и исчезли, когда исправлены ошибки. При запуске готового кода карты были стабильными. Я написал этот вопрос, увидев его на своей 1,1-карточке, но он исчез после исправления ошибки, и теперь у меня нет кода, который его воспроизводит. Может быть, я должен попытаться написать случайные местоположения на карточке 1.1 и посмотреть, что-нибудь случится...

Ответ 1

Edit:

Если вы используете аппаратное обеспечение Tesla на Linux и можете запускать nvidia-smi, вы можете reset использовать графический процессор с помощью

nvidia-smi -r

или

nvidia-smi --gpu-reset

Вот вывод man для этого переключателя:

Сбрасывает состояние GPU. Может использоваться для очистки двухбитовых ошибок ECC или восстановленный GPU. Требуется -i переключиться на целевое устройство. Доступно только для Linux.

В противном случае...


Способ действительно reset для перезагрузки оборудования.

То, что вы описываете, не должно происходить. Я рекомендую тестировать различные аппаратные средства и сообщать нам, если это все еще происходит.

Ответ 2

У меня есть GeForce GTX 260 по сравнению с NVDIA GPU SDK 4.2, и я испытываю некоторые проблемы. Иногда у меня возникают ошибки в программах. Это заставляет экран отображать случайные цветные пиксели, описанные в этом сообщении.

Как указано здесь, если я изменяю разрешение, они не исчезают. Более того, если я только изменяю COLOR DEPTH с 32 до 16 бит, случайные цветные пиксели исчезают, но возврат к 32 битам (без перезагрузки) заставляет их появляться снова. Последняя ошибка, вызвавшая это поведение, заключалась в использовании памяти __constant__, но передача ее как указателя:

test<<<grid, threadsPerBlock>>>( cuda_malloc_data, cuda_constant_data );

Если я не передаю cudb_constant_data, тогда нет ошибки (и, следовательно, случайные цветные пиксели не отображаются).

Ответ 3

В reset графический стек в Windows нажмите Win + Ctrl + Shift + B.

Ответ 4

Поскольку такая же проблема возникает иногда в Unix, и Google перенаправил меня в эту ветку, я надеюсь, что это поможет кому-то еще..

При выгрузке и перезагрузке ubuntu модуль ядра nvidia решил эту проблему для меня:

sudo rmmod nvidia_uvm
sudo modprobe nvidia_uvm

Ответ 5

  1. в "Диспетчере устройств" на вкладке "Адаптеры дисплея" найдите драйвер
  2. отключить его
  3. нажмите win + ctrl +shift + B (монитор будет мигать)
  4. включить драйвер

вот и ты.