Skip to content

cuda: parallel computing platform/programming model for NVIDIA GPUs

Overview of package

Package: cuda
Description: parallel computing platform/programming model for NVIDIA GPUs
For more information: https://developer.nvidia.com/cuda-zone
Categories: SoftwareDevelopment
License: Unknown

General Usage

CUDA is a parallel computing platform and programming model designed by NVIDIA enabling one to harness the power of NVIDIA GPUs.

This module will add the nvcc and other CUDA commands to your path.

The following environmental variables have been defined:

  • $CUDA_ROOT has been set to the root of the cuda installation
  • $CUDA_LIBDIR points to the directory containing the libraries
  • $CUDA_INCDIR points to the directory containing the header files

You will probably wish to use these by adding the following flags to your compilation command (e.g. to CFLAGS in your Makefile):

  • -I$CUDA_INCDIR

and the following flags to your link command (e.g. LDFLAGS in your Makefile):

  • -L$CUDA_LIBDIR -Wl,-rpath,$CUDA_LIBDIR

Available versions by cluster

This section lists the available versions of the package cudaon the UMD HPC clusters.

Versions available on the Zaratan cluster

Version Module tags CPU(s) optimized for GPU ready?
10.2.89 10.2.89 zen Yes
11.6.2 11.6.2 zen2 Yes
12.3.0 12.3.0 icelake, x86_64, zen2 Yes



NVIDIA Drivers and Versions

The versions listed above are the versions of the CUDA libraries installed in the Research Software Library for the relevant cluster. The GPU-enabled nodes also have the relevant GPU drivers installed, which are versioned differently, but the drivers installed on the GPU-enabled nodes support at least the specified versions of CUDA. You are free to install newer versions of the CUDA libraries for personal use in directories you have write access to (e.g. your home or scratch directories), up to the latest versions supported by the GPU drivers installed on the GPU nodes. You will not be able to change the version of the installed GPU drivers.

The GPU-enabled nodes on Zaratan currently are running:

Cluster Driver Version Lastest CUDA Version supported by driver
Zaratan NVIDIA Driver 560.28.03 CUDA 12.6

Note on using CUDA

The nvcc compiler can compiler source files with the CUDA language extensions. It also contains CUDA implementation of BLAS and FFT libraries, as well as some data parallel primitives. See the Wikipedia article on CUDA for general information, or the NIVIDA CUDA documentation for detailed instructions.

Notes on using OpenCL

OpenCL is a framework for writing programs to execute across CPUs and various other devices (including GPUs). See the Wikipedia articule on OpenCL for more information.

The nvcc compiler will support OpenCL as well. You code should include the opencl.h header file, e.g. include <CL/opencl.g> and you should compile it with something like nvcc -lOpenCL mycode.c