Eu atualizei um GTX960 para um Grid M40 para acelerar as codificações do FFMPEG. Eu tinha tudo funcionando com a velha GTX960 no CentOS 7 e fiquei impressionado o suficiente com os resultados para obter uma M40. O sistema operacional parece ver o cartão bem, como você pode ver:
[root@localhost]~# nvidia-smi
Mon Nov 14 17:59:15 2016
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 367.48 Driver Version: 367.48 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 GRID M40 Off | 0000:44:00.0 Off | N/A |
| 60% 60C P0 17W / 53W | 0MiB / 4041MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
| 1 GRID M40 Off | 0000:45:00.0 Off | N/A |
| 59% 59C P0 17W / 53W | 0MiB / 4041MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
| 2 GRID M40 Off | 0000:46:00.0 Off | N/A |
| 40% 41C P0 16W / 53W | 0MiB / 4041MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
| 3 GRID M40 Off | 0000:47:00.0 Off | N/A |
| 0% 49C P0 10W / 53W | 0MiB / 4041MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: GPU Memory |
| GPU PID Type Process name Usage |
|=============================================================================|
| No running processes found |
+-----------------------------------------------------------------------------+
E posso executar alguns exemplos de aplicativos da Nvidia:
[root@localhost]~/NVIDIA_CUDA-8.0_Samples/1_Utilities/bandwidthTest# ./bandwidthTest
[CUDA Bandwidth Test] - Starting...
Running on...
Device 0: GRID M40
Quick Mode
Host to Device Bandwidth, 1 Device(s)
PINNED Memory Transfers
Transfer Size (Bytes) Bandwidth(MB/s)
33554432 6286.3
Device to Host Bandwidth, 1 Device(s)
PINNED Memory Transfers
Transfer Size (Bytes) Bandwidth(MB/s)
33554432 6441.0
Device to Device Bandwidth, 1 Device(s)
PINNED Memory Transfers
Transfer Size (Bytes) Bandwidth(MB/s)
33554432 64577.1
Result = PASS
Mas quando tento executar o ffmpeg, recebo este erro:
[hevc_nvenc @ 0x290e500] No NVENC capable devices found
Stream mapping:
Stream #0:0 -> #0:0 (h264 (native) -> hevc (hevc_nvenc))
Stream #0:1 -> #0:1 (copy)
Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height
Eu tentei desinstalar os drivers nvidia, cuda e reinstalá-los, eu recompilei o ffmpeg, mas o erro não foi embora. Para sorrisos eu também tentei um Nvidia Quadro K2200 eu tinha deitado com os mesmos resultados. Alguma idéia?