Проблема: после вывода ноутбука в сон и последующего пробуждения FFmpeg выдаёт примерно следующее:
[AVHWDeviceContext @ 0x55ec837f1800] cu->cuInit(0) failed -> CUDA_ERROR_UNKNOWN: unknown error Device creation failed: -1313558101.
Команда у меня такая:
ffmpeg -vsync 0 -hwaccel cuda -hwaccel_output_format cuda -i INPUT.mkv -c:a mp3 -c:v h264_nvenc -profile baseline -y OUTPUT.mkv
С аналогичной ошибкой отваливается и Kdenlive при попытке использовать аппаратный кодек.
Как оказалось, ошибка известная ( и на форуме nVidia), там же можно найти WA:
This bug disappears after running nvidia-bug-report.sh for some reason, CUDA works again after running nvidia-bug-report.sh.
Edit: After more research I found out that running nvidia-settings as root somehow fixes the problem.
Edit 2: Loading the nvidia-uvm module thoughmodprobe nvidia-uvm
fixes this issue
WA:
sudo modprobe -r nvidia_uvm
sudo modprobe nvidia_uvm
Я засунул эти команды в suspend-hook Systemd:
sudo systemctl edit --force --full nvidia-uvm-wa-sleep.service
Содержимое:
[Unit]
Description=nVidia UVM suspend bug WA
Before=sleep.target
StopWhenUnneeded=yes
[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart= modprobe -r nvidia_uvm
ExecStop= modprobe nvidia_uvm
[Install]
WantedBy=sleep.target
Включить:
sudo systemctl enable nvidia-uvm-wa-sleep.service
Содержимое юнита по мотивам: