Created
November 18, 2020 11:23
-
-
Save adujardin/afa2093e0013816341d7edbf47609548 to your computer and use it in GitHub Desktop.
Check nvidia driver + cuda runtime version for Linux
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env bash | |
# Check if nvidia-smi is there | |
if ! command -v nvidia-smi &> /dev/null | |
then | |
echo "nvidia-smi could not be found" | |
exit | |
else | |
# Check that it's working | |
out=$(nvidia-smi) | |
need_reboot_str="NVML: Driver/library version mismatch" | |
if [[ "$out" == *"$need_reboot_str"* ]]; then | |
echo "Driver recently setup, reboot your computer to use CUDA" | |
exit | |
fi | |
# Normal operation | |
out=$(nvidia-smi -q -u -x) | |
cuda_version_runtime=$(echo $out | grep "cuda_version" | sed -e 's/.*<cuda_version>\(.*\)<\/cuda_version>.*/\1/') | |
nvidia_driver_version=$(echo $out | grep "driver_version" | sed -e 's/.*<driver_version>\(.*\)<\/driver_version>.*/\1/') | |
cuda_version_runtime_arr=($(echo $cuda_version_runtime | grep -o -E '[0-9]+')) | |
cuda_version_runtime_major=${cuda_version_runtime_arr[0]} | |
cuda_version_runtime_minor=${cuda_version_runtime_arr[1]} | |
echo "$cuda_version_runtime_major.$cuda_version_runtime_minor" | |
nvidia_driver_version_arr=($(echo $nvidia_driver_version | grep -o -E '[0-9]+')) | |
nvidia_driver_version_major=${nvidia_driver_version_arr[0]} | |
nvidia_driver_version_minor=${nvidia_driver_version_arr[1]} | |
echo "$nvidia_driver_version_major.$nvidia_driver_version_minor" | |
fi |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment