-
Notifications
You must be signed in to change notification settings - Fork 26
Closed
Description
I was experimenting with CUDA support within EESSI and ran into the issue that, when using CUDA compiled with the EESSI stack, the CUDA libraries from the host are not seen by the executables created by nvcc. This is because it looks for the CUDA driver libraries in the prefix, where they do not exist. There are a few viable solutions:
- Use
LD_PRELOAD...but this requires that you know exactly which libraries to preload. - Use
LD_LIBRARY_PATH...but in the system that I was on, the CUDA libraries are in/usr/lib64so this would drag in a lot of unwanted libraries. This could be worked around by symlinking the libraries to a more unique location in the host (Compute Canada uses/usr/lib64/nvidiaand has a script that creates the necessary symlinks). - Modify the loader to (also) look in an appropriate directory - this is what Compute Canada does, see https://github.com/ComputeCanada/gentoo-overlay/blob/master/sys-libs/glibc/glibc-2.30-r8.ebuild#L1111
Reactions are currently unavailable
Metadata
Metadata
Labels
No labels
Type
Projects
Status
Done