Available Benchmarks
SiliconMark supports various benchmarks for GPU performance testing.- QuickMark - Comprehensive single-node GPU compute and memory performance test
- Cluster Network - Multi-node network connectivity and bandwidth testing
- Inference Benchmark - Multi-engine LLM inference performance (NVIDIA and AMD, using vLLM)
- Llama 3 Inference - Single-node LLM inference performance using NVIDIA NIM
- Llama 3 Fine-Tuning - Single-node LLM fine-tuning performance using NVIDIA NeMo
QuickMark Benchmark
Overview
Configuration
No configuration required — uses defaults.Result Structure
Results include one entry per GPU intest_results and a combined aggregate_results. For single-GPU systems, aggregate_results mirrors the single GPU result.
Field Metadata
Cluster Network Benchmark
Overview
Result Structure
One measurement per directed node pair.Field Metadata
Inference Benchmark — vLLM
This benchmark measures LLM inference serving performance using vLLM. It supports both NVIDIA (CUDA) and AMD (ROCm) GPUs and runs without requiring an NGC API key.Overview
Configuration
Result Structure
Field Metadata
Llama 3 Inference — NIM
This benchmark measures LLM inference serving performance using NVIDIA NIM containers, driven by GenAI-Perf.Overview
Requirements
- NGC API Key: Required (set as
NGC_API_KEYenvironment variable) - Podman: Required to run NIM and GenAI-Perf containers
Configuration
Multiple configurations can be submitted in a single job run.
Result Structure
Each configuration produces aBenchmarkMetrics object. Each metric field contains a full statistical distribution.
avg, p25, p50, p75, p90, p95, p99, min, max, std.
Field Metadata
Llama 3 Fine-Tuning — NeMo
This benchmark measures LLM fine-tuning performance using NVIDIA’s NeMo framework with automatic memory-aware parallelism configuration.Overview
Configuration
Fixed Parameters
- Sequence Length: 4096 tokens
- Micro Batch Size: 1 (optimized for packed sequences)
- Training Data: Synthetic (SquadDataModule)
Requirements
Software Requirements
- NeMo Container:
nvcr.io/nvidia/nemo:25.11.01— downloaded automatically if not present - HuggingFace Token: Required (set as
HF_TOKENenvironment variable). Get your token from https://huggingface.co/settings/tokens - Docker: Required to run the NeMo container
- Disk Space:
- 8B model: ~75GB (55GB base + 20GB model)
- 70B model: ~205GB (55GB base + 150GB model)
- 405B model: ~905GB (55GB base + 850GB model)
Hardware Requirements
The benchmark automatically calculates memory requirements based on model configuration:
Minimum GPU requirements:
- 8B LoRA: 1× GPU with ≥16GB VRAM
- 8B full: 1× GPU with ≥24GB VRAM
- 70B: ≥2 GPUs
- 405B: ≥8 GPUs (FP8 + LoRA only)
Parallelism Strategy
The benchmark automatically calculates optimal parallelism using a memory-aware strategy:- Tensor Parallelism (TP) = smallest power of 2 such that
total_memory / TP ≤ gpu_memory - Data Parallelism (DP) =
total_gpus / TP - Global Batch Size (GBS) =
min(DP × 2, model_cap)— caps: 8B→64, 70B→32, 405B→16
Example Configurations
Result Structure
Metrics Calculation
- Tokens per Step =
global_batch_size × sequence_length - Tokens per Second =
tokens_per_step ÷ train_step_time_mean - Time to 1T Tokens =
10¹² ÷ (tokens_per_second × 86400)days - Step Time CV =
(train_step_time_std ÷ train_step_time_mean) × 100