Ошибка CUDA при генерации изображения в Stable Diffusion Automatic1111
Юлиан Челак
Ученик
(103),
на голосовании
1 год назад
при генерации изображения выдаёт данную ошибку:
RuntimeError: CUDA error: the launch timed out and was terminated CUDA kernel errors might be asynchronously reported at some other API call, so the stacktrace below might be incorrect. For debugging consider passing CUDA_LAUNCH_BLOCKING=1. Compile with `TORCH_USE_CUDA_DSA` to enable device-side assertions
Почитав английские форумы я так и не понял как решить проблему, так что спрошу у русского комьюнити (я человек далёкий от программирования, так что не судите строго)
Ошибка "CUDA error: the launch timed out and was terminated" указывает на то, что запуск вычислений на видеокарте занял слишком много времени, после чего был автоматически завершен. Это часто происходит из-за сложности алгоритма или неправильной конфигурации среды выполнения.
Для решения этой проблемы можно рассмотреть несколько вариантов:
1. Увеличение времени ожидания запуска CUDA: Иногда увеличение времени ожидания для выполнения CUDA-ядер может помочь. Это можно сделать, установив параметр CUDA_LAUNCH_BLOCKING=1 перед вызовом кода, использующего графический процессор.
2. Обновление драйверов и CUDA Toolkit: Убедитесь, что у вас установлена последняя версия драйверов для вашей графической карты, а также последнее обновление CUDA Toolkit, которое совместимо с вашей версией PyTorch.
3. Проверка ресурсов видеокарты: Убедитесь, что ваша видеокарта и система в целом могут поддерживать запуск задач CUDA. Иногда ограниченные ресурсы видеокарты могут привести к подобным ошибкам.
4. Использование "Device-Side Asserts" (DSA): Это предупреждение учитывает ошибки CUDA, возникающие на стороне устройства, и позволяет легче выявлять и исправлять проблемы в коде.
5. Обратитесь к сообществу разработчиков: Если вы не уверены, как решить эту проблему, обратитесь за помощью к специалистам или сообществу разработчиков. Они могут предложить более конкретное решение, основанное на вашем коде и настройках.
Только, что такое было. Из за того, что я понижал напряжение на видеокарте, андервольтинг делал. Что бы память сильно не грелась. Откатил настройки MSI Afterburner и заработало нормально, буду искать подходящие значения. Но я 3 раза перепроверил, тот профиль что делал вот такую ошибку дает в SD.
Слушай спасибо за твой ответ. На самом деле тоже подумал про это, но я вместо сброса настроек профиля просто выключал MSI Afterburner и не помогало, похоже настройки остаются и после выключения. После твоего коммента попробовал именно сбросить настройки и заработало. Но мне это нужно было для анимаций в comfyui, а вот в SD(A11111) можно в батнике прописать set CUDA_LAUNCH_BLOCKING=1 и для генерации картинок это работает.
.
Профи
(994)
Антон Лапуткин, фукус точно так же исполнял при андервольте)) видать и СД и прочее так глючатся из за настроек карты. кстати комфи работал нормально.
Действительно! такая же ситуация , генерация картинки прерывалась чёрным экраном, и так же было снижено напряжение на афтабёрнере. Сбросил настройку и закрыл прогу, и всё встало на место) Спасибо! казалось бы причём тут андервольт и CUDA о которой пишется в терминале)) неуловил связь)) главное что работает )))
Для тех кто наткнется на это сообщение, скорее всего вы балуетесь Stable diffusion. У вас слишком новая версия CUDA. Загуглите download cuda 11.6 например. Скачайте. Другие удалите через установку удаления программ. Версию CUDA можно проверить запустить Power shell и вбить команду nvcc --version
RuntimeError: CUDA error: the launch timed out and was terminated
CUDA kernel errors might be asynchronously reported at some other API call, so the stacktrace below might be incorrect.
For debugging consider passing CUDA_LAUNCH_BLOCKING=1.
Compile with `TORCH_USE_CUDA_DSA` to enable device-side assertions
Почитав английские форумы я так и не понял как решить проблему, так что спрошу у русского комьюнити
(я человек далёкий от программирования, так что не судите строго)