Skip to Content
GuidesUbuntu NVIDIA GPU workstation evaluation

Ubuntu NVIDIA GPU workstation evaluation

This guide prepares an Ubuntu 24.04 workstation recipe for NVIDIA tooling. The normal KVM test guest may have no NVIDIA device, so package and configuration checks are not physical GPU qualification.

Prompt

Create an Ubuntu 24.04 GNOME workstation for NVIDIA compute evaluation. Include the gpu-nvidia, cuda, docker, Python, Git, SSH, and Jupyter features. Do not choose “latest”; show the exact driver, CUDA toolkit, container runtime, repositories, signing keys, and supported GPU architecture in the plan. Create a locked-password user named mldev. Add package and service tests for the VM, then list nvidia-smi, CUDA sample, container-GPU, suspend/resume, and workload tests that must run on the target workstation.

Recipe shape

{ "name": "ubuntu24-nvidia-workstation-evaluation", "base_image": "ubuntu-24.04", "hardware": { "platform": "pc", "architecture": "x86_64", "gpu": "nvidia", "min_cpu_cores": 8, "min_memory_gb": 32, "min_storage_gb": 128, "nic_count": 1 }, "os": { "features": [ "desktop", "gpu-nvidia", "cuda", "docker", "python", "git", "ssh", "jupyter" ], "users": [ { "username": "mldev", "groups": ["sudo", "docker"], "shell": "/bin/bash" } ], "desktop_settings": { "color_scheme": "prefer-dark", "power": { "idle_delay": 600, "sleep_inactive_ac_timeout": 0, "sleep_inactive_ac_type": "nothing" } } } }

The hardware block is declared intent. It does not make an NVIDIA device visible to the test VM. Review Docker-group privilege and do not expose Jupyter without authentication and network policy.

Compatibility review

Before building, record:

  • exact GPU model and compute capability;
  • kernel, NVIDIA driver, CUDA toolkit, and user-space library compatibility;
  • source repository and signing-key provenance;
  • Secure Boot/module-signing behavior if used;
  • display-GPU versus compute-only expectations; and
  • license and redistribution constraints for every proprietary component.

Evidence split

The virtual build can prove package inventory, executables, configuration files, desktop launch, and non-GPU services. Only the target hardware can prove:

  • nvidia-smi sees the intended device without errors;
  • a compiled CUDA sample produces the expected result;
  • a pinned container image runs with --gpus and sees the device;
  • thermals, power limits, suspend/resume, and reboot are stable; and
  • the real training or inference workload completes within its memory and performance requirements.

Retain both evidence sets and label them by environment. Do not report a working GPU stack from package presence alone.