GPU Compatibility - OS, Drivers, and CUDA
How GPU compatibility works across CUDA and driver versions, with recommended configurations by GPU type.
This guide explains how GPU compatibility works across CUDA versions and driver versions, and provides recommended configurations within Hyperstack, including guidance for specific GPU types.
Hyperstack offers virtual machine images that are pre-configured with validated NVIDIA drivers, CUDA versions, and kernel combinations to ensure optimal performance and stability.
Modifying GPU drivers or CUDA versions is outside the scope of Hyperstack support under the shared responsibility model. Incorrect installation or configuration may result in degraded performance, GPU detection failures, or system instability.
We strongly recommend using pre-configured images unless you have a specific, advanced requirement.
Understanding GPU, CUDA, and driver compatibility
GPU compatibility is determined by the relationship between CUDA versions and driver versions, rather than the GPU model itself. Each CUDA version requires a minimum driver version to function correctly, and using an incompatible combination can result in features not working or the GPU not being detected.
In practice, this means that compatibility is driven by the CUDA version you intend to use, with the driver needing to meet or exceed the required version for that CUDA release.
In practice:
- Drivers are backward compatible, meaning newer drivers support older CUDA versions
- The CUDA version you plan to use defines the minimum driver version required
This means that selecting the correct driver starts with choosing your target CUDA version.
For more details, see the official GPU compatibility documentation:
Supported operating systems and CUDA versions
Hyperstack provides pre-configured VM images with validated NVIDIA drivers and CUDA versions. We recommend using these images instead of manual installation.
Currently available configurations include:
- Ubuntu 22.04 — R535 with CUDA 12.2
- Ubuntu 22.04 — R550 with CUDA 12.4
- Ubuntu 22.04 — R570 with CUDA 12.8
- Ubuntu 24.04 — R570 with CUDA 12.8
- Ubuntu 24.04, R595 with CUDA 13.2 (with Docker; required for the B300)
Variants are also available with Docker pre-installed.
See the full list of images:
NVIDIA driver compatibility by CUDA version
Use the following guidelines when selecting a driver:
| CUDA Version | Compatible NVIDIA Driver Versions |
|---|---|
| CUDA 12.x | >= 525 and < 580 |
| CUDA 13.x | >= 580 |
These requirements follow the GPU compatibility model. In general, using the latest available production driver is recommended.
GPU-specific considerations (H100, H200)
For the H100 and H200 GPUs, the following recommendations apply:
- Minimum recommended CUDA version: 12.x
- Recommended driver:
- H100: R535 or newer
- H200: R550 or newer
While both GPUs are compatible with similar driver ranges, H200 is newer hardware and benefits from more recent driver versions for optimal performance and stability.
For best results, use Hyperstack-provided images with pre-validated configurations.
GPU-specific considerations (B300)
The only image the B300 flavor can be deployed with is:
This image pairs driver R595 with CUDA 13.2, which meets the >= 580 driver requirement for CUDA 13.x.
B300 VMs take longer to deploy than other flavors. A B300 VM can report ACTIVE before the image has finished booting, and full boot can take more than an hour before the VM becomes reachable.
Nvidia GPU driver best practices
Modifying GPU drivers or CUDA versions is outside the scope of Hyperstack support under the shared responsibility model. Incorrect installation or configuration may result in degraded performance or GPU detection issues. Use pre-configured images whenever possible.
When installing Nvidia drivers, follow these best practices:
- Use the latest NVIDIA driver version compatible with your target CUDA version.
- Automate the driver installation process to ensure consistency.
- Validate configurations in a test environment before production use.
- Include error handling and logging in installation scripts.
- Ensure required dependencies (e.g., kernel headers, build tools) are installed.
For more information on configuring virtual machines, see the Initialization Configuration documentation.
Automatically install Nvidia drivers on VM initialization
Modifying GPU drivers or CUDA versions is outside the scope of Hyperstack support under the shared responsibility model. Incorrect installation or configuration may result in degraded performance or GPU detection issues. Use pre-configured images whenever possible.
To automatically install Nvidia drivers on Linux-based virtual machines:
Include the following cloud-init script within the user_data field of the request body when creating a new virtual machine using the Hyperstack API.
#cloud-config
write_files:
- path: /tmp/download_and_run_script_nvidia.sh
permissions: '0755'
content: |
#!/bin/bash
set -e
SCRIPT_URL="https://api.nexgencloud.com:8080/public/nvidia/installer_script_main.sh"
SCRIPT_NAME=$(basename "${SCRIPT_URL}")
if command -v wget >/dev/null 2>&1; then
wget -O "/tmp/${SCRIPT_NAME}" "${SCRIPT_URL}"
else
curl -o "/tmp/${SCRIPT_NAME}" "${SCRIPT_URL}"
fi
chmod +x "/tmp/${SCRIPT_NAME}"
/tmp/${SCRIPT_NAME}
runcmd:
- /tmp/download_and_run_script_nvidia.sh
- [ shutdown, -r, now ]
CUDA installation by operating system
Modifying GPU drivers or CUDA versions is outside the scope of Hyperstack support under the shared responsibility model. Incorrect installation or configuration may result in degraded performance or GPU detection issues. Prefer pre-configured images.
Ubuntu 22.04
#cloud-config
runcmd:
- 'wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.0-1_all.deb'
- 'sudo dpkg -i cuda-keyring_1.0-1_all.deb'
- 'sudo apt-get update'
- 'sudo apt-get -y install cuda'
Ubuntu 24.04
#cloud-config
runcmd:
- 'wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2404/x86_64/cuda-keyring_1.0-1_all.deb'
- 'sudo dpkg -i cuda-keyring_1.0-1_all.deb'
- 'sudo apt-get update'
- 'sudo apt-get -y install cuda'
We recommend rebooting the virtual machine once the driver is installed.