NVIDIA
NVIDIA
NVIDIA HPC SDK
Container
NVIDIA
NVIDIA
NVIDIA HPC SDK

The NVIDIA HPC SDK is a comprehensive suite of compilers, libraries and tools essential to maximizing developer productivity and the performance and portability of HPC applications.

By using this container image, you agree to the NVIDIA HPC SDK End-User License Agreement

NVIDIA HPC SDK

The NVIDIA HPC SDK is a comprehensive suite of compilers, libraries and tools essential to maximizing developer productivity and the performance and portability of HPC applications. The NVIDIA HPC SDK C, C++, and Fortran compilers support GPU acceleration of HPC modeling and simulation applications with standard C++ and Fortran, OpenACC directives, and CUDA. GPU-accelerated math libraries maximize performance on common HPC algorithms, and optimized communications libraries enable standards-based multi-GPU and scalable systems programming. Performance profiling and debugging tools simplify porting and optimization of HPC applications, and containerization tools enable easy deployment on-premises or in the cloud.

Key features of the NVIDIA HPC SDK for Linux include:

  • Support for NVIDIA Blackwell architecture GPUs
  • Support for NVIDIA Hopper architecture GPUs
  • Support for NVIDIA Ampere Architecture GPUs with FP16, TF32 and FP64 tensor cores and MIG
  • Supported on CUDA 13.1,13.0, 12.9, 12.8, 12.6, 12.5, 12.4, 12.3, 12.2, 12.1, and 12.0
  • Support for x86-64 and Arm Server multicore CPUs
  • NVC++ ISO C++17 compiler with Parallel Algorithms acceleration on GPUs, OpenACC and OpenMP
  • NVFORTRAN ISO Fortran 2003 compiler with array intrinsics acceleration on GPUs, CUDA Fortran, OpenACC and OpenMP
  • NVC ISO C11 compiler with OpenACC and OpenMP
  • NVCC NVIDIA CUDA C++ compiler
  • cuBLAS GPU-accelerated basic linear algebra subroutine (BLAS) library
  • cuBLASMp multi-process, GPU-accelerated library for distributed basic dense linear algebra
  • cuSOLVER GPU-accelerated dense and sparse direct solvers
  • cuSOLVERMp multi-process, distributed-memory GPU-accelerated library for dense linear systems and eigenvalue problems
  • cuSPARSE GPU-accelerated BLAS for sparse matrices
  • cuFFT GPU-accelerated library for Fast Fourier Transforms
  • cuFFTMp multi-node, multi-process, GPU-accelerated extension to cuFFT for Fast Fourier Transforms
  • cuTENSOR GPU-accelerated tensor linear algebra library
  • cuRAND GPU-accelerated random number generation (RNG)
  • NVIDIA Performance Libraries (NVPL) for HPC math operations on NVIDIA CPUs
  • Thrust GPU-accelerated library of C++ parallel algorithms and data structures
  • CUB cooperative threadblock primitives and utilities for CUDA kernel programming
  • libcu++ opt-in heterogeneous CUDA C++ Standard Library for NVCC
  • NCCL library for fast multi-GPU/multi-node collective communications
  • NVSHMEM library for fast GPU memory-to-memory transfers (OpenSHMEM compatible)
  • HPC-X GPU-aware message passing interface library
  • NVIDIA Nsight Systems interactive HPC applications performance profiler
  • NVIDIA Nsight Compute interactive GPU compute kernel performance profiler

System Requirements

Before running the NVIDIA HPC SDK NGC container, please ensure that your system meets the following requirements.

  • Turing (sm75), Ampere (sm80), Hopper (sm90), or Blackwell (sm100) NVIDIA GPU(s)
  • CUDA driver version >= 525.60.13
  • Docker 19.03 or later which includes support for the --gpus option, or Singularity version 3.4.1 or later
  • For older Docker versions, use nvidia-docker >= 2.0.3

When using the "cuda_multi" images, the NVIDIA HPC SDK will automatically choose among CUDA versions 12.9 or 13.1 based on your installed driver. See the NVIDIA HPC SDK User's Guide for more information on using different CUDA Toolkit versions.

Multiarch containers for Arm (aarch64) and x86_64 are available for select tags starting with version 21.7.

Running the NVIDIA HPC SDK

Please see the NVIDIA HPC SDK User's Guide for getting started with the HPC SDK.

Refer to the HPC SDK Container Guide for more information on how to use the HPC SDK containers.

For a general guide on pulling and running containers, see Pulling A Container image and Running A Container in the NGC Container User Guide.

Resources

NVIDIA uses cookies to improve your experience on our web site. We and our third-party partners also use cookies and other tools to collect and record information you provide as well as information about your interactions with our websites for performance improvement, analytics, and to assist in marketing efforts. By clicking "Accept All", you consent to our use of cookies and other tools as described in our Cookie Policy. You can manage your cookie settings by clicking on "Manage Settings." By continuing to use this site or by clicking one of the buttons below, you agree to our Terms of Service (which contains important waivers). Please see our Privacy Policy for more information on our privacy practices.