-
Packages
+
RAPIDS Packages
+ x-bind:class="{'active': active_packages.includes(package), 'disabled': disableUnsupportedPackage(package)}"
+ class="option" x-html="getPackageHTML(package)">
+
Additional Packages
@@ -307,13 +298,21 @@
-
-
-
Image Options
-
-
+ class="option" x-text="type">
@@ -379,48 +361,36 @@
active_python_ver: "3.10",
active_cuda_ver: "11.8",
active_pip_cuda_ver: "12.0",
- active_os_ver: "Ubuntu 22.04",
active_method: "Conda",
active_release: "Stable",
- active_arch: "amd",
- active_img_type: "core",
+ active_img_type: "Base",
active_img_loc: "NGC",
active_packages: ["Standard"],
- active_img_options: ["notebooks"],
active_additional_packages: [],
// all possible values
python_vers: ["3.9", "3.10"],
- cuda_vers: ["11.2", "11.4", "11.5", "11.8", "12.0"],
+ cuda_vers: ["11.2", "11.8", "12.0"],
pip_cuda_vers: ["11.2 - 11.8", "12.0"],
- os_vers: ["Ubuntu 20.04", "Ubuntu 22.04", "CentOS 7", "Rocky Linux 8"],
- methods: ["Conda", "pip", "Docker", "Source"],
+ methods: ["Conda", "pip", "Docker"],
releases: ["Stable", "Nightly"],
- arches: ["amd", "arm"],
img_loc: ["NGC", "Dockerhub"],
- img_types: ["core", "standard"],
- packages: ["Standard", "cuDF", "cuML", "cuGraph", "cuSpatial", "cuXFilter", "cuSignal", "cuCIM"],
- pip_packages: ["cuDF", "dask-cuDF", "cuML", "cuGraph", "cuSpatial", "cuCIM"],
- additional_packages: ["Dask SQL", "JupyterLab", "Plotly Dash", "Graphistry", "PyCaret", "TensorFlow", "Xarray-Spatial"], // , "RTXpy" will return later
- img_options: ["notebooks", "development"],
+ img_types: ["Base", "Notebooks"],
+ packages: ["Standard", "Choose Specific Packages"],
+ additional_pip_packages: ["cuDF", "dask-cuDF", "cuML", "cuGraph", "cuSpatial/cuProj", "cuxfilter", "cuCIM"],
+ additional_rapids_packages: ["cuDF", "cuML", "cuGraph", "cuSpatial/cuProj", "cuxfilter", "cuSignal", "cuCIM"],
+ additional_packages: ["Dask-SQL", "JupyterLab", "Plotly Dash", "Graphistry", "TensorFlow", "Xarray-Spatial"],
note_prefix: "
",
- rapids_meta_pkgs: ["cuDF", "cuML", "cuGraph", "cuSpatial", "cuXFilter", "cuSignal", "cuCIM"],
+ rapids_meta_pkgs: ["cuDF", "cuML", "cuGraph", "cuSpatial", "cuProj", "cuxfilter", "cuSignal", "cuCIM"],
getStableVersion() {
return "{{ site.data.releases.stable.version }}";
},
getNightlyVersion() {
return "{{ site.data.releases.nightly.version }}";
},
- getOSHTML(os_ver) {
- var icon_class = "ubuntu"
- if (os_ver.includes("CentOS")) icon_class = "centos";
- if (os_ver.includes("Rocky Linux")) icon_class = "linux";
- return os_ver + "
";
- },
getMethodHTML(method) {
var icon_class = "box-open fas";
if (method.includes("Docker")) icon_class = "regular fa-container-storage";
- if (method.includes("Source")) icon_class = "cogs fas";
return method + "
";
},
getPackageHTML(pkg) {
@@ -436,12 +406,6 @@
if (release.includes("Nightly")) version = this.getNightlyVersion() + "a";
return release + " " + "(" + version + ")";
},
- getArchText(arch) {
- var text = "Arch not implemented yet!"
- if (arch === "amd") text = "x86-64";
- if (arch === "arm") text = "Arm Server (SBSA)";
- return text;
- },
highlightCmd(str) {
return "
" + str + ""
},
@@ -463,7 +427,7 @@
var dask_prefix = this.active_release === "Nightly" ? "dask/label/dev::" : "";
var pkg_names = {
"Plotly Dash": "dash",
- "Dask SQL": dask_prefix + "dask-sql"
+ "Dask-SQL": dask_prefix + "dask-sql"
}
return (pkg_names[pkg] || pkg).toLowerCase();
},
@@ -474,20 +438,30 @@
var python_version = this.active_python_ver;
var cuda_version = this.active_cuda_ver;
var pkgs = this.active_packages;
- var py_cuda_pkgs = [this.highlightPkgOrImg("python") + "=" + python_version, this.highlightPkgOrImg("cudatoolkit") + "=" + cuda_version].join(" ");
+ var py_cuda_pkgs = [this.highlightPkgOrImg("python") + "=" + python_version, this.highlightPkgOrImg("cuda-version") + "=" + cuda_version].join(" ");
var conda_channels = [rapids_channel, "conda-forge", "nvidia"]
- .map(ch => this.highlightFlag("-c") + " " + ch + " ")
+ .map(ch => "-" + this.highlightFlag("c") + " " + ch + " ")
.join("");
var indentation = " ";
+ if (this.active_packages.length + this.active_additional_packages.length === 1 && this.active_packages[0] === "Choose Specific Packages") {
+ return "Select at least one package.";
+ }
+
if (this.active_packages.length === 1 && this.active_packages[0] === "Standard") {
pkgs = ["rapids"];
}
- var pkgs_vers = pkgs.map(pkg => this.highlightPkgOrImg(pkg) + "=" + rapids_version + " ").join("").toLowerCase();
+ if (pkgs.includes("cuSpatial/cuProj")) {
+ pkgs = pkgs.filter(pkg => pkg !== "cuSpatial/cuProj");
+ pkgs.push("cuSpatial");
+ pkgs.push("cuProj");
+ }
+
+ var pkgs_vers = pkgs.filter(pkg => pkg !== "Choose Specific Packages").map(pkg => this.highlightPkgOrImg(pkg) + "=" + rapids_version + " ").join("").toLowerCase();
var all_pkgs = pkgs_vers + py_cuda_pkgs;
- var conda_create_ln = this.highlightCmd('conda') + " create " + this.highlightFlag("-n") + " rapids-" + rapids_version + " " + conda_channels;
+ var conda_create_ln = this.highlightCmd('conda') + " create --" + this.highlightFlag("solver") + "=libmamba " + this.highlightFlag("-n") + " rapids-" + rapids_version + " " + conda_channels;
var pkgs_ln = indentation + all_pkgs;
var add_pkgs_ln = "";
@@ -506,122 +480,100 @@
return lines;
},
getpipCmdHtml() {
- var pip_install = "pip install ";
- var index_url = " --extra-index-url=https://pypi.nvidia.com";
+ var pip_install = `${this.highlightCmd("pip")} install`;
+ var index_url = `--${this.highlightFlag("extra-index-url")}=https://pypi.nvidia.com`;
var cuda_suffix = "-cu12";
+ var indentation = " ";
if (this.active_pip_cuda_ver === "11.2 - 11.8") {
cuda_suffix = "-cu11";
}
+
var libraryToPkg = (pkg) => {
pkg = pkg.toLowerCase();
if (pkg === "cucim") return pkg;
+ if (pkg == "cuspatial/cuproj") return "cuspatial" + cuda_suffix + " cuproj" + cuda_suffix;
return pkg + cuda_suffix;
}
- var pkgs = this.active_packages.map(libraryToPkg).join(" ");
- var isArm = this.active_arch === "arm";
- var cupy_inst = "";
+ if (this.active_packages.length === 1 && this.active_packages[0] === "Choose Specific Packages") {
+ return "Select at least one package.";
+ } else if (this.active_packages[0] === 'Standard') {
+ var pkgs = this.additional_pip_packages.map(libraryToPkg);
+ } else {
+ var pkgs = this.active_packages
+ .filter(pkg => pkg !== "Choose Specific Packages" && pkg !== "cuSignal")
+ .map(libraryToPkg);
+ }
- if (pkgs === "cucim") {
+ if (pkgs.length === 1 && pkgs[0] === "cucim") {
index_url = "";
}
- return pip_install + pkgs + index_url + cupy_inst;
+ return [pip_install, index_url, pkgs.map(pkg => this.highlightPkgOrImg(pkg)).join(" ")]
+ .filter(Boolean)
+ .join(" \\\n" + indentation);
},
getDockerCmdHtml() {
- var hasNotebooks = this.active_img_options.includes("notebooks");
- var isDevel = this.active_img_options.includes("development");
+ var hasNotebooks = this.active_img_type === "Notebooks";
var isNightly = this.active_release === "Nightly";
- var isArm = this.active_arch === "arm";
var imgLoc = "";
- if (this.active_img_loc === "NGC") imgLoc = "nvcr.io/nvidia/"
- var imgVariant = "";
- if (this.active_img_type === "core") imgVariant = "core";
- var imgType = "base";
- if (hasNotebooks) imgType = "runtime";
- if (isDevel) imgType = "devel";
+ if (this.active_img_loc === "NGC") imgLoc = "nvcr.io/nvidia/";
+ var imgVariant = "Base";
+ if (this.active_img_type === "Notebooks") imgVariant = this.active_img_type;
+
var portOptions = (hasNotebooks ? ["8888:8888", "8787:8787", "8786:8786"] : [])
.map(opt => this.highlightFlag("-p") + " " + opt + " ").join("");
var imgRepo = [
- imgLoc + "rapidsai/rapidsai",
- imgVariant,
- (isDevel ? "dev" : ""),
- (isNightly ? "nightly" : ""),
- (isArm ? "arm64" : ""),
+ imgLoc + "rapidsai/" + imgVariant,
].filter(Boolean).join("-");
var imgTag = [
- (isNightly ? this.getNightlyVersion() : this.getStableVersion()),
+ (isNightly ? this.getNightlyVersion() + "a" : this.getStableVersion()),
"cuda" + this.active_cuda_ver,
- imgType,
- this.active_os_ver.replaceAll(" ", ""),
"py" + this.active_python_ver
].join("-");
var fullImg = (this.highlightPkgOrImg(imgRepo) + ":" + imgTag).toLowerCase();
var indent = " ";
- var cmd = this.highlightCmd("docker") + " pull " + fullImg + "\n" +
- this.highlightCmd("docker") + " run --" + this.highlightFlag("gpus") + " all --" + this.highlightFlag("rm") + " -" + this.highlightFlag("it") + " \\\n" +
+ var cmd = this.highlightCmd("docker") + " run --" + this.highlightFlag("gpus") + " all --" + this.highlightFlag("pull") + " always --" + this.highlightFlag("rm") + " -" + this.highlightFlag("it") + " \\\n" +
indent + "--" + this.highlightFlag("shm-size") + "=1g --" + this.highlightFlag("ulimit") + " memlock=-1 --" + this.highlightFlag("ulimit") + " stack=67108864" + " \\\n" +
(portOptions ? indent + portOptions + "\\\n" : "") +
indent + fullImg;
return cmd;
},
- getSourceCmdHtml() {
- var isStable = this.active_release === "Stable";
- var version = isStable ? this.getStableVersion() : this.getNightlyVersion();
- var links = [
- "https://github.com/rapidsai/cudf/blob/branch-" + version + "/CONTRIBUTING.md",
- "https://github.com/rapidsai/cuml/blob/branch-" + version + "/README.md",
- "https://github.com/rapidsai/cugraph/blob/branch-" + version + "/readme_pages/CONTRIBUTING.md",
- "https://github.com/rapidsai/cuspatial/blob/branch-" + version + "/README.md",
- "https://github.com/rapidsai/cuxfilter/blob/branch-" + version + "/CONTRIBUTING.md",
- "https://github.com/rapidsai/cusignal#source-linux-os",
- "https://github.com/rapidsai/cucim/blob/branch-" + version + "/CONTRIBUTING.md#building-and-testing-cucim-from-source"
- ];
- var cmd = "
For source build instructions, please view the links below:
";
- cmd += "
";
- for (var i = 0; i < links.length; i++) {
- var link = links[i];
- cmd += "- ";
- cmd += "" + link + "";
- cmd += "
";
- }
- cmd += "
";
- return cmd;
- },
- getImgTypeText(type) {
- if (type === "core") return "Basic"
- if (type === "standard") return "Basic w/ Dask-SQL"
- return type;
- },
- getImgOptionText(option) {
- if (option === "notebooks") return "Include Jupyter Notebooks";
- if (option === "development") return "Development Image (only on Docker Hub)";
- return option;
- },
getImgLoc(loc) {
if (loc === "NGC") return 'NGC (Stable Only)
';
if (loc === "Dockerhub") return 'Docker Hub (Stable and Nightly)
';
return loc;
},
getDockerNotes() {
- var core_pkgs = this.rapids_meta_pkgs;
-
- if (this.active_img_type === "standard") {
- core_pkgs = [...core_pkgs, "dask-sql"];
+ var notes = [];
+ if (this.active_cuda_ver.startsWith("12")) {
+ var pkgs_html = this.rapids_meta_pkgs.filter(pkg => pkg !== "cuSignal").map(pkg => "
" + pkg + "").join(", ");
+ var cuda12 = "RAPIDS Docker images for CUDA 12 do not currently support ARM architectures
";
+ notes = [...notes, cuda12]
+ } else {
+ var pkgs_html = this.rapids_meta_pkgs.map(pkg => "
" + pkg + "").join(", ");
}
- var pkgs_html = core_pkgs.map(pkg => "
" + pkg + "").join(", ");
- return [this.note_prefix + " The selected image contains the following packages:
" + pkgs_html];
+
+ notes = [...notes, "The selected image contains the following packages:
" + pkgs_html];
+ return notes.map(note => this.note_prefix + " " + note);
+
},
getCondaNotes() {
var notes = [];
notes = [...notes, "RAPIDS currently doesn't support
channel_priority: strict; use
channel_priority: flexible instead"];
if (this.active_packages.length === 1 && this.active_packages[0] === "Standard") {
- var pkgs_html = this.rapids_meta_pkgs.map(pkg => "
" + pkg + "").join(", ");
- notes = [...notes, "The
Standard selection contains the following packages:
" + pkgs_html];
+ if (this.active_cuda_ver.startsWith("12")) {
+ notes = [...notes, "RAPIDS conda packages for CUDA 12 do not currently support ARM architectures"];
+ var pkgs_html = this.rapids_meta_pkgs.filter(pkg => pkg !== "cuSignal").map(pkg => "
" + pkg + "").join(", ");
+ } else {
+ var pkgs_html = this.rapids_meta_pkgs.map(pkg => "
" + pkg + "").join(", ");
+ }
+ notes = [...notes, "The CUDA " + this.active_cuda_ver +
+ "
Standard selection contains the following packages:
" + pkgs_html];
}
if (this.active_additional_packages.length) {
@@ -636,21 +588,14 @@
},
getpipNotes() {
var notes = [];
- notes = [...notes, "
cuDF,
dask-cuDF,
cuML,
cuGraph, and
cuSpatial pip packages are hosted on the NVIDIA Python Package Index
",
- 'pip installation supports Python
3.9, and
3.10'];
+ notes = [...notes, "
cuDF,
dask-cuDF,
cuML,
cuGraph,
cuSpatial,
cuProj, and
cuxfilter pip packages are hosted on the NVIDIA Python Package Index
",
+ 'pip installation supports Python
3.9 and
3.10'];
return notes.map(note => this.note_prefix + " " + note);
},
- getArmNotes() {
- return [this.note_prefix + " ARM support does not currently include Jetson products."];
- },
getNoteHtml() {
var notes = [];
- if (this.active_arch === "arm") {
- notes.push(...this.getArmNotes());
- }
-
if (this.active_method === "Docker") {
notes.push(...this.getDockerNotes());
}
@@ -672,14 +617,8 @@
return this.getCondaCmdHtml();
if (this.active_method === "pip")
return this.getpipCmdHtml();
- if (this.active_method === "Source")
- return this.getSourceCmdHtml();
return "Not implemented yet!";
},
- getNewestCudaVer() {
- // TODO: When we support CUDA 12 on developer images, revert to this.cuda_vers.length - 1
- return this.cuda_vers[this.cuda_vers.length - 2];
- },
disableUnsupportedRelease(release) {
var isDisabled = false;
if (this.active_img_loc === "NGC" && this.active_method === "Docker" && release === "Nightly") isDisabled = true;
@@ -688,39 +627,20 @@
},
disableUnsupportedCuda(cuda_version) {
var isDisabled = false;
- if (this.active_img_options.includes("development") && cuda_version !== this.getNewestCudaVer()) {
- isDisabled = true;
- }
if (this.active_additional_packages.includes("TensorFlow") && cuda_version !== "11.2") isDisabled = true;
- if (this.active_os_ver === 'Ubuntu 22.04' && cuda_version !== '11.8' && this.active_method === 'Docker') isDisabled = true;
- if (this.active_method !== 'pip' && cuda_version === '12.0') isDisabled = true;
-
return isDisabled;
},
disableUnsupportedPython(python_version) {
var isDisabled = false;
return isDisabled;
},
- disableUnsupportedImgOS(os) {
- var isDisabled = false;
- if (this.active_arch === "arm" && os === "CentOS 7") isDisabled = true;
- if (this.active_cuda_ver !== '11.8' && os === 'Ubuntu 22.04' && this.active_method === 'Docker') isDisabled = true;
- if (this.active_arch === "arm" && os === 'Ubuntu 20.04' && this.active_method === 'Docker') isDisabled = true;
- return isDisabled;
- },
disableUnsupportedImgType(type) {
var isDisabled = false;
- if (this.active_arch === "arm" && type !== "core") isDisabled = true;
- return isDisabled;
- },
- disableUnsupportedImgOption(option) {
- var isDisabled = false;
- var isNGC = this.active_img_loc === "NGC"
- if (isNGC && option === "development") isDisabled = true;
return isDisabled;
},
disableUnsupportedImgLoc(loc) {
var isDisabled = false;
+ if (this.active_release === "Nightly" && loc === "NGC") isDisabled = true;
return isDisabled;
},
disableUnsupportedMethod(method) {
@@ -728,28 +648,27 @@
if (this.active_release === "Nightly" && method === "pip") isDisabled = true;
return isDisabled;
},
+ disableUnsupportedPackage(package) {
+ var isDisabled = false;
+ if (package === "cuSignal" && ((this.active_cuda_ver.startsWith("12") && this.active_method === "Conda") || this.active_release === "Nightly")) isDisabled = true;
+ return isDisabled;
+ },
isDisabled(e) {
return e.classList.contains("disabled");
},
releaseClickHandler(e, release) {
if (this.isDisabled(e.target)) return;
this.active_release = release;
- if (release === 'Stable') {
- this.active_img_loc = 'NGC';
- }
},
imgTypeClickHandler(e, type) {
if (this.isDisabled(e.target)) return;
this.active_img_type = type;
},
- archClickHandler(e, arch) {
- if (this.isDisabled(e.target)) return;
- if (arch === "arm") this.active_img_type = "core";
- if (arch === "arm" && this.active_os_ver === "CentOS 7") this.active_os_ver = "Ubuntu 22.04";
- this.active_arch = arch;
- },
cudaClickHandler(e, version) {
if (this.isDisabled(e.target)) return;
+ if (version === "12.0") {
+ this.active_packages = this.active_packages.filter(pkg => pkg !== "cuSignal");
+ }
this.active_cuda_ver = version;
},
pipCUDAClickHandler(e, version) {
@@ -763,8 +682,7 @@
methodClickHandler(e, method) {
if (this.isDisabled(e.target)) return;
if (method !== "Docker") {
- this.active_img_options = ["notebooks"];
- this.active_img_type = "core";
+ this.active_img_type = "Base";
}
if (method !== "Conda") {
this.active_additional_packages = [];
@@ -775,69 +693,41 @@
if (method === "pip") {
this.active_pip_cuda_ver = '12.0';
this.active_release = 'Stable';
- this.active_packages = ['cuDF']
}
if (method === "Docker") {
if (this.active_release === 'Nightly') {
this.active_img_loc = 'Dockerhub';
}
- if (this.active_os_ver === 'Ubuntu 22.04') {
- this.active_cuda_ver = '11.8';
- }
}
this.active_method = method;
},
- imgOSClickHandler(e, version) {
- if (this.isDisabled(e.target)) return;
- this.active_os_ver = version;
- },
imgLocClickHandler(e, loc) {
if (this.isDisabled(e.target)) return;
if (loc === "NGC" && this.active_release !== "Stable") this.active_release = "Stable";
- // Disable development option when clicking NGC
- if (loc === "NGC" && this.active_img_options.includes("development")) {
- this.active_img_options = this.active_img_options.filter(el => el !== "development")
- }
-
this.active_img_loc = loc;
},
- imgOptionClickHandler(e, option) {
- if (this.isDisabled(e.target)) return;
-
- // development images have notebooks
- if (option === "development" && this.active_img_options.length === 0) {
- this.active_img_options = ["notebooks", "development"];
- this.active_cuda_ver = this.getNewestCudaVer();
- return;
- }
-
- if (option === "notebooks" && this.active_img_options.length === 2) {
- this.active_img_options = [];
- return;
- }
-
- if (this.active_img_options.includes(option)) {
- this.active_img_options = this.active_img_options.filter(el => el !== option);
- return;
- }
-
- this.active_img_options = [...this.active_img_options, option];
- if (this.active_img_options.includes("development")) {
- this.active_cuda_ver = this.getNewestCudaVer();
- }
- },
/**
* Determines which packages are selected. "Standard" can only be
* selected individually. All other packages can be selected together.
**/
packagesClickHandler(e, package) {
+ if (this.isDisabled(e.target)) return;
if (package === "Standard") {
this.active_packages = [package];
return;
}
+ if (package === "Choose Specific Packages") {
+ if (this.active_packages[0] === "Standard" && this.active_packages.length === 1) {
+ this.active_packages = [package, "cuDF"];
+ return;
+ } else {
+ return;
+ }
+ }
+
this.active_packages = this.active_packages.filter(el => el !== "Standard");
if (this.active_packages.includes(package)) {
@@ -848,6 +738,7 @@
this.active_packages = [...this.active_packages, package];
},
additionalPackagesClickHandler(e, package) {
+ if (this.isDisabled(e.target)) return;
if (this.active_additional_packages.includes(package)) {
this.active_additional_packages = this.active_additional_packages.filter(el => el !== package);
return;
diff --git a/install/install.md b/install/install.md
index b3572bba98c..de3b5f4b9aa 100644
--- a/install/install.md
+++ b/install/install.md
@@ -47,16 +47,43 @@ Use the selector tool below to select your preferred method, packages, and envir
## Installation Troubleshooting
### **Conda Issues**
-
The dependency solver takes too long or never resolves:
-Update conda to use the new [libmamba solver](https://www.anaconda.com/blog/a-faster-conda-for-a-growing-community/){: target="blank"} or use [Mamba directly](https://mamba.readthedocs.io/en/latest/installation.html){: target="_blank"}.
+
A `conda create error` occurs:
+RAPIDS has switched the default solver recommendation to [libmamba](https://www.anaconda.com/blog/a-faster-conda-for-a-growing-community/){: target="_blank"}, a Mamba-powered Conda solver that is [now included with all Conda/Miniconda installations](https://www.anaconda.com/blog/new-release-anaconda-distribution-2023-07-miniconda-23-5-0-and-more){: target="_blank"} to significantly accelerate environment solving. The error output shows:
+```
+conda create: error: argument --solver: invalid choice: 'libmamba' (choose from 'classic')
+```
-
+To resolve this error please follow one of these steps:
+- If the Conda installation is version `22.11` or newer, run: `conda install -n base conda-libmamba-solver`
+- If the Conda installation is older than `22.11`, please update your [Conda or Miniconda to the latest version](https://conda.io/projects/conda/en/stable/user-guide/install/index.html){: target="_blank"}
+- Use [Mamba directly](https://mamba.readthedocs.io/en/latest/installation.html){: target="_blank"}
+- Use the classic solver by removing `--solver=libmamba` from the `conda create` command provided by the selector
+
+
CUDA 12.0 ARM packages are not yet available:
+Conda-forge does not yet support the minimum required glibc (2.32) for CUDA 12 on ARM. For ARM support, please use CUDA 11.
+
+
At the time of writing, there is no stable CUDA 12 release of PyTorch:
+PyTorch currently only has nightly builds for CUDA 12.1, stable builds are limited to CUDA 11.
+The installation method below may allow RAPIDS CUDA 12.0 packages to coexist with PyTorch CUDA 12.1 nightly packages if there is a hard-requirement of CUDA 12 but it is currently unsupported:
+```
+conda create --solver=libmamba -n rapids-pytorch-cu12 -c rapidsai -c pytorch-nightly -c conda-forge -c nvidia rapids={{ site.data.releases.stable.version }} cuda-version=12.0 pytorch pytorch-cuda=12.1
+```
### **Docker Issues**
-
Jupyter Lab is not accessible:
-If the server has not started or needs to be restarted / stop, use the included [start/stop script](#docker-startstop). Note this may change in the near future releases.
+
RAPIDS `23.08` brings significant Docker changes.
+To learn more about these changes, please see the [RAPIDS Container README](https://hub.docker.com/r/rapidsai/base){: target="_blank"}. Some key notes below:
+- `Development` images are no longer being published, in the coming releases RAPIDS will roll out [Dev Containers](https://code.visualstudio.com/docs/devcontainers/containers){: target="_blank"} for development
+ - See cuSpatial for an example and information on [RAPIDS' usage of Dev Containers](https://github.com/rapidsai/cuspatial/tree/main/.devcontainer){: target="_blank"}
+- All images are Ubuntu-based
+ - CUDA 11.2 images are Ubuntu `20.04`
+ - All other images are Ubuntu `22.04`
+- All images are multiarch (x86_64 and ARM)
+ - CUDA 12 is not yet supported when using Docker images on ARM architecture
+- The `Base` image starts in an ipython shell
+ - To run bash commands inside the ipython shell prefix the command with `!`
+ - To run the image without the ipython shell add `/bin/bash` to the end of the `docker run` command
+- For a full list of changes please see this [RAPIDS Docker Issue](https://github.com/rapidsai/docker/issues/539){: target="_blank"}
-
### **pip Issues**
pip installations require using the matching wheel to the system's installed CUDA toolkit. For CUDA 11 toolkits, install the `-cu11` wheels, and for CUDA 12 tookits install the `-cu12` wheels. If your installation has a CUDA 12 driver but a CUDA 11 toolkit, use the `-cu11` wheels.
@@ -70,7 +97,7 @@ pip uninstall cupy-cuda115; pip install cupy-cuda11x
The following error message indicates a problem with your environment:
```
-ERROR: Could not find a version that satisfies the requirement cudf-cu11 (from versions: 0.0.1, 22.10.0)
+ERROR: Could not find a version that satisfies the requirement cudf-cu11 (from versions: 0.0.1, {{ site.data.releases.stable.version }})
ERROR: No matching distribution found for cudf-cu11
```
Check the suggestions below for possible resolutions:
@@ -115,15 +142,26 @@ All provisioned systems need to be RAPIDS capable. Here's what is required:
**CUDA & NVIDIA Drivers:** One of the following supported versions:
{: .no-tb-margins }
--
[CUDA 11.2](https://developer.nvidia.com/cuda-11.2.0-download-archive){: target="_blank"} with Driver 460.27.03 or newer
+-
[CUDA 11.2](https://developer.nvidia.com/cuda-11.2.0-download-archive){: target="_blank"} with Driver 470.42.01 or newer
-
[CUDA 11.4](https://developer.nvidia.com/cuda-11-4-0-download-archive){: target="_blank"} with Driver 470.42.01 or newer
-
[CUDA 11.5](https://developer.nvidia.com/cuda-11-5-0-download-archive){: target="_blank"} with Driver 495.29.05 or newer
-
[CUDA 11.8](https://developer.nvidia.com/cuda-11-8-0-download-archive){: target="_blank"} with Driver 520.61.05 or newer
--
[CUDA 12.0](https://developer.nvidia.com/cuda-12-0-1-download-archive){: target="_blank"} with Driver 525.60.13 or newer **for pip installations only**
+-
[CUDA 12.0](https://developer.nvidia.com/cuda-12-0-1-download-archive){: target="_blank"} with Driver 525.60.13 or newer **see CUDA 12 section below for notes on usage**
**Note**: RAPIDS is tested with and officially supports the versions listed above. Newer CUDA and driver versions may also work with RAPIDS. See [CUDA compatibility](https://docs.nvidia.com/deploy/cuda-compatibility/index.html) for details.
+
+## **CUDA 12 Support**
+
+### **Docker and Conda**
+
+-
CUDA 12 conda packages and Docker images currently support CUDA 12.0
+-
CUDA 11 conda packages and Docker images can be used on a system with a CUDA 12 driver because they include their own CUDA toolkit
+-
ARM is not currently supported by CUDA 12 conda packages or Docker images, use CUDA 11 or pip packages for ARM support
- **Note**: RAPIDS Docker images and conda packages for CUDA 11 can be used on a system with a CUDA 12 driver because they include their own CUDA toolkit. pip installations require using a wheel matching the system's installed CUDA toolkit. For CUDA 11 toolkits, install the
-cu11 wheels, and for CUDA 12 toolkits install the
-cu12 wheels. If your installation has a CUDA 12 driver but a CUDA 11 toolkit, use the
-cu11 wheels.
+### **pip**
+
+-
pip installations require using a wheel matching the system's installed CUDA toolkit.
+-
For CUDA 11 toolkits, install the
-cu11 wheels, and for CUDA 12 toolkits install the
-cu12 wheels. If your installation has a CUDA 12 driver but a CUDA 11 toolkit, use the
-cu11 wheels.
@@ -210,9 +248,10 @@ docker run --gpus all nvcr.io/nvidia/k8s/cuda-sample:nbody nbody -gpu -benchmark
**4b. Legacy Docker Users.** Docker CE v18 & [nvidia-docker2](https://github.com/NVIDIA/nvidia-docker/wiki/Installation-(version-2.0)){: target="_blank"} users will need to replace the following for compatibility:
`docker run --gpus all` with `docker run --runtime=nvidia`
-
+
-**JupyterLab.** Defaults will run [JupyterLab](https://jupyterlab.readthedocs.io/en/stable/){: target="_blank"} on your host machine at port: `8888`.
+### **JupyterLab.**
+The command provided from the selector for the `notebooks` Docker image will run [JupyterLab](https://jupyterlab.readthedocs.io/en/stable/){: target="_blank"} on your host machine at port: `8888`.
**Running Multi-Node / Multi-GPU (MNMG) Environment.** To start the container in an MNMG environment:
```
@@ -221,16 +260,6 @@ docker run -t -d --gpus all --shm-size=1g --ulimit memlock=-1 --ulimit stack= 67
The standard docker command may be sufficient, but the additional arguments ensures more stability. See the [NCCL docs](https://docs.nvidia.com/deeplearning/nccl/user-guide/docs/troubleshooting.html#sharing-data){: target="_blank"} and [UCX docs](https://github.com/openucx/ucx/blob/master/docs/source/running.md#running-in-docker-containers){: target="_blank"} for more details on MNMG usage.
-
-**Start / Stop Jupyter Lab Notebooks.** Either the standard single GPU or the modified MNMG Docker command above should auto-run a Jupyter Lab Notebook server. If it does not, or a restart is needed, run the following command within the Docker container to launch the notebook server:
-```
-bash /rapids/utils/start-jupyter.sh
-```
-
-If, for whatever reason, you need to shut down the Jupyter Lab server, use:
-```
-bash /rapids/utils/stop-jupyter.sh
-```
**Custom Datasets.** See the [RAPIDS Container README](https://hub.docker.com/r/rapidsai/rapidsai){: target="_blank"} for more information about using custom datasets. [Docker Hub](https://hub.docker.com/r/rapidsai/rapidsai/){: target="_blank"} and [NVIDIA GPU Cloud](https://ngc.nvidia.com/catalog/containers/nvidia:rapidsai:rapidsai){: target="_blank"} host RAPIDS containers with a full list of [available tags](https://hub.docker.com/r/rapidsai/rapidsai/tags){: target="_blank"}.
@@ -239,12 +268,12 @@ bash /rapids/utils/stop-jupyter.sh
## **pip**
-RAPIDS 23.06 pip packages of cuDF, dask-cuDF, cuML, cuGraph, cuSpatial, RMM, and RAFT are available for CUDA 11 and CUDA 12 on the NVIDIA Python Package Index.
+RAPIDS pip packages are available for CUDA 11 and CUDA 12 on the NVIDIA Python Package Index.
### **pip Additional Prerequisites**
The CUDA toolkit version on your system must match the pip CUDA version you install (`-cu11` or `-cu12`).
**glibc version:** x86_64 wheels require glibc >= 2.17.
-
**glibc version:** ARM architecture (aarch64) wheels require glibc >= 2.31 (only ARM Server Base System Architecture is supported).
+
**glibc version:** ARM architecture (aarch64) wheels require glibc >= 2.32 (only ARM Server Base System Architecture is supported).
@@ -270,7 +299,9 @@ Windows users can now tap into GPU accelerated data science on their local machi
### **Troubleshooting**
-
When installing with conda, if an `http 000 connection error` occurs when accessing the repository data, run `wsl --shutdown` and then [restart the WSL instance](https://stackoverflow.com/questions/67923183/miniconda-on-wsl2-ubuntu-20-04-fails-with-condahttperror-http-000-connection){: target="_blank"}.
+
When installing with Conda, if an `http 000 connection error` occurs when accessing the repository data, run `wsl --shutdown` and then [restart the WSL instance](https://stackoverflow.com/questions/67923183/miniconda-on-wsl2-ubuntu-20-04-fails-with-condahttperror-http-000-connection){: target="_blank"}.
+
+
When installing with Conda or pip, if an `WSL2 Jitify fatal error: libcuda.so: cannot open shared object file` error occurs, follow suggestions in [this WSL issue](https://github.com/microsoft/WSL/issues/8587) to resolve.
When installing with Docker Desktop, if the container pull command is successful, but the run command hangs indefinitely, [ensure you're on Docker Desktop >= 4.18](https://docs.docker.com/desktop/release-notes/){: target="_blank"}.
@@ -299,7 +330,7 @@ Windows users can now tap into GPU accelerated data science on their local machi
2. Install the [latest NVIDIA Drivers](https://www.nvidia.com/download/index.aspx){: target="_blank"} on the Windows host.
3. Install latest Docker Desktop for Windows
4. Log in to the WSL2 Linux instance.
-5. Generate and run the RAPIDS `docker pull` and `docker run` commands based on your desired configuration using the RAPIDS [Release Selector](#selector).
+5. Generate and run the RAPIDS `docker` command based on your desired configuration using the RAPIDS [Release Selector](#selector).
6. Inside the Docker instance, run this code to check that the RAPIDS installation is working:
```
import cudf