microsoft / microsoft/onnxruntime

[Feature Request] Making the cuda version explicit in the python package name

Open
#19,438 2 comments 0 reactions 0 assignees View on GitHub
ep:CUDA feature request
Dominant language
C++
Stars
21.9k
Forks
4.2k
Avg merge
4d 11h
Merged PRs (30d)
184

Description

### Describe the feature request

Onnxruntime-gpu packages can support either CUDA 11 or CUDA 12
As described in the documentation [here](https://onnxruntime.ai/docs/install/#python-installs) one needs to choose different
python packages index urls to choose which version of CUDA is supported.

Given a version number we do not know which CUDA version is supported unless we know what package index url was used to do the install, which does not seems ideal in term of handling python dependencies in complex engineering systems. This is for example making thing very complicated when using a private python package repository with a mechanism that caches wheels from upstream feeds. In this case we cannot have both packages (the one for cuda11 and cuda12) in the cache because they have the same name.

In comparison CuPy uses package naming convention where the CUDA version is explicitly as part of the package name (cupy-cuda12x, cupy-cuda11x). This make things much more convenient.

Could potentially the same be done for `onnxtuneime-gpu` i.e. could we use packages names `onnxtuneime-gpu-cuda11x` and `onnxtuneime-gpu-cuda12x` and have both on pypi.org ?
Or is the plan to stop supporting cuda11 altogether in future onnxruntime-gpu releases?

### Describe scenario use case

Caching onnxruntime-gpu wheels with cuda 11 and cuda 11 in a private packages feed.

Contributor guide

Open the contributing guide

Research direction

Start with the Python install documentation linked in the issue and compare its CUDA 11 and CUDA 12 package-index guidance with CuPy's package naming. Determine whether separate onnxruntime-gpu-cuda11x and onnxruntime-gpu-cuda12x packages are feasible; done means the naming and future CUDA 11 support decision are documented and agreed.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
release
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.