Description
For CUDA-enabled software packages, our software environment relies on having driver libraries installed in the path /usr/lib64/nvidia
as documented on Compute Canada Wiki.
The minor versions of the symbolic links we create in /usr/lib64/nvidia
appear to no longer be needed by the software the install. The removal of libnvidia-fatbinaryloader.so.$version
in recent CUDA releases is what made us question the need for minor versions.
On the presence of minor version @mboisson had this to say:
We do rely on /usr/lib64/nvidia/libcuda.so.$cuda_version to figure out which version of cuda drivers is installed, to hide or show specific versions of the cuda modules. But this is home made code and could be adjusted, i.e. function get_installed_cuda_driver_version at line 178 of /cvmfs/soft.computecanada.ca/config/lmod/SitePackage.lua
And the following suggestion
If the minor versions of the shared objects are no longer needed, we could just have a directory of symlinks distributed on cvmfs that would include only the major libraries
Some serious testing is needed, but it would simplify documentation as the current script we provide on Compute Canada wiki is out of date, and keeping it up-to-date is an ever boring moving target.