Skip to content

Commit 25493b0

Browse files
committed
Consolidate shared info between README.md and DESCRIPTION.rst
1 parent 034ffbf commit 25493b0

File tree

7 files changed

+69
-61
lines changed

7 files changed

+69
-61
lines changed

CONTRIBUTING.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,3 +12,13 @@ Thank you for your interest in contributing to CUDA Python! Based on the type of
1212
- Please refer to each component's guideline:
1313
- [`cuda.core`](https://nvidia.github.io/cuda-python/cuda-core/latest/contribute.html)
1414
- [`cuda.bindings`](https://nvidia.github.io/cuda-python/cuda-bindings/latest/contribute.html)
15+
16+
## Code signing
17+
18+
This repository implements a security check to prevent the CI system from running untrusted code. A part of the
19+
security check consists of checking if the git commits are signed. See
20+
[here](https://docs.gha-runners.nvidia.com/apps/copy-pr-bot/faqs/#why-did-i-receive-a-comment-that-my-pull-request-requires-additional-validation)
21+
and
22+
[here](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification)
23+
for more details, including how to sign your commits.
24+
>>>>>>> 8de65e57 (Consolidate shared info between README.md and DESCRIPTION.rst)

cuda_bindings/DESCRIPTION.rst

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,12 @@
11
****************************************
2-
cuda.bindings: Low-level CUDA interfaces
2+
cuda-bindings: Low-level CUDA interfaces
33
****************************************
44

5-
`cuda.bindings` is a standard set of low-level interfaces, providing full coverage of and 1:1 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.
5+
`cuda.bindings <https://nvidia.github.io/cuda-python/cuda-bindings/>`_ is a standard set of low-level interfaces, providing full coverage of and 1:1 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.
6+
7+
* `Repository <https://github.com/NVIDIA/cuda-python/tree/main/cuda_bindings>`_
8+
* `Documentation <https://nvidia.github.io/cuda-python/cuda-bindings/>`_
9+
* `Examples <https://github.com/NVIDIA/cuda-python/tree/main/cuda_bindings/examples>`_
10+
* `Issue tracker <https://github.com/NVIDIA/cuda-python/issues/>`_
611

712
For the installation instruction, please refer to the `Installation <https://nvidia.github.io/cuda-python/cuda-bindings/latest/install.html>`_ page.

cuda_bindings/README.md

Lines changed: 1 addition & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -2,35 +2,13 @@
22

33
`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 page](https://nvidia.github.io/cuda-python/cuda-bindings/latest/overview.html) for the workflow and performance results.
44

5-
`cuda.bindings` is a subpackage of `cuda-python`.
6-
75
## Installing
86

97
Please refer to the [Installation page](https://nvidia.github.io/cuda-python/cuda-bindings/latest/install.html) for instructions and required/optional dependencies.
108

119
## Developing
1210

13-
We use `pre-commit` to manage various tools to help development and ensure consistency.
14-
```shell
15-
pip install pre-commit
16-
```
17-
18-
### Code linting
19-
20-
Run this command before checking in the code changes
21-
```shell
22-
pre-commit run -a --show-diff-on-failure
23-
```
24-
to ensure the code formatting is in line of the requirements (as listed in [`pyproject.toml`](./pyproject.toml)).
25-
26-
### Code signing
27-
28-
This repository implements a security check to prevent the CI system from running untrusted code. A part of the
29-
security check consists of checking if the git commits are signed. See
30-
[here](https://docs.gha-runners.nvidia.com/apps/copy-pr-bot/faqs/#why-did-i-receive-a-comment-that-my-pull-request-requires-additional-validation)
31-
and
32-
[here](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification)
33-
for more details, including how to sign your commits.
11+
This subpackage adheres to the developing practices described in the parent metapackage [CONTRIBUTING.md](https://github.com/NVIDIA/cuda-python/blob/main/CONTRIBUTING.md).
3412

3513
## Testing
3614

cuda_core/DESCRIPTION.rst

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,7 @@
22
cuda-core: Pythonic access to CUDA core functionalities
33
*******************************************************
44

5-
`cuda.core <https://nvidia.github.io/cuda-python/cuda-core/>`_ bridges Python's productivity
6-
with CUDA's performance through intuitive and pythonic APIs.
7-
The mission is to provide users full access to all of the core CUDA features in Python,
8-
such as runtime control, compiler and linker.
5+
`cuda.core <https://nvidia.github.io/cuda-python/cuda-core/>`_ bridges Python's productivity with CUDA's performance through intuitive and pythonic APIs. The mission is to provide users full access to all of the core CUDA features in Python, such as runtime control, compiler and linker.
96

107
* `Repository <https://github.com/NVIDIA/cuda-python/tree/main/cuda_core>`_
118
* `Documentation <https://nvidia.github.io/cuda-python/cuda-core/>`_
@@ -22,6 +19,4 @@ Installation
2219
2320
pip install cuda-core[cu12]
2421
25-
Please refer to the `installation instructions
26-
<https://nvidia.github.io/cuda-python/cuda-core/latest/install.html>`_ for different
27-
ways of installing `cuda.core`, including building from source.
22+
Please refer to the `installation instructions <https://nvidia.github.io/cuda-python/cuda-core/latest/install.html>`_ for different ways of installing `cuda.core`, including building from source.

cuda_core/README.md

Lines changed: 2 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -4,37 +4,11 @@ Currently under active development; see [the documentation](https://nvidia.githu
44

55
## Installing
66

7-
To build from source, just do:
8-
```shell
9-
$ git clone https://github.com/NVIDIA/cuda-python
10-
$ cd cuda-python/cuda_core # move to the directory where this README locates
11-
$ pip install .
12-
```
13-
For now `cuda-python` is a required dependency.
7+
Please refer to the [Installation page](https://nvidia.github.io/cuda-python/cuda-bindings/latest/install.html) for instructions and required/optional dependencies.
148

159
## Developing
1610

17-
We use `pre-commit` to manage various tools to help development and ensure consistency.
18-
```shell
19-
pip install pre-commit
20-
```
21-
22-
### Code linting
23-
24-
Run this command before checking in the code changes
25-
```shell
26-
pre-commit run -a --show-diff-on-failure
27-
```
28-
to ensure the code formatting is in line of the requirements (as listed in [`pyproject.toml`](./pyproject.toml)).
29-
30-
### Code signing
31-
32-
This repository implements a security check to prevent the CI system from running untrusted code. A part of the
33-
security check consists of checking if the git commits are signed. See
34-
[here](https://docs.gha-runners.nvidia.com/apps/copy-pr-bot/faqs/#why-did-i-receive-a-comment-that-my-pull-request-requires-additional-validation)
35-
and
36-
[here](https://docs.github.com/en/authentication/managing-commit-signature-verification/about-commit-signature-verification)
37-
for more details, including how to sign your commits.
11+
This subpackage adheres to the developing practices described in the parent metapackage [CONTRIBUTING.md](https://github.com/NVIDIA/cuda-python/blob/main/CONTRIBUTING.md).
3812

3913
## Testing
4014

cuda_python/DESCRIPTION.rst

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
**************************************************************
2+
cuda-python: Metapackage collection of CUDA Python subpackages
3+
**************************************************************
4+
5+
CUDA Python is the home for accessing NVIDIA's CUDA platform from Python. It consists of multiple components:
6+
7+
* `cuda.core <https://nvidia.github.io/cuda-python/cuda-core/latest>`_: Pythonic access to CUDA Runtime and other core functionalities
8+
* `cuda.bindings <https://nvidia.github.io/cuda-python/cuda-bindings/latest>`_: Low-level Python bindings to CUDA C APIs
9+
* `cuda.cooperative <https://nvidia.github.io/cccl/cuda_cooperative/>`_: A Python package providing CCCL's reusable block-wide and warp-wide *device* primitives for use within Numba CUDA kernels
10+
* `cuda.parallel <https://nvidia.github.io/cccl/cuda_parallel/>`_: A Python package for easy access to CCCL's highly efficient and customizable parallel algorithms, like `sort`, `scan`, `reduce`, `transform`, etc, that are callable on the *host*
11+
* `numba.cuda <https://nvidia.github.io/numba-cuda/>`_: Numba's target for CUDA GPU programming by directly compiling a restricted subset of Python code into CUDA kernels and device functions following the CUDA execution model.
12+
13+
For access to NVIDIA CPU & GPU Math Libraries, please refer to `nvmath-python <https://docs.nvidia.com/cuda/nvmath-python/latest>`_.
14+
15+
CUDA Python is currently undergoing an overhaul to improve existing and bring up new components. All of the previously available functionalities from the `cuda-python` package will continue to be available, please refer to the `cuda.bindings <https://nvidia.github.io/cuda-python/cuda-bindings/latest>`_ documentation for installation guide and further detail.
16+
17+
cuda-python as a metapackage
18+
============================
19+
20+
`cuda-python` is now a metapackage that contains a collection of subpackages. Each subpackage is versioned independently, allowing installation of each component as needed.
21+
22+
Subpackage: cuda.core
23+
---------------------
24+
25+
The `cuda.core` package offers idiomatic, pythonic access to CUDA Runtime and other functionalities.
26+
27+
The goals are to
28+
29+
1. Provide **idiomatic ("pythonic")** access to CUDA Driver, Runtime, and JIT compiler toolchain
30+
2. Focus on **developer productivity** by ensuring end-to-end CUDA development can be performed quickly and entirely in Python
31+
3. **Avoid homegrown** Python abstractions for CUDA for new Python GPU libraries starting from scratch
32+
4. **Ease** developer **burden of maintaining** and catching up with latest CUDA features
33+
5. **Flatten the learning curve** for current and future generations of CUDA developers
34+
35+
Subpackage: cuda.bindings
36+
-------------------------
37+
38+
The `cuda.bindings` package is a standard set of low-level interfaces, providing full coverage of and access to the CUDA host APIs from Python.
39+
40+
The list of available interfaces are:
41+
42+
* CUDA Driver
43+
* CUDA Runtime
44+
* NVRTC
45+
* nvJitLink
46+
* NVVM

cuda_python/pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ build-backend = "setuptools.build_meta"
99
[project]
1010
name = "cuda-python"
1111
description = "CUDA Python: Performance meets Productivity"
12-
readme = {file = "README.md", content-type = "text/markdown"}
12+
readme = {file = "DESCRIPTION.rst", content-type = "text/x-rst"}
1313
authors = [{name = "NVIDIA Corporation", email = "[email protected]"},]
1414
license = "LicenseRef-NVIDIA-SOFTWARE-LICENSE"
1515
classifiers = [

0 commit comments

Comments
 (0)