Rerun CIQ's Spark Arena tests on your own DGX Spark
Image File
Original HTML

If your production servers run Enterprise Linux and your DGX Spark runs the DGX OS it shipped with, a prototype has to change operating systems on its way to production. Rocky Linux from CIQ Pro AI (RLC Pro AI) runs on both.

Your Spark and your production servers, Arm or x86, run the same RLC Pro AI, and production is a license change from Developer to Enterprise.

CIQ builds, validates, and signs the CIQ Linux Kernel (CLK) 6.18 and the NVIDIA driver. Both ship in RLC Pro AI's repositories, so you install them as one product instead of assembling them yourself.

The next question is how RLC Pro AI does on the Spark itself. CIQ ran Spark Arena's published recipe for three Qwen3.5-0.8B tests on a DGX Spark running RLC Pro AI 9.8. Here are the results and the recipe behind them, so you can rerun every test on your own.

See what CIQ's runs measured

CIQ ran each test 6 to 12 times on a DGX Spark set up with the steps in this post. The table puts the range of those runs beside the best result another DGX Spark owner has published for the same test, as of October 1, 2026:

Against those published results, CIQ's runs would place first on two of the three tests and second on the third. Each test has five published results from other DGX Spark owners.

Gather what you need

The setup takes a stock RLC Pro AI 9.8 install to a host that runs sparkrun, the harness Spark Arena uses. Each step ends with a check that must pass before you move to the next one. You need:

- An RLC Pro AI 9.8 host with an NVIDIA GPU, such as the DGX Spark CIQ used, and a free RLC Pro AI Developer license.

- A Depot user and token. Log in to the CIQ Portal to get your token, as described in the Depot documentation.

- Sudo access on the host, and time for one reboot.

0. Check your starting point

uname -r

nvidia-smi --query-gpu=name,driver_version --format=csv,noheader

Expect CLK 6.18.43-2.1.el9_clk as the default boot entry and the pinned 580 driver.

Start from a Server, Server with GUI, or Workstation install. A Minimal Install doesn't work as a starting point. The package group that carries CLK and the driver belongs only to those three environments, so a minimal host has neither, and nothing below applies.

1. Enable the RLC AI repositories

sudo depot login -u -t

sudo depot enable --yes rlc-ai-9

This enables clk-6.18-el9, rlc-9-ai, rlc-9-core, and rlc-9-supplemental. Step 2's CLK module build comes from clk-6.18-el9.

--yes runs the post-enable script, which disables the stock rocky*.repo files in favor of the rlc-ai-9 copies. The RLC Pro AI repository guide covers what each repository carries.

2. Switch the NVIDIA driver to 595

sudo dnf install --allowerasing --disableplugin=protected-kmods \

nvidia-dc-driver-latest-cuda kmod-nvidia-dc-open-latest

sudo systemctl reboot

The swap installs 8 packages at 595.71.05 and removes the 10 stock *580* packages. The removed packages include nvidia-dc-fabric-manager580 and nvidia-dc-imex580, which have no replacement in the -latest set.

Use nvidia-dc-driver-latest-cuda, not plain nvidia-dc-driver-latest. The plain package is the full display driver: it resolves to 40 packages and 167 MB and pulls in Xorg and Mesa.

Keep --disableplugin=protected-kmods on hosts that have dnf-plugin-protected-kmods installed. CIQ needed it there to complete this swap. On a host without that plugin, the flag does nothing.

Check after the reboot:

$ nvidia-smi --query-gpu=driver_version,persistence_mode --format=csv,noheader

595.71.05, Enabled

3. Install Docker Engine

These are Docker's published RHEL steps:

sudo dnf config-manager --add-repo https://download.docker.com/linux/rhel/docker-ce.repo

sudo dnf install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

sudo systemctl enable --now docker

sudo usermod -aG docker $USER

Log out and back in. docker ps must then work without sudo.

4. Install the NVIDIA container toolkit

Install it from the RLC repositories:

sudo dnf install nvidia-container-toolkit

sudo nvidia-ctk runtime configure --runtime=docker

sudo systemctl restart docker

This check, run as your normal user, exercises the driver, the runtime, and the toolkit together:

$ docker run --rm --gpus all rockylinux:9 nvidia-smi --query-gpu=driver_version --format=csv,noheader

595.71.05

5. Install uv and sparkrun

curl -LsSf https://astral.sh/uv/install.sh | sh

uv tool install sparkrun

This installs sparkrun and uvx into ~/.local/bin, which is on the default login PATH. You need uvx because sparkrun runs its benchmark client, llama-benchy, through it.

For repeatable numbers, let sparkrun drop the page cache before each launch. This command writes a sudoers rule limited to /proc/sys/vm/drop_caches, and it prompts for your sudo password:

sparkrun setup clear-cache --hosts localhost --save-sudo

Check what you installed

These are the versions installed on the DGX Spark; the benchmark numbers came from (NVIDIA GB10, aarch64):

Docker moves independently of RLC Pro AI. At the time of writing, an x86_64 host installing Docker gets docker-ce-29.8.2. The container toolkit is 1.19.1 on x86_64 and 1.19.0 on aarch64.

CIQ signs the driver, the kmod, and the container toolkit with its key, e8258450c7780912. You don't need the EPEL or CRB repositories.

See how CIQ verified these steps

CIQ ran steps 0 through 5 under KVM with Secure Boot enforcing, from both published starting points: the RLC Pro AI 9.8 qcow2 image and a Server install from the 9.8 DVD, each with a GPU passed through. Both produced identical results. The page-cache rule in step 5 is the exception: it prompts for a sudo password and there wasn't one on either test account. The example output in this post comes from the DGX Spark.

The aarch64 image carries the same kernel and driver packages. The Spark's installed set matches what these steps produce, plus kmod-nvidia-dc-open-peermem-latest-clk6.18-base, which these steps don't install.

One difference between the starting points: the qcow2 image arrives with /etc/yum.repos.d/depot-rlc-pro-9.repo and a registered rlc-pro-9 Depot product already enabled, before you run depot login. A DVD install doesn't.

Run the Spark Arena tests

Spark Arena publishes the recipe behind each entry: the serve command, defaults, environment, mods, and container. CIQ ran the published Qwen3.5-0.8B recipe with two changes:

curl -fsS -o qwen3.5-0.8b.yaml https://spark-arena.com/api/recipes/bf736380-8483-49ce-929d-96d817a48543/raw

sed -i 's/qwen3_coder \\$/qwen3_coder/' qwen3.5-0.8b.yaml

sparkrun benchmark qwen3.5-0.8b.yaml --hosts localhost \

--image ghcr.io/spark-arena/dgx-vllm-eugr-nightly:2026091001 \

--profile @official/spark-arena-v2 --output results.yaml

- The sed line removes a stray \ at the end of the recipe's serve command. sparkrun 0.3.10 can't handle it. The fix is merged but not yet released, so drop this line once a release includes it.

- --image pins the container CIQ ran, in place of the recipe's moving :latest tag, so your run uses the same build.

The @official/spark-arena-v2 profile applies Spark Arena's run rules, so each result cell lines up with a leaderboard column. The sparkrun benchmark reference lists the other options, including --fresh to discard state from an earlier run of the same recipe.

The results file reports every cell in the profile. These are the cells behind the three tests:

tg128 is 128 tokens of generation, d16384 is a 16K-token context, and c1 or c2 is the number of concurrent requests. You should run the benchmark more than once before you compare your results with the table.

Get RLC Pro AI for your Spark

Register for a free RLC Pro AI Developer license through the CIQ Portal, follow the steps above, and compare your numbers with CIQ's. When the work is ready for production, see what RLC Pro AI includes.

NVIDIA, DGX, and DGX Spark are trademarks of NVIDIA Corporation. All other trademarks are the property of their respective owners.

Class (B2B/B2C)
B2B
Ingest Status
Rewritten
Dedupe hash
df7105c405ecf88b61e781d803645bba
Press Eligible
Yes
Press Eligible Reason
QA FAIL (need review): TARGET incorrectly states the setup is done in 'five steps,' but SOURCE explicitly describes and validates 'steps 0 through 5' (six steps).
Source Name
CIQ
Original Summary

See how RLC Pro AI did on five Spark Arena tests on a NVIDIA DGX Spark, then set up the same host and rerun every test yourself, step by step.

Image URL
https://cdn.sanity.io/images/2fz41j18/production/ad5f2af252730352256162e8966e79cb3e528736-1366x854.png?w=1200&h=750&auto=format
Source Node
Content Hash (SHA-256, erste 32 hex)
68f67d122df2c29aa26d606bae47c3fb