cudaPackages_13: init at 13.0.2
Signed-off-by: Connor Baker <ConnorBaker01@gmail.com>
This commit is contained in:
@@ -104,6 +104,7 @@
|
||||
"5.0" = {
|
||||
archName = "Maxwell";
|
||||
minCudaMajorMinorVersion = "10.0";
|
||||
maxCudaMajorMinorVersion = "12.9";
|
||||
dontDefaultAfterCudaMajorMinorVersion = "11.0";
|
||||
};
|
||||
|
||||
@@ -111,6 +112,7 @@
|
||||
"5.2" = {
|
||||
archName = "Maxwell";
|
||||
minCudaMajorMinorVersion = "10.0";
|
||||
maxCudaMajorMinorVersion = "12.9";
|
||||
dontDefaultAfterCudaMajorMinorVersion = "11.0";
|
||||
};
|
||||
|
||||
@@ -118,6 +120,7 @@
|
||||
"6.0" = {
|
||||
archName = "Pascal";
|
||||
minCudaMajorMinorVersion = "10.0";
|
||||
maxCudaMajorMinorVersion = "12.9";
|
||||
# Removed from TensorRT 10.0, which corresponds to CUDA 12.4 release.
|
||||
# https://docs.nvidia.com/deeplearning/tensorrt/archives/tensorrt-1001/support-matrix/index.html
|
||||
dontDefaultAfterCudaMajorMinorVersion = "12.3";
|
||||
@@ -128,6 +131,7 @@
|
||||
"6.1" = {
|
||||
archName = "Pascal";
|
||||
minCudaMajorMinorVersion = "10.0";
|
||||
maxCudaMajorMinorVersion = "12.9";
|
||||
# Removed from TensorRT 10.0, which corresponds to CUDA 12.4 release.
|
||||
# https://docs.nvidia.com/deeplearning/tensorrt/archives/tensorrt-1001/support-matrix/index.html
|
||||
dontDefaultAfterCudaMajorMinorVersion = "12.3";
|
||||
@@ -137,6 +141,7 @@
|
||||
"7.0" = {
|
||||
archName = "Volta";
|
||||
minCudaMajorMinorVersion = "10.0";
|
||||
maxCudaMajorMinorVersion = "12.9";
|
||||
# Removed from TensorRT 10.5, which corresponds to CUDA 12.6 release.
|
||||
# https://docs.nvidia.com/deeplearning/tensorrt/archives/tensorrt-1050/support-matrix/index.html
|
||||
dontDefaultAfterCudaMajorMinorVersion = "12.5";
|
||||
@@ -163,20 +168,30 @@
|
||||
minCudaMajorMinorVersion = "11.2";
|
||||
};
|
||||
|
||||
# Jetson AGX Orin and Drive AGX Orin only
|
||||
# Tegra T234 (Jetson Orin)
|
||||
"8.7" = {
|
||||
archName = "Ampere";
|
||||
minCudaMajorMinorVersion = "11.5";
|
||||
isJetson = true;
|
||||
};
|
||||
|
||||
# Tegra T239 (Switch 2?)
|
||||
# "8.8" = {
|
||||
# archName = "Ampere";
|
||||
# minCudaMajorMinorVersion = "13.0";
|
||||
# # It's not a Jetson device, but it does use the same architecture.
|
||||
# isJetson = true;
|
||||
# # Should never be default.
|
||||
# dontDefaultAfterCudaMajorMinorVersion = "13.0";
|
||||
# };
|
||||
|
||||
# NVIDIA GeForce RTX 4090, RTX 4080, RTX 6000, Tesla L40
|
||||
"8.9" = {
|
||||
archName = "Ada";
|
||||
minCudaMajorMinorVersion = "11.8";
|
||||
};
|
||||
|
||||
# NVIDIA H100 (GH100)
|
||||
# NVIDIA H100, H200, GH200
|
||||
"9.0" = {
|
||||
archName = "Hopper";
|
||||
minCudaMajorMinorVersion = "11.8";
|
||||
@@ -187,7 +202,7 @@
|
||||
minCudaMajorMinorVersion = "12.0";
|
||||
};
|
||||
|
||||
# NVIDIA B100
|
||||
# NVIDIA B200, GB200
|
||||
"10.0" = {
|
||||
archName = "Blackwell";
|
||||
minCudaMajorMinorVersion = "12.7";
|
||||
@@ -203,26 +218,33 @@
|
||||
minCudaMajorMinorVersion = "12.9";
|
||||
};
|
||||
|
||||
# NVIDIA Jetson Thor Blackwell
|
||||
# NVIDIA Jetson Thor Blackwell, T4000, T5000 (CUDA 12.7-12.9)
|
||||
# Okay, so:
|
||||
# - Support for Thor was added in CUDA 12.7, which was never released but is referenced in docs
|
||||
# - NVIDIA changed the compute capability from 10.0 to 11.0 in CUDA 13.0
|
||||
# - From CUDA 13.0 and on, 10.1 is no longer a valid compute capability
|
||||
"10.1" = {
|
||||
archName = "Blackwell";
|
||||
minCudaMajorMinorVersion = "12.7";
|
||||
maxCudaMajorMinorVersion = "12.9";
|
||||
isJetson = true;
|
||||
};
|
||||
|
||||
"10.1a" = {
|
||||
archName = "Blackwell";
|
||||
minCudaMajorMinorVersion = "12.7";
|
||||
maxCudaMajorMinorVersion = "12.9";
|
||||
isJetson = true;
|
||||
};
|
||||
|
||||
"10.1f" = {
|
||||
archName = "Blackwell";
|
||||
minCudaMajorMinorVersion = "12.9";
|
||||
maxCudaMajorMinorVersion = "12.9";
|
||||
isJetson = true;
|
||||
};
|
||||
|
||||
# NVIDIA ???
|
||||
# NVIDIA B300
|
||||
"10.3" = {
|
||||
archName = "Blackwell";
|
||||
minCudaMajorMinorVersion = "12.9";
|
||||
@@ -238,6 +260,25 @@
|
||||
minCudaMajorMinorVersion = "12.9";
|
||||
};
|
||||
|
||||
# NVIDIA Jetson Thor Blackwell, T4000, T5000 (CUDA 13.0+)
|
||||
"11.0" = {
|
||||
archName = "Blackwell";
|
||||
minCudaMajorMinorVersion = "13.0";
|
||||
isJetson = true;
|
||||
};
|
||||
|
||||
"11.0a" = {
|
||||
archName = "Blackwell";
|
||||
minCudaMajorMinorVersion = "13.0";
|
||||
isJetson = true;
|
||||
};
|
||||
|
||||
"11.0f" = {
|
||||
archName = "Blackwell";
|
||||
minCudaMajorMinorVersion = "13.0";
|
||||
isJetson = true;
|
||||
};
|
||||
|
||||
# NVIDIA GeForce RTX 5090 (GB202) etc.
|
||||
"12.0" = {
|
||||
archName = "Blackwell";
|
||||
@@ -254,7 +295,7 @@
|
||||
minCudaMajorMinorVersion = "12.9";
|
||||
};
|
||||
|
||||
# NVIDIA ???
|
||||
# NVIDIA DGX Spark
|
||||
"12.1" = {
|
||||
archName = "Blackwell";
|
||||
minCudaMajorMinorVersion = "12.9";
|
||||
|
||||
@@ -66,5 +66,18 @@
|
||||
minMajorVersion = "6";
|
||||
};
|
||||
};
|
||||
|
||||
# 12.9 to 13.0 adds support for GCC 15 and Clang 20
|
||||
# https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#host-compiler-support-policy
|
||||
"13.0" = {
|
||||
clang = {
|
||||
maxMajorVersion = "20";
|
||||
minMajorVersion = "7";
|
||||
};
|
||||
gcc = {
|
||||
maxMajorVersion = "15";
|
||||
minMajorVersion = "6";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,48 @@
|
||||
{
|
||||
buildRedist,
|
||||
curl,
|
||||
lib,
|
||||
libibmad,
|
||||
libibumad,
|
||||
rdma-core,
|
||||
ucx,
|
||||
zlib,
|
||||
}:
|
||||
buildRedist (finalAttrs: {
|
||||
redistName = "cuda";
|
||||
pname = "collectx_bringup";
|
||||
|
||||
# TODO: Has python packages, bin, etc, lib, share, and collectx directory,
|
||||
# which has its own bin and lib directories.
|
||||
outputs = [ "out" ];
|
||||
|
||||
postUnpack = lib.optionalString (finalAttrs.src ? name) ''
|
||||
nixLog "moving collectx_bringup to the top level of source root"
|
||||
mv --verbose --no-clobber \
|
||||
"$PWD/${finalAttrs.src.name}/opt/nvidia/collectx_bringup"/* \
|
||||
"$PWD/${finalAttrs.src.name}/"
|
||||
rm --dir --verbose --recursive "$PWD/${finalAttrs.src.name}/opt"
|
||||
'';
|
||||
|
||||
buildInputs = [
|
||||
curl
|
||||
libibmad
|
||||
libibumad
|
||||
rdma-core
|
||||
ucx
|
||||
zlib
|
||||
];
|
||||
|
||||
brokenAssertions = [
|
||||
# NOTE: Neither of these are available in Nixpkgs, from what I can tell by way of
|
||||
# nix-community/nix-index-database.
|
||||
{
|
||||
message = "libssl.so.1.1 is available";
|
||||
assertion = false;
|
||||
}
|
||||
{
|
||||
message = "libcrypto.so.1.1 is available";
|
||||
assertion = false;
|
||||
}
|
||||
];
|
||||
})
|
||||
@@ -0,0 +1,18 @@
|
||||
{ buildRedist }:
|
||||
buildRedist {
|
||||
redistName = "cuda";
|
||||
pname = "cuda_ctadvisor";
|
||||
|
||||
outputs = [ "out" ];
|
||||
|
||||
meta = {
|
||||
description = "Analyzes trace files containing compilation time information generated by NVCC or NVRTC";
|
||||
longDescription = ''
|
||||
CUDA Compile Time Advisor (ctadvisor) analyzes trace files containing compilation time information generated by
|
||||
NVCC or NVRTC. ctadvisor identifies compilation bottlenecks that take significant amount of time, for examples,
|
||||
template instantiation and headers processing. The tool provides users with suggestions to reduce compilation
|
||||
time.
|
||||
'';
|
||||
homepage = "https://docs.nvidia.com/cuda/cuda-compile-time-advisor";
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
{ buildRedist }:
|
||||
buildRedist {
|
||||
redistName = "cuda";
|
||||
pname = "cuda_culibos";
|
||||
outputs = [ "out" ];
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
{ buildRedist }:
|
||||
buildRedist {
|
||||
redistName = "cuda";
|
||||
pname = "libnvptxcompiler";
|
||||
|
||||
outputs = [ "out" ];
|
||||
|
||||
meta = {
|
||||
description = "APIs which can be used to compile a PTX program into GPU assembly code";
|
||||
homepage = "https://docs.nvidia.com/cuda/ptx-compiler-api";
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,39 @@
|
||||
{
|
||||
buildRedist,
|
||||
lib,
|
||||
rdma-core,
|
||||
zlib,
|
||||
}:
|
||||
buildRedist (finalAttrs: {
|
||||
redistName = "cuda";
|
||||
pname = "mft";
|
||||
|
||||
# TODO: includes bin, etc, include, lib, and share directories.
|
||||
outputs = [ "out" ];
|
||||
|
||||
postUnpack = lib.optionalString (finalAttrs.src != null) ''
|
||||
nixLog "moving items in usr to the top level of source root"
|
||||
mv --verbose --no-clobber \
|
||||
"$PWD/${finalAttrs.src.name}/usr"/* \
|
||||
"$PWD/${finalAttrs.src.name}/"
|
||||
rm --dir --verbose --recursive "$PWD/${finalAttrs.src.name}/usr"
|
||||
'';
|
||||
|
||||
buildInputs = [
|
||||
rdma-core
|
||||
zlib
|
||||
];
|
||||
|
||||
brokenAssertions = [
|
||||
{
|
||||
# There are a *bunch* of these references and I don't know how to patch them all.
|
||||
message = "contains no references to FHS paths";
|
||||
assertion = false;
|
||||
}
|
||||
];
|
||||
|
||||
meta = {
|
||||
description = "NVIDIA firmware management tools";
|
||||
homepage = "https://network.nvidia.com/products/adapter-software/firmware-tools/";
|
||||
};
|
||||
})
|
||||
@@ -0,0 +1,39 @@
|
||||
{
|
||||
buildRedist,
|
||||
lib,
|
||||
python3,
|
||||
}:
|
||||
buildRedist {
|
||||
redistName = "cuda";
|
||||
pname = "mft_autocomplete";
|
||||
|
||||
# TODO: includes bin, etc, include, lib, and share directories.
|
||||
outputs = [ "out" ];
|
||||
|
||||
postPatch = ''
|
||||
nixLog "patching python path in $PWD/etc/bash_completion.d/mft/mft_base_autocomplete"
|
||||
substituteInPlace "$PWD/etc/bash_completion.d/mft/mft_base_autocomplete" \
|
||||
--replace-fail \
|
||||
"PYTHON_EXEC='/usr/bin/env python3'" \
|
||||
"PYTHON_EXEC='${lib.getExe python3}'" \
|
||||
--replace-fail \
|
||||
"PYTHON_EXEC='/usr/bin/env python2'" \
|
||||
"PYTHON_EXEC='${lib.getExe python3}'"
|
||||
|
||||
nixLog "patching python shebang path in $PWD/etc/bash_completion.d/mft/mft_help_to_completion.py"
|
||||
substituteInPlace "$PWD/etc/bash_completion.d/mft/mft_help_to_completion.py" \
|
||||
--replace-fail \
|
||||
'#!/usr/bin/python' \
|
||||
'#!${lib.getExe python3}'
|
||||
'';
|
||||
|
||||
brokenAssertions = [
|
||||
{
|
||||
# The mft_base_autocomplete file needs heavier patching to remove FHS references and ensure it uses Nixpkgs' python.
|
||||
# In particular, it does something like
|
||||
# PYTHON_EXEC=`find /usr/bin /bin/ /usr/local/bin -iname 'python*' 2>&1 | grep -e='*python[0-9,.]*' | sort -d | head -n 1`
|
||||
message = "contains no references to FHS paths";
|
||||
assertion = false;
|
||||
}
|
||||
];
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
{ buildRedist, libxcrypt-legacy }:
|
||||
buildRedist (finalAttrs: {
|
||||
redistName = "cuda";
|
||||
pname = "mft_oem";
|
||||
|
||||
outputs = [ "out" ];
|
||||
|
||||
postUnpack = ''
|
||||
nixLog "moving items in usr to the top level of source root"
|
||||
mv --verbose --no-clobber \
|
||||
"$PWD/${finalAttrs.src.name}/usr"/* \
|
||||
"$PWD/${finalAttrs.src.name}/"
|
||||
rm --dir --verbose --recursive "$PWD/${finalAttrs.src.name}/usr"
|
||||
'';
|
||||
|
||||
buildInputs = [ libxcrypt-legacy ];
|
||||
|
||||
brokenAssertions = [
|
||||
{
|
||||
# Contains problems similar to mft_autocomplete.
|
||||
message = "contains no references to FHS paths";
|
||||
assertion = false;
|
||||
}
|
||||
];
|
||||
})
|
||||
@@ -0,0 +1,30 @@
|
||||
{ buildRedist, lib }:
|
||||
buildRedist (finalAttrs: {
|
||||
redistName = "cuda";
|
||||
pname = "nvlsm";
|
||||
|
||||
# TODO: includes bin, lib, and share directories.
|
||||
outputs = [ "out" ];
|
||||
|
||||
postUnpack = lib.optionalString (finalAttrs.src != null) ''
|
||||
nixLog "moving sbin to bin"
|
||||
mv --verbose --no-clobber \
|
||||
"$PWD/${finalAttrs.src.name}/sbin" \
|
||||
"$PWD/${finalAttrs.src.name}/bin"
|
||||
'';
|
||||
|
||||
brokenAssertions = [
|
||||
{
|
||||
# The binary files match FHS paths and the configuration files need to be patched.
|
||||
message = "contains no references to FHS paths";
|
||||
assertion = false;
|
||||
}
|
||||
];
|
||||
|
||||
meta = {
|
||||
description = "NVLink Subnet Manager";
|
||||
longDescription = ''
|
||||
A service that originates from NVIDIA InfiniBand switches and has the necessary modifications to effectively manage NVSwitches.
|
||||
'';
|
||||
};
|
||||
})
|
||||
@@ -2561,10 +2561,13 @@ with pkgs;
|
||||
cudaPackages_12_6
|
||||
cudaPackages_12_8
|
||||
cudaPackages_12_9
|
||||
cudaPackages_13_0
|
||||
;
|
||||
|
||||
cudaPackages_12 = cudaPackages_12_8;
|
||||
|
||||
cudaPackages_13 = cudaPackages_13_0;
|
||||
|
||||
cudaPackages = recurseIntoAttrs cudaPackages_12;
|
||||
|
||||
# TODO: move to alias
|
||||
|
||||
@@ -52,4 +52,14 @@ in
|
||||
tensorrt = if hasJetsonCudaCapability then "10.7.0" else "10.9.0";
|
||||
};
|
||||
};
|
||||
|
||||
cudaPackages_13_0 = callPackage ../development/cuda-modules {
|
||||
manifests = selectManifests {
|
||||
cuda = "13.0.2";
|
||||
cudnn = "9.8.0";
|
||||
cusparselt = "0.7.1";
|
||||
cutensor = "2.2.0";
|
||||
tensorrt = if hasJetsonCudaCapability then "10.7.0" else "10.9.0";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user