Hi everyone,
I’m trying to get PhysX GPU acceleration working on the new NVIDIA DGX Spark (ARM64 Grace CPU + GB10 Blackwell GPU) with Isaac Sim built from source, but it seems to be stuck in CPU-only mode despite all my attempts to enable it.
Setup
- Platform: NVIDIA DGX Spark
- CPU: ARM Grace (20 cores, aarch64)
- GPU: NVIDIA GB10 Blackwell (sm_121, 93GB VRAM)
- OS: Ubuntu 24.04.4 LTS
- Driver: 580.126.09
- CUDA: 13.0
- Isaac Sim: 5.1.0-rc.19 (built from source with
./build.sh) - PhysX SDK: 5.6.1.f9c67de2-release-107.3-linux-aarch64
The Problem
When running physics simulations (even simple falling boxes), my GPU shows 0% utilization and only 9W power draw. It’s clearly using CPU-only PhysX. I’m running benchmarks for my internship at TU/e Supercomputing Centre and need to compare Isaac Sim performance across different HPC systems.
What I’ve Tried
1. Explicitly enabling GPU physics in code:
settings = carb.settings.get_settings()
settings.set("/physics/cudaDevice", 0)
settings.set("/physics/cudaEnabled", True)
settings.set("/physics/gpuDynamics", True)
settings.set("/physics/gpuCollision", True)
settings.set("/physics/broadPhaseType", "GPU")
The settings report back as enabled (True), but GPU still shows 0% usage.
2. Found PhysX GPU libraries in packman cache:
~/.cache/packman/chk/physxsdk/5.6.1.f9c67de2-release-107.3-linux-aarch64/bin/linux.aarch64/checked/libPhysXGpu_64.so (386 MB)
~/.cache/packman/chk/physxsdk/5.6.1.f9c67de2-release-107.3-linux-aarch64/bin/linux.aarch64/debug/libPhysXGpu_64.so (586 MB)
3. Created symlink to release directory and set LD_LIBRARY_PATH:
mkdir -p ~/.cache/packman/chk/physxsdk/5.6.1.f9c67de2-release-107.3-linux-aarch64/bin/linux.aarch64/release/
ln -s ../checked/libPhysXGpu_64.so ~/.cache/packman/chk/physxsdk/.../release/libPhysXGpu_64.so
export LD_LIBRARY_PATH=~/.cache/packman/chk/physxsdk/.../release:$LD_LIBRARY_PATH
4. Verified with nvidia-smi during simulation:
GPU Util: 0%
Power: 9W (idle)
Clock: 2411 MHz (not boosting)
Benchmark Results
Performance is identical whether I enable GPU physics or not:
| Rigid Bodies | FPS | Real-Time Factor | GPU Usage |
|---|---|---|---|
| 500 boxes | 85 | 1.42x | 0% ❌ |
| 1000 boxes | 37 | 0.62x | 0% ❌ |
| 2000 boxes | 15 | 0.25x | 0% ❌ |
This suggests PhysX is falling back to CPU regardless of settings.
My Questions
-
Does PhysX GPU support GB10 Blackwell (sm_121) on ARM64? The GB10 has compute capability 12.1, which might be too new for PhysX SDK 5.6.1?
-
Is GPU physics expected to work on DGX Spark? Or is ARM64 + Blackwell currently unsupported?
-
Am I missing something obvious? Is there a different way to enable GPU physics on ARM64 vs x86_64?
-
Any workarounds? Should I wait for a newer PhysX SDK or Isaac Sim release?
Why This Matters
I’m benchmarking the DGX Spark against a other AI supercomputer and need to establish fair Isaac Sim performance metrics. If GPU physics doesn’t work on DGX Spark, I need to know if it’s a configuration issue or a platform limitation so I can adjust my benchmarking approach.
Any help would be greatly appreciated! Has anyone successfully enabled PhysX GPU on DGX Spark or similar ARM64 Blackwell systems?
Thanks in advance!
System Info:
- DGX Spark (Grace + GB10)
- Isaac Sim 5.1.0-rc.19 source build
- PhysX SDK 5.6.1 (ARM64)
- Driver 580.126.09, CUDA 13.0
