Skip to content

Commit 4f89b60

Browse files
author
Evan Lezar
committed
Merge branch 'remove-experimental-runtime' into 'main'
Remove NVIDIA experimental runtime from toolkit container See merge request nvidia/container-toolkit/container-toolkit!238
2 parents 4ca8d41 + 0938576 commit 4f89b60

File tree

15 files changed

+31
-676
lines changed

15 files changed

+31
-676
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
* [libnvidia-container] Support OpenSSL 3 with the Encrypt/Decrypt library
2020

2121
* [toolkit-container] Bump CUDA base image version to 12.2.0.
22+
* [toolkit-container] Remove installation of nvidia-experimental runtime. This is superceded by the NVIDIA Container Runtime in CDI mode.
2223

2324
## v1.13.1
2425

build/container/Dockerfile.centos

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -26,11 +26,6 @@ FROM golang:${GOLANG_VERSION} as build
2626
# /artifacts/bin
2727
ARG GOPATH=/artifacts
2828

29-
# Install the experiemental nvidia-container-runtime
30-
# NOTE: This will be integrated into the nvidia-container-toolkit package / repo
31-
ARG NVIDIA_CONTAINER_RUNTIME_EXPERIMENTAL_VERSION=experimental
32-
RUN GOPATH=/artifacts go install github.com/NVIDIA/nvidia-container-toolkit/cmd/nvidia-container-runtime.experimental@${NVIDIA_CONTAINER_RUNTIME_EXPERIMENTAL_VERSION}
33-
3429
WORKDIR /build
3530
COPY . .
3631

build/container/Dockerfile.ubuntu

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -26,11 +26,6 @@ FROM golang:${GOLANG_VERSION} as build
2626
# /artifacts/bin
2727
ARG GOPATH=/artifacts
2828

29-
# Install the experiemental nvidia-container-runtime
30-
# NOTE: This will be integrated into the nvidia-container-toolkit package / repo
31-
ARG NVIDIA_CONTAINER_RUNTIME_EXPERIMENTAL_VERSION=experimental
32-
RUN GOPATH=/artifacts go install github.com/NVIDIA/nvidia-container-toolkit/cmd/nvidia-container-runtime.experimental@${NVIDIA_CONTAINER_RUNTIME_EXPERIMENTAL_VERSION}
33-
3429
WORKDIR /build
3530
COPY . .
3631

internal/config/config_test.go

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,6 @@ func TestGetConfig(t *testing.T) {
9696
"nvidia-container-cli.load-kmods = false",
9797
"nvidia-container-cli.ldconfig = \"/foo/bar/ldconfig\"",
9898
"nvidia-container-runtime.debug = \"/foo/bar\"",
99-
"nvidia-container-runtime.experimental = true",
10099
"nvidia-container-runtime.discover-mode = \"not-legacy\"",
101100
"nvidia-container-runtime.log-level = \"debug\"",
102101
"nvidia-container-runtime.runtimes = [\"/some/runtime\",]",
@@ -150,7 +149,6 @@ func TestGetConfig(t *testing.T) {
150149
"ldconfig = \"/foo/bar/ldconfig\"",
151150
"[nvidia-container-runtime]",
152151
"debug = \"/foo/bar\"",
153-
"experimental = true",
154152
"discover-mode = \"not-legacy\"",
155153
"log-level = \"debug\"",
156154
"runtimes = [\"/some/runtime\",]",

test/container/shared/run/nvidia/driver/usr/lib64/libnvidia-ml.so

Lines changed: 0 additions & 1 deletion
This file was deleted.

test/container/toolkit_test.sh

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -46,13 +46,6 @@ testing::toolkit::install() {
4646
test -e "${shared_dir}/usr/local/nvidia/toolkit/nvidia-container-runtime-hook.real"
4747
test -e "${shared_dir}/usr/local/nvidia/toolkit/nvidia-container-runtime.real"
4848

49-
test -e "${shared_dir}/usr/local/nvidia/toolkit/nvidia-container-runtime.experimental"
50-
test -e "${shared_dir}/usr/local/nvidia/toolkit/nvidia-container-runtime.experimental.real"
51-
52-
grep -q -E "nvidia driver modules are not yet loaded, invoking runc directly" "${shared_dir}/usr/local/nvidia/toolkit/nvidia-container-runtime.experimental"
53-
grep -q -E "exec runc \".@\"" "${shared_dir}/usr/local/nvidia/toolkit/nvidia-container-runtime.experimental"
54-
grep -q -E "LD_LIBRARY_PATH=/run/nvidia/driver/usr/lib64:\\\$LD_LIBRARY_PATH " "${shared_dir}/usr/local/nvidia/toolkit/nvidia-container-runtime.experimental"
55-
5649
test -e "${shared_dir}/usr/local/nvidia/toolkit/.config/nvidia-container-runtime/config.toml"
5750

5851
# Ensure that the config file has the required contents.

tools/container/README.md

Lines changed: 17 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -15,28 +15,23 @@ docker setup \
1515
/run/nvidia/toolkit
1616
```
1717

18-
Configure the `nvidia-container-runtime` as a docker runtime named `NAME`. If the `--runtime-name` flag is not specified, this runtime would be called `nvidia`. A runtime named `nvidia-experimental` will also be configured using the `nvidia-container-runtime.experimental` OCI-compliant runtime shim.
18+
Configure the `nvidia-container-runtime` as a docker runtime named `NAME`. If the `--runtime-name` flag is not specified, this runtime would be called `nvidia`.
1919

2020
Since `--set-as-default` is enabled by default, the specified runtime name will also be set as the default docker runtime. This can be disabled by explicityly specifying `--set-as-default=false`.
2121

22-
**Note**: If `--runtime-name` is specified as `nvidia-experimental` explicitly, the `nvidia-experimental` runtime will be configured as the default runtime, with the `nvidia` runtime still configured and available for use.
23-
2422
The following table describes the behaviour for different `--runtime-name` and `--set-as-default` flag combinations.
2523

2624
| Flags | Installed Runtimes | Default Runtime |
2725
|-------------------------------------------------------------|:--------------------------------|:----------------------|
28-
| **NONE SPECIFIED** | `nvidia`, `nvidia-experimental` | `nvidia` |
29-
| `--runtime-name nvidia` | `nvidia`, `nvidia-experimental` | `nvidia` |
30-
| `--runtime-name NAME` | `NAME`, `nvidia-experimental` | `NAME` |
31-
| `--runtime-name nvidia-experimental` | `nvidia`, `nvidia-experimental` | `nvidia-experimental` |
32-
| `--set-as-default` | `nvidia`, `nvidia-experimental` | `nvidia` |
33-
| `--set-as-default --runtime-name nvidia` | `nvidia`, `nvidia-experimental` | `nvidia` |
34-
| `--set-as-default --runtime-name NAME` | `NAME`, `nvidia-experimental` | `NAME` |
35-
| `--set-as-default --runtime-name nvidia-experimental` | `nvidia`, `nvidia-experimental` | `nvidia-experimental` |
36-
| `--set-as-default=false` | `nvidia`, `nvidia-experimental` | **NOT SET** |
37-
| `--set-as-default=false --runtime-name NAME` | `NAME`, `nvidia-experimental` | **NOT SET** |
38-
| `--set-as-default=false --runtime-name nvidia` | `nvidia`, `nvidia-experimental` | **NOT SET** |
39-
| `--set-as-default=false --runtime-name nvidia-experimental` | `nvidia`, `nvidia-experimental` | **NOT SET** |
26+
| **NONE SPECIFIED** | `nvidia` | `nvidia` |
27+
| `--runtime-name nvidia` | `nvidia` | `nvidia` |
28+
| `--runtime-name NAME` | `NAME` | `NAME` |
29+
| `--set-as-default` | `nvidia` | `nvidia` |
30+
| `--set-as-default --runtime-name nvidia` | `nvidia` | `nvidia` |
31+
| `--set-as-default --runtime-name NAME` | `NAME` | `NAME` |
32+
| `--set-as-default=false` | `nvidia` | **NOT SET** |
33+
| `--set-as-default=false --runtime-name NAME` | `NAME` | **NOT SET** |
34+
| `--set-as-default=false --runtime-name nvidia` | `nvidia` | **NOT SET** |
4035

4136
These combinations also hold for the environment variables that map to the command line flags: `DOCKER_RUNTIME_NAME`, `DOCKER_SET_AS_DEFAULT`.
4237

@@ -48,7 +43,7 @@ containerd setup \
4843
/run/nvidia/toolkit
4944
```
5045

51-
Configure the `nvidia-container-runtime` as a runtime class named `NAME`. If the `--runtime-class` flag is not specified, this runtime would be called `nvidia`. A runtime class named `nvidia-experimental` will also be configured using the `nvidia-container-runtime.experimental` OCI-compliant runtime shim.
46+
Configure the `nvidia-container-runtime` as a runtime class named `NAME`. If the `--runtime-class` flag is not specified, this runtime would be called `nvidia`.
5247

5348
Adding the `--set-as-default` flag as follows:
5449
```bash
@@ -59,19 +54,15 @@ containerd setup \
5954
```
6055
will set the runtime class `NAME` (or `nvidia` if not specified) as the default runtime class.
6156

62-
**Note**: If `--runtime-class` is specified as `nvidia-experimental` explicitly and `--set-as-default` is specified, the `nvidia-experimental` runtime will be configured as the default runtime class, with the `nvidia` runtime class still configured and available for use.
63-
6457
The following table describes the behaviour for different `--runtime-class` and `--set-as-default` flag combinations.
6558

6659
| Flags | Installed Runtime Classes | Default Runtime Class |
6760
|--------------------------------------------------------|:--------------------------------|:----------------------|
68-
| **NONE SPECIFIED** | `nvidia`, `nvidia-experimental` | **NOT SET** |
69-
| `--runtime-class NAME` | `NAME`, `nvidia-experimental` | **NOT SET** |
70-
| `--runtime-class nvidia` | `nvidia`, `nvidia-experimental` | **NOT SET** |
71-
| `--runtime-class nvidia-experimental` | `nvidia`, `nvidia-experimental` | **NOT SET** |
72-
| `--set-as-default` | `nvidia`, `nvidia-experimental` | `nvidia` |
73-
| `--set-as-default --runtime-class NAME` | `NAME`, `nvidia-experimental` | `NAME` |
74-
| `--set-as-default --runtime-class nvidia` | `nvidia`, `nvidia-experimental` | `nvidia` |
75-
| `--set-as-default --runtime-class nvidia-experimental` | `nvidia`, `nvidia-experimental` | `nvidia-experimental` |
61+
| **NONE SPECIFIED** | `nvidia` | **NOT SET** |
62+
| `--runtime-class NAME` | `NAME` | **NOT SET** |
63+
| `--runtime-class nvidia` | `nvidia` | **NOT SET** |
64+
| `--set-as-default` | `nvidia` | `nvidia` |
65+
| `--set-as-default --runtime-class NAME` | `NAME` | `NAME` |
66+
| `--set-as-default --runtime-class nvidia` | `nvidia` | `nvidia` |
7667

7768
These combinations also hold for the environment variables that map to the command line flags.

0 commit comments

Comments
 (0)