Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add project description #397

Open
wants to merge 3 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 3 additions & 4 deletions .github/workflows/build-and-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -158,10 +158,9 @@ jobs:
$CHOWN -R $(whoami) ${{ env.CUDA_BINDINGS_ARTIFACTS_DIR }}
ls -lahR ${{ env.CUDA_BINDINGS_ARTIFACTS_DIR }}
# TODO: enable this after NVIDIA/cuda-python#297 is resolved
# - name: Check cuda.bindings wheel
# run: |
# twine check ${{ env.CUDA_BINDINGS_ARTIFACTS_DIR }}/*.whl
- name: Check cuda.bindings wheel
run: |
twine check ${{ env.CUDA_BINDINGS_ARTIFACTS_DIR }}/*.whl
- name: Upload cuda.bindings build artifacts
uses: actions/upload-artifact@v4
Expand Down
6 changes: 6 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,3 +37,9 @@ The list of available interfaces are:
* CUDA Runtime
* NVRTC
* nvJitLink

## Supported Python Versions

All `cuda-python` subpackages follows [NEP 29](https://numpy.org/neps/nep-0029-deprecation_policy.html) for supported Python version guarantee.
vzhurba01 marked this conversation as resolved.
Show resolved Hide resolved

Before dropping support, an issue will be raised for an advanced notice.
26 changes: 26 additions & 0 deletions cuda_bindings/DESCRIPTION.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
*******************************************************
cuda.bindings: Low-level CUDA interfaces
*******************************************************

`cuda.bindings` is a standard set of low-level interfaces, providing full coverage of and access to the CUDA host APIs from Python. Checkout the [Overview](https://nvidia.github.io/cuda-python/cuda-bindings/latest/overview.html) for the workflow and performance results.

Installation
============

`cuda.bindings` can be installed from:

* PyPI
* Conda (conda-forge/nvidia channels)
* Source builds

Differences between these options are described in [Installation](https://nvidia.github.io/cuda-python/cuda-bindings/latest/install.html) documentation. Each package guarantees minor version compatibility.

Runtime Dependencies
====================

`cuda.bindings` is supported on all the same platforms as CUDA. Specific dependencies are as follows:

* Driver: Linux (450.80.02 or later) Windows (456.38 or later)
* CUDA Toolkit 12.x

Only the NVRTC and nvJitLink redistributable components are required from the CUDA Toolkit, which can be obtained via PyPI, Conda, or local installers (as described in the CUDA Toolkit [Windows](https://docs.nvidia.com/cuda/cuda-installation-guide-microsoft-windows/index.html) and [Linux](https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html) Installation Guides).
14 changes: 2 additions & 12 deletions cuda_bindings/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

## Installing

CUDA Python can be installed from:
`cuda.bindings` can be installed from:

* PyPI
* Conda (conda-forge/nvidia channels)
Expand All @@ -16,23 +16,13 @@ Differences between these options are described in [Installation](https://nvidia

## Runtime Dependencies

CUDA Python is supported on all platforms that CUDA is supported. Specific dependencies are as follows:
`cuda.bindings` is supported on all the same platforms as CUDA. Specific dependencies are as follows:

* Driver: Linux (450.80.02 or later) Windows (456.38 or later)
* CUDA Toolkit 12.x

Only the NVRTC and nvJitLink redistributable components are required from the CUDA Toolkit, which can be obtained via PyPI, Conda, or local installers (as described in the CUDA Toolkit [Windows](https://docs.nvidia.com/cuda/cuda-installation-guide-microsoft-windows/index.html) and [Linux](https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html) Installation Guides).

### Supported Python Versions

CUDA Python follows [NEP 29](https://numpy.org/neps/nep-0029-deprecation_policy.html) for supported Python version guarantee.

Before dropping support, an issue will be raised to look for feedback.

Source builds work for multiple Python versions, however pre-build PyPI and Conda packages are only provided for a subset:

* Python 3.9 to 3.12

## Developing

We use `pre-commit` to manage various tools to help development and ensure consistency.
Expand Down
6 changes: 5 additions & 1 deletion cuda_bindings/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,10 @@ classifiers = [
"Programming Language :: Python :: 3.12",
"Environment :: GPU :: NVIDIA CUDA",
]
dynamic = ["version"]
dynamic = [
"version",
"readme",
]
dependencies = [
"pywin32; sys_platform == 'win32'",
]
Expand All @@ -47,6 +50,7 @@ include = ["cuda*"]

[tool.setuptools.dynamic]
version = { attr = "cuda.bindings._version.__version__" }
readme = { file = ["DESCRIPTION.rst"], content-type = "text/x-rst" }

[tool.ruff]
line-length = 120
Expand Down
2 changes: 1 addition & 1 deletion cuda_core/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Currently under active development; see [the documentation](https://nvidia.githu

## Installing

TO build from source, just do:
To build from source, just do:
```shell
$ git clone https://github.com/NVIDIA/cuda-python
$ cd cuda-python/cuda_core # move to the directory where this README locates
Expand Down