CUDA имеет 2 основных API, среду выполнения и драйвер API.Оба имеют соответствующую версию (например, 8.0, 9.0 и т. Д.)
Необходимая поддержка API драйвера (например, libcuda.so в linux) устанавливается установщиком драйвера GPU.
необходимая поддержка для API времени выполнения (например, libcudart.so в linux, а также nvcc
) устанавливается установщиком инструментария CUDA (в него также может быть включен установщик драйвера GPU).
В любом случае(установленная) версия API драйвера может не всегда соответствовать (установленной) версии API среды выполнения, особенно если вы устанавливаете драйвер графического процессора независимо от установки CUDA (т.е. инструментария CUDA).
Инструмент nvidia-smi
устанавливается установщиком драйвера графического процессора и, как правило, имеет в виду драйвер графического процессора, а не все, что устанавливается установщиком инструментария CUDA.
В последнее время (где-то между 410.48 и 410.73версия драйвера для Linux) Власти NVIDIA решили добавить отчет о версии драйвера CUDA Driver, установленной драйвером, в вывод из nvidia-smi
.
Это не связано с установленной версией среды выполнения CUDA.
nvcc
, инструмент драйвера компилятора CUDA, который устанавливается вместе с инструментарием CUDA, всегда будет сообщать версию среды CUDA, что онбыл построен, чтобы распознать.Он ничего не знает о том, какая версия драйвера установлена, или даже если установлен драйвер графического процессора.
Поэтому, по замыслу, эти два числа не обязательно совпадают, так как они отражают две разные вещи.