Skip to content

Commit 76d275b

Browse files
committed
List all tutorials and syllabi in the top-level README and document Brev instance and providers requirements.
1 parent 6930d69 commit 76d275b

File tree

7 files changed

+44
-16
lines changed

7 files changed

+44
-16
lines changed

README.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,17 @@ This repository is a home for open learning materials related to GPU computing.
44

55
The intention is to create a living project where documents, examples, best practices, optimizations, and new features can become both visible and accessible to users quickly and easily.
66

7+
## Tutorials and Syllabi
8+
9+
| Content | Docker Compose | Brev Instance | Brev Provider |
10+
|---------|----------------|---------------|---------------|
11+
| [CUDA C++ Tutorial](tutorials/cuda-cpp/README.md) | [docker-compose.yml](tutorials/cuda-cpp/brev/docker-compose.yml) | L40S, L4, or T4 | Crusoe or any other with Flexible Ports |
12+
| [Standard Parallelism Tutorial](tutorials/stdpar/README.md) | [docker-compose.yml](tutorials/stdpar/brev/docker-compose.yml) | 4xL4, 2xL4, 2xL40S, or 1x L40S | GCP, AWS, or any other with Flexible Ports and Linux 6.1.24+, 6.2.11+, or 6.3+ (for HMM) |
13+
| [Accelerated Python Tutorial](tutorials/accelerated-python/README.md) | [docker-compose.yml](tutorials/accelerated-python/brev/docker-compose.yml) | L40S, L4, or T4; 4xL4 or 2xL4 for distributed | Crusoe or any other with Flexible Ports |
14+
| [nvmath-python Tutorial](tutorials/nvmath-python/README.md) | [docker-compose.yml](tutorials/nvmath-python/brev/docker-compose.yml) | 4xL4, 2xL4, 2xL40S, or 1x L40S | Crusoe or any other with Flexible Ports |
15+
| [CUDA Python Tutorial - CuPy, cuDF, CCCL, & Kernels - 8 Hours](tutorials/accelerated-python/notebooks/syllabi/cuda_python__cupy_cudf_cccl_kernels__8_hours.ipynb) | [docker-compose.yml](https://github.com/NVIDIA/accelerated-computing-hub/blob/generated/main/tutorials/accelerated-python/notebooks/syllabi/cuda_python__cupy_cudf_cccl_kernels__8_hours__docker_compose.yml) | L40S, L4, or T4 | Crusoe or any other with Flexible Ports |
16+
| [CUDA Python Tutorial - cuda.core & CCCL - 2 Hours](tutorials/accelerated-python/notebooks/syllabi/cuda_python__cuda_core_cccl__2_hours.ipynb) | [docker-compose.yml](https://github.com/NVIDIA/accelerated-computing-hub/blob/generated/main/tutorials/accelerated-python/notebooks/syllabi/cuda_python__cuda_core_cccl__2_hours__docker_compose.yml) | L40S, L4, or T4 | Crusoe or any other with Flexible Ports |
17+
718
## License
819

920
All written materials (user guides, documentation, presentations) are subject to [Creative Commons CC BY-NC-SA 4.0](https://creativecommons.org/licenses/by-nc-sa/4.0/).

tutorials/accelerated-python/README.md

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,12 @@ This modular tutorial contains content on all things related to accelerated Pyth
55
- [Notebooks](./notebooks) containing lessons and exercises, intended for self-paced or instructor-led learning, which can be run on [NVIDIA Brev](https://brev.nvidia.com) or [Google Colab](https://colab.research.google.com).
66
- [Slides](./slides) containing the lecture content for the lessons.
77
- [Syllabi](./notebooks/syllabi) that select a subset of the notebooks for a particular learning objective.
8-
- [Docker Images](https://github.com/NVIDIA/accelerated-computing-hub/pkgs/container/accelerated-python-tutorial) and [Docker Compose files](./brev/docker-compose.yml) for creating Brev Launchables.
8+
- [Docker Images](https://github.com/NVIDIA/accelerated-computing-hub/pkgs/container/accelerated-python-tutorial) and [Docker Compose files](./brev/docker-compose.yml) for creating Brev Launchables or running locally.
9+
10+
Brev Launchables of this tutorial should use:
11+
- L40S, L4, or T4 instances (for non-distributed notebooks).
12+
- 4xL4 or 2xL4 instances (for distributed notebooks).
13+
- Crusoe or any other provider with Flexible Ports.
914

1015
## Syllabi
1116

tutorials/accelerated-python/notebooks/syllabi/cuda_python__cuda_core_cccl__2_hours.ipynb

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,9 @@
1717
"\n",
1818
"### Materials\n",
1919
"\n",
20-
"<table><tr>\n",
21-
"<td><a href=\"https://github.com/NVIDIA/accelerated-computing-hub/blob/generated/main/tutorials/accelerated-python/notebooks/syllabi/cuda_python__cuda_core_cccl__2_hours__docker_compose.yml\">Docker Compose for Brev Launchable</a></td>\n",
22-
"</tr></table>\n",
20+
"| Docker Compose | Brev Instance | Brev Provider |\n",
21+
"|----------------|---------------|---------------|\n",
22+
"| [Link](https://github.com/NVIDIA/accelerated-computing-hub/blob/generated/main/tutorials/accelerated-python/notebooks/syllabi/cuda_python__cuda_core_cccl__2_hours__docker_compose.yml) | L40S, L4, or T4 | Crusoe or any other with Flexible Ports |\n",
2323
"\n",
2424
"### Introduction\n",
2525
"\n",

tutorials/accelerated-python/notebooks/syllabi/cuda_python__cupy_cudf_cccl_kernels__8_hours.ipynb

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -22,11 +22,9 @@
2222
"\n",
2323
"### Materials\n",
2424
"\n",
25-
"<table><tr>\n",
26-
"<td><a href=\"https://github.com/NVIDIA/accelerated-computing-hub/raw/refs/heads/main/tutorials/accelerated-python/slides/cuda_python__cupy_cudf_kernels__8_hours__r5.pptx\">Slides (PPTX)</a></td>\n",
27-
"<td><a href=\"https://github.com/NVIDIA/accelerated-computing-hub/raw/refs/heads/main/tutorials/accelerated-python/slides/cuda_python__cupy_cudf_kernels__8_hours__r5.pdf\">Slides (PDF)</a></td>\n",
28-
"<td><a href=\"https://github.com/NVIDIA/accelerated-computing-hub/blob/generated/main/tutorials/accelerated-python/notebooks/syllabi/cuda_python__cupy_cudf_cccl_kernels__8_hours__docker_compose.yml\">Docker Compose for Brev Launchable</a></td>\n",
29-
"</tr></table>\n",
25+
"| Slides | Docker Compose | Brev Instance | Brev Provider |\n",
26+
"|--------|----------------|---------------|---------------|\n",
27+
"| [PPTX](https://github.com/NVIDIA/accelerated-computing-hub/raw/refs/heads/main/tutorials/accelerated-python/slides/cuda_python__cupy_cudf_kernels__8_hours__r5.pptx), [PDF](https://github.com/NVIDIA/accelerated-computing-hub/raw/refs/heads/main/tutorials/accelerated-python/slides/cuda_python__cupy_cudf_kernels__8_hours__r5.pdf) | [Link](https://github.com/NVIDIA/accelerated-computing-hub/blob/generated/main/tutorials/accelerated-python/notebooks/syllabi/cuda_python__cupy_cudf_cccl_kernels__8_hours__docker_compose.yml) | L40S, L4, or T4 | Crusoe or any other with Flexible Ports |\n",
3028
"\n",
3129
"### Introduction\n",
3230
"\n",

tutorials/cuda-cpp/README.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,11 @@ following content:
55

66
- [Notebooks](./notebooks) containing lessons and exercises, intended for self-paced or instructor-led learning, which can be run on [NVIDIA Brev](https://brev.nvidia.com) or [Google Colab](https://colab.research.google.com).
77
- [Slides](./slides) containing the lecture content for the lessons.
8-
- [Docker Images](https://github.com/NVIDIA/accelerated-computing-hub/pkgs/container/cuda-cpp-tutorial) and [Docker Compose files](./brev/docker-compose.yml) for creating Brev Launchables.
8+
- [Docker Images](https://github.com/NVIDIA/accelerated-computing-hub/pkgs/container/cuda-cpp-tutorial) and [Docker Compose files](./brev/docker-compose.yml) for creating Brev Launchables or running locally.
9+
10+
Brev Launchables of this tutorial should use:
11+
- L40S, L4, or T4 instances.
12+
- Crusoe or any other provider with Flexible Ports.
913

1014
## Notebooks
1115

tutorials/nvmath-python/README.md

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,12 @@ nvmath-python is designed to provide high-performance mathematical operations th
1010

1111
These notebooks can be run on [NVIDIA Brev](https://brev.nvidia.com) or [Google Colab](https://colab.research.google.com).
1212

13+
There are [Docker Images](https://github.com/NVIDIA/accelerated-computing-hub/pkgs/container/nvmath-python-tutorial) and [Docker Compose files](./brev/docker-compose.yml) for creating Brev Launchables or running locally.
14+
15+
Brev Launchables of this tutorial should use:
16+
- 4xL4, 2xL4, 2xL40S, or 1x L40S instances.
17+
- Crusoe or any other provider with Flexible Ports.
18+
1319
## Prerequisites
1420

1521
To use these notebooks, you will need:
@@ -53,13 +59,13 @@ Please refer to the [nvmath-python documentation](https://docs.nvidia.com/cuda/n
5359
**Key Topics:**
5460
- Understanding memory and execution spaces in nvmath-python
5561
- Flexibility of working with both CPU and GPU memory
56-
- Difference between specialized APIs and generic APIs
62+
- Difference between specialized APIs and generic APIs
5763
- Performance implications of data transfers between memory spaces
5864
- Using nvmath-python's logging mechanism to understand internal operations
5965

6066
**Key Insights:**
6167
- Memory space (where data is stored) and execution space (where computation happens) may differ
62-
- Specialized APIs like `matmul` only support GPU execution, triggering expensive automatic data transfers for CPU inputs
68+
- Specialized APIs like `matmul` only support GPU execution, triggering expensive automatic data transfers for CPU inputs
6369
- Generic APIs like FFT adapt to input location, executing on CPU for CPU inputs and GPU for GPU inputs
6470
- Logging provides visibility into specification, planning, and execution phases
6571

@@ -76,8 +82,8 @@ Please refer to the [nvmath-python documentation](https://docs.nvidia.com/cuda/n
7682

7783
**Key Insights:**
7884
- Stateless API is convenient for single operations but repeats specification/planning for each call
79-
- Stateful API allows specification and planning once, then multiple executions
80-
- Autotuning finds optimal kernels when built-in heuristics are suboptimal
85+
- Stateful API allows specification and planning once, then multiple executions
86+
- Autotuning finds optimal kernels when built-in heuristics are suboptimal
8187
- Critical for scenarios with repeated operations on similar-shaped data
8288

8389
---
@@ -96,7 +102,7 @@ Please refer to the [nvmath-python documentation](https://docs.nvidia.com/cuda/n
96102
- Callbacks enable custom element-wise operations fused with FFT kernels
97103
- JIT compilation overhead is one-time cost that can be amortized
98104
- For single images, CuPy may be faster due to nvmath-python's compilation overhead
99-
- For large enough batches amortization makes stateful API a preferred choice
105+
- For large enough batches amortization makes stateful API a preferred choice
100106

101107
---
102108

tutorials/stdpar/README.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,11 @@ This tutorial teaches you how to accelerate portable HPC applications with CPUs
44

55
- [Notebooks](./notebooks) containing lessons and exercises, intended for self-paced or instructor-led learning, which can be run on [NVIDIA Brev](https://brev.nvidia.com) or [Google Colab](https://colab.research.google.com).
66
- [Slides](./slides) containing the lecture content for the lessons.
7-
- [Docker Images](https://github.com/NVIDIA/accelerated-computing-hub/pkgs/container/stdpar-tutorial) and [Docker Compose files](./brev/docker-compose.yml) for creating Brev Launchables.
7+
- [Docker Images](https://github.com/NVIDIA/accelerated-computing-hub/pkgs/container/stdpar-tutorial) and [Docker Compose files](./brev/docker-compose.yml) for creating Brev Launchables or running locally.
8+
9+
Brev Launchables of this tutorial should use:
10+
- 4xL4, 2xL4, 2xL40S, or 1x L40S instances.
11+
- GCP, AWS, or any other with Flexible Ports and Linux 6.1.24+, 6.2.11+, or 6.3+ (for HMM).
812

913
## Notebooks
1014

0 commit comments

Comments
 (0)