in recommenders/utils/gpu_utils.py [0:0]
def get_cudnn_version():
"""Get the CuDNN version.
Returns:
str: Version of the library.
"""
def find_cudnn_in_headers(candidates):
for c in candidates:
file = glob.glob(c)
if file:
break
if file:
with open(file[0], "r") as f:
version = ""
for line in f:
if "#define CUDNN_MAJOR" in line:
version = line.split()[-1]
if "#define CUDNN_MINOR" in line:
version += "." + line.split()[-1]
if "#define CUDNN_PATCHLEVEL" in line:
version += "." + line.split()[-1]
if version:
return version
else:
return "Cannot find CUDNN version"
else:
return "No CUDNN in this machine"
if sys.platform == "win32":
candidates = [
"C:\\NVIDIA\\cuda\\include\\cudnn.h",
"C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v*\\include\\cudnn.h",
]
elif sys.platform == "linux":
candidates = [
"/usr/include/x86_64-linux-gnu/cudnn_v*.h",
"/usr/local/cuda/include/cudnn.h",
"/usr/include/cudnn.h",
]
elif sys.platform == "darwin":
candidates = ["/usr/local/cuda/include/cudnn.h", "/usr/include/cudnn.h"]
else:
raise ValueError("Not in Windows, Linux or Mac")
return find_cudnn_in_headers(candidates)