Skip to main content

onnxruntime-gpu-extended-auto

pip install onnxruntime-gpu-extended-auto

That is the whole thing. It looks at which CUDA and cuDNN are installed on the machine you are running pip on, then pulls the matching onnxruntime-gpu-extended build.

Why this exists

A wheel filename can say "Python 3.12, aarch64, glibc 2.34". It cannot say "cuDNN 8" or "cuDNN 9". Both JetPack 6.0 and JetPack 6.2 produce the exact same tag, cp312-cp312-manylinux_2_34_aarch64, so PyPI has no way to hand each one a different file. An onnxruntime built against cuDNN 8 will not load on cuDNN 9, and vice versa.

This package resolves that at install time instead.

Published versions are <onnxruntime version>.<cuda major>.<cudnn major>, so the ABI that the filename cannot express lives in the version number instead.

Detected Installs
CUDA 12 / cuDNN 8 (JetPack 6.0, L4T r36.3) onnxruntime-gpu-extended==1.22.2.12.8
CUDA 12 / cuDNN 9 (JetPack 6.1 / 6.2, L4T r36.4) onnxruntime-gpu-extended==1.23.2.12.9
anything not aarch64 onnxruntime-gpu

Check what you have with head -1 /etc/nv_tegra_release.

Jetson is the only platform upstream never shipped CUDA wheels for, so on x86_64 this hands you the normal onnxruntime-gpu and gets out of the way. It is safe to depend on from a project that runs on both.

Install it on the device

Detection reads the machine running pip. Building a lockfile or a container image on one JetPack and deploying to another will bake in the wrong choice.

pip caches the wheel it builds from this package, keyed on the source archive rather than on the machine. After upgrading JetPack on a box, reinstall with --no-cache-dir so detection runs again.

To pick explicitly instead of detecting:

ORT_GPU_EXTENDED_VARIANT='onnxruntime-gpu-extended==1.23.2.12.9' pip install onnxruntime-gpu-extended-auto

The same variable is how this package's own source archive gets built off-device, since detection otherwise refuses to run on an aarch64 machine without CUDA.

Verify

import onnxruntime
print(onnxruntime.get_available_providers())

get_available_providers() lists what was compiled in, not what loads. To prove CUDA actually works, build a session and ask it:

session = onnxruntime.InferenceSession("model.onnx", providers=["CUDAExecutionProvider"])
print(session.get_providers())

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

onnxruntime_gpu_extended_auto-1.23.2.tar.gz (4.7 kB view details)

Uploaded Source

File details

Details for the file onnxruntime_gpu_extended_auto-1.23.2.tar.gz.

File metadata

File hashes

Hashes for onnxruntime_gpu_extended_auto-1.23.2.tar.gz
Algorithm Hash digest
SHA256 48735288c93fe83776ee94da677e11edab604d43e3adc53d7887c957172e72f0
MD5 9537d603cdf8c4addb91e1c0dd646b45
BLAKE2b-256 7b003123794f1bb966933cf31456f88681e3103511a2752522a90e7604343d97

See more details on using hashes here.

Release history Release notifications | RSS feed

1.23.3

1 file

This release

1.23.2 This release

1 file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page