cudaPackages_13_3.cccl: init at 13.3.3.3.1

This commit is contained in:
Gaetan Lepage
2026-06-06 11:58:26 +00:00
parent 3fdce90b8f
commit 3fecd68e9d
57 changed files with 80 additions and 74 deletions
@@ -110,7 +110,7 @@ effectiveStdenv.mkDerivation (finalAttrs: {
]
++ lib.optionals enableMpi [ mpi ]
++ lib.optionals enableCuda [
cudaPackages.cuda_cccl
cudaPackages.cccl
cudaPackages.cuda_cudart
cudaPackages.libcufft
cudaPackages.cuda_profiler_api
+1 -1
View File
@@ -74,7 +74,7 @@ stdenv.mkDerivation (finalAttrs: {
]
++ lib.optionals cudaSupport [
cudaPackages.cuda_cudart
cudaPackages.cuda_cccl
cudaPackages.cccl
cudaPackages.libcublas
];
+1 -1
View File
@@ -84,7 +84,7 @@ stdenv'.mkDerivation (finalAttrs: {
mkl
]
++ lib.optionals withCUDA [
cudaPackages.cuda_cccl # <nv/target> required by the fp16 headers in cudart
cudaPackages.cccl # <nv/target> required by the fp16 headers in cudart
cudaPackages.cuda_cudart
cudaPackages.libcublas
cudaPackages.libcurand
+1 -1
View File
@@ -37,7 +37,7 @@ let
# C.f. https://github.com/NVIDIA/DCGM/blob/7e1012302679e4bb7496483b32dcffb56e528c92/dcgmbuild/scripts/0080_cuda.sh#L24-L39
getCudaPackages =
p: with p; [
cuda_cccl
cccl
cuda_cudart
cuda_nvcc
cuda_nvml_dev
+1 -1
View File
@@ -76,7 +76,7 @@
libcurand
libcusolver
cudnn
cuda_cccl
cccl
]
);
+1 -1
View File
@@ -31,10 +31,10 @@ let
stdenv = if cudaSupport then backendStdenv else inputs.stdenv;
cudaComponents = with cudaPackages; [
cccl
cuda_cudart # cuda_runtime.h
libcublas
libcurand
cuda_cccl
# cuda_profiler_api.h
(cudaPackages.cuda_profiler_api or cudaPackages.cuda_nvprof)
+1 -1
View File
@@ -71,7 +71,7 @@ stdenv.mkDerivation (finalAttrs: {
++ lib.optionals cudaSupport (
with cudaPackages;
[
cuda_cccl
cccl
cuda_cudart
libcublas
]
+2 -2
View File
@@ -12,7 +12,7 @@ let
inherit (config) cudaSupport;
inherit (cudaPackages)
backendStdenv
cuda_cccl
cccl
cuda_cudart
cuda_nvcc
libcublas
@@ -49,7 +49,7 @@ backendStdenv.mkDerivation {
];
buildInputs = [
cuda_cccl # <nv/target>
cccl # <nv/target>
cuda_cudart # driver_types.h
cuda_nvcc # crt/host_defines.h
libcublas # cublas_v2.h
+1 -1
View File
@@ -78,7 +78,7 @@ stdenv'.mkDerivation rec {
++ lib.optionals (backend == "cuda") (
with cudaPackages;
[
cuda_cccl
cccl
cuda_cudart
cuda_nvcc
cudnn
+1 -1
View File
@@ -74,7 +74,7 @@ effectiveStdenv.mkDerivation (finalAttrs: {
cudaPackages.libcublas
cudaPackages.cuda_nvcc
cudaPackages.cuda_cudart
cudaPackages.cuda_cccl
cudaPackages.cccl
]
++ lib.optionals clblastSupport [
clblast
+1 -1
View File
@@ -59,7 +59,7 @@ let
;
cudaBuildInputs = with cudaPackages; [
cuda_cccl # <nv/target>
cccl # <nv/target>
# A temporary hack for reducing the closure size, remove once cudaPackages
# have stopped using lndir: https://github.com/NixOS/nixpkgs/issues/271792
+1 -1
View File
@@ -39,7 +39,7 @@ backendStdenv.mkDerivation (finalAttrs: {
gmp
cudaPackages.cuda_cudart
cudaPackages.libcufft
cudaPackages.cuda_cccl
cudaPackages.cccl
];
env = {
+2 -2
View File
@@ -77,7 +77,7 @@ let
inherit (cudaPackages)
libcublas
cuda_nvcc
cuda_cccl
cccl
cuda_cudart
libcufft
;
@@ -255,7 +255,7 @@ let
buildInputs =
[ ]
++ lib.optionals with_cublas [
cuda_cccl
cccl
cuda_cudart
libcublas
libcufft
@@ -44,7 +44,7 @@ effectiveStdenv.mkDerivation (finalAttrs: {
++ lib.optionals cudaSupport (
with cudaPackages;
[
cuda_cccl # cub/cub.cuh
cccl # cub/cub.cuh
libcublas # cublas_v2.h
libcurand # curand.h
libcusparse # cusparse.h
@@ -45,7 +45,7 @@ stdenv.mkDerivation (finalAttrs: {
++ lib.optionals cudaSupport (
with cudaPackages;
[
cuda_cccl # cub/cub.cuh
cccl # cub/cub.cuh
libcublas # cublas_v2.h
libcurand # curand.h
libcusparse # cusparse.h
+1 -1
View File
@@ -207,7 +207,7 @@ stdenv.mkDerivation (finalAttrs: {
++ lists.optionals cudaSupport (
with cudaPackages;
[
cuda_cccl # <nv/target> and <cuda/std/type_traits>
cccl # <nv/target> and <cuda/std/type_traits>
cuda_cudart # cuda_runtime.h
libcublas # cublas_v2.h
libcusparse # cusparse.h
+1 -1
View File
@@ -129,7 +129,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
openssl
]
++ lib.optionals cudaSupport [
cudaPackages.cuda_cccl
cudaPackages.cccl
cudaPackages.cuda_cudart
cudaPackages.cuda_nvrtc
cudaPackages.libcublas
+1 -1
View File
@@ -68,7 +68,7 @@ stdenv.mkDerivation (finalAttrs: {
++ lib.optional enableMpi mpi
++ lib.optionals cudaSupport [
cudaPackages.cuda_cudart
cudaPackages.cuda_cccl
cudaPackages.cccl
];
postInstall = ''
+1 -1
View File
@@ -83,7 +83,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
alsa-lib
]
++ lib.optionals config.cudaSupport [
cudaPackages.cuda_cccl
cudaPackages.cccl
cudaPackages.cuda_cudart
cudaPackages.cuda_nvrtc
cudaPackages.libcublas
+2 -2
View File
@@ -82,7 +82,7 @@ let
cudaLibs = [
cudaPackages.cuda_cudart
cudaPackages.libcublas
cudaPackages.cuda_cccl
cudaPackages.cccl
];
vulkanLibs = [
@@ -102,7 +102,7 @@ let
(lib.getBin (cudaPackages.cuda_nvcc.__spliced.buildHost or cudaPackages.cuda_nvcc))
];
# cuda_cccl and cuda_cudart both have a LICENSE file in their output
# cccl and cuda_cudart both have a LICENSE file in their output
ignoreCollisions = true;
};
+1 -1
View File
@@ -205,7 +205,7 @@ effectiveStdenv.mkDerivation (finalAttrs: {
++ lib.optionals cudaSupport (
with cudaPackages;
[
cuda_cccl # cub/cub.cuh
cccl # cub/cub.cuh
libcublas # cublas_v2.h
libcurand # curand.h
libcusparse # cusparse.h
+1 -1
View File
@@ -48,7 +48,7 @@ stdenv.mkDerivation (finalAttrs: {
++ lib.optionals cudaSupport [
cudaPackages.cuda_cudart
cudaPackages.cuda_cccl
cudaPackages.cccl
];
cmakeFlags = [
@@ -71,7 +71,7 @@ effectiveStdenv.mkDerivation (finalAttrs: {
(optionals cudaSupport (
with cudaPackages;
[
cuda_cccl
cccl
cuda_cudart
libcublas
]
+1 -1
View File
@@ -60,7 +60,7 @@ effectiveStdenv.mkDerivation rec {
]
++ lib.optionals enableCuda [
cudaPackages.cuda_cudart
cudaPackages.cuda_cccl
cudaPackages.cccl
cudaPackages.libcublas
];
+1 -1
View File
@@ -18,7 +18,7 @@ let
cuda-common-redist = with cudaPackages; [
(lib.getDev cuda_cudart) # cuda_runtime.h
(lib.getLib cuda_cudart)
(lib.getDev cuda_cccl) # <nv/target>
(lib.getDev cccl) # <nv/target>
(lib.getInclude cuda_nvrtc) # nvrtc.h
(lib.getLib cuda_nvrtc)
(lib.getInclude libcublas) # cublas_v2.h
+2 -2
View File
@@ -20,7 +20,7 @@ let
inherit (lib.strings) concatStringsSep;
inherit (cudaPackages)
cuda_cccl
cccl
cuda_cudart
cuda_nvcc
cuda_nvml_dev
@@ -77,7 +77,7 @@ effectiveStdenv.mkDerivation (finalAttrs: {
ucx
]
++ optionals enableCuda [
cuda_cccl
cccl
cuda_cudart
cuda_nvml_dev
nccl
+1 -1
View File
@@ -58,7 +58,7 @@ let
;
cudaBuildInputs = with cudaPackages; [
cuda_cccl # <nv/target>
cccl # <nv/target>
# A temporary hack for reducing the closure size, remove once cudaPackages
# have stopped using lndir: https://github.com/NixOS/nixpkgs/issues/271792
@@ -9,4 +9,11 @@ in
final: _:
builtins.mapAttrs mkRenamed {
# A comment to prevent empty { } from collapsing into a single line
# NVIDIA renamed cuda_cccl to cccl in CUDA 13.3.
# For the sake of simplicity, we updated the attrname tree-wide, accross all cudaPackages version.
cuda_cccl = {
path = "cccl";
package = final.cccl;
};
}
@@ -7,7 +7,7 @@
}:
buildRedist {
redistName = "cuda";
pname = "cuda_cccl";
pname = if cudaAtLeast "13.3" then "cccl" else "cuda_cccl";
# Restrict header-only packages to a single output.
# Also, when using multiple outputs (i.e., `out`, `dev`, and `include`), something isn't being patched correctly,
@@ -3,7 +3,7 @@
backendStdenv,
_cuda,
cmake,
cuda_cccl,
cccl,
cuda_culibos,
cuda_cudart,
cuda_nvcc,
@@ -71,10 +71,10 @@ backendStdenv.mkDerivation (finalAttrs: {
"${lib.getOutput "include" cuda_cudart}/include/cooperative_groups" \
--replace-fail \
"\''${CUDAToolkit_BIN_DIR}/../include/nv" \
"${lib.getOutput "include" cuda_cccl}/include/nv" \
"${lib.getOutput "include" cccl}/include/nv" \
--replace-fail \
"\''${CUDAToolkit_BIN_DIR}/../include/cuda" \
"${lib.getOutput "include" cuda_cccl}/include/cuda"
"${lib.getOutput "include" cccl}/include/cuda"
''
+ lib.optionalString (samplesAtLeast "13") ''
nixLog "patching sample 0_Introduction/matrixMul_nvrtc"
@@ -85,10 +85,10 @@ backendStdenv.mkDerivation (finalAttrs: {
"${lib.getOutput "include" cuda_cudart}/include/cooperative_groups" \
--replace-fail \
"\''${CUDA_INCLUDE_DIR}/cccl/nv" \
"${lib.getOutput "include" cuda_cccl}/include/nv" \
"${lib.getOutput "include" cccl}/include/nv" \
--replace-fail \
"\''${CUDA_INCLUDE_DIR}/cccl/cuda" \
"${lib.getOutput "include" cuda_cccl}/include/cuda"
"${lib.getOutput "include" cccl}/include/cuda"
''
# These three samples give undefined references, like
# nvlink error : Undefined reference to '__cudaCDP2Free' in 'CMakeFiles/cdpBezierTessellation.dir/BezierLineCDP.cu.o'
@@ -184,7 +184,7 @@ backendStdenv.mkDerivation (finalAttrs: {
];
buildInputs = [
cuda_cccl
cccl
cuda_cudart
cuda_nvrtc
cuda_nvtx
@@ -4,7 +4,7 @@
_cuda,
addDriverRunpath,
buildRedist,
cuda_cccl,
cccl,
cuda_compat,
cuda_crt,
cuda_nvcc,
@@ -47,7 +47,7 @@ buildRedist (finalAttrs: {
# Add the dependency on CCCL's include directory.
# - nv/target
# TODO(@connorbaker): Check that the dependency offset for this is correct.
++ [ (lib.getOutput "include" cuda_cccl) ]
++ [ (lib.getOutput "include" cccl) ]
# NOTE: cuda_compat may be null or unavailable
++ lib.optionals (cuda_compat.meta.available or false) [ cuda_compat ];
@@ -5,7 +5,7 @@
setupCudaHook,
cudaAtLeast,
cudaOlder,
cuda_cccl,
cccl,
glibc,
lib,
libnvvm,
@@ -120,7 +120,7 @@ buildRedist (finalAttrs: {
substituteInPlace "''${!outputBin:?}/bin/nvcc.profile" \
--replace-fail \
'$(TOP)/$(_TARGET_DIR_)/include/cccl' \
"${lib.getOutput "include" cuda_cccl}/include"
"${lib.getOutput "include" cccl}/include"
''
# Unconditional patching to switch to the correct include paths.
# NOTE: _TARGET_DIR_ appears to be used for the target architecture, which is relevant for cross-compilation.
@@ -4,7 +4,7 @@
backendStdenv,
cudaAtLeast,
cudaMajorMinorVersion,
cuda_cccl ? null,
cccl ? null,
cuda_crt ? null,
cuda_cudart ? null,
cuda_cuobjdump ? null,
@@ -40,7 +40,7 @@ let
cuda_nvprune
];
targetPackages = [
cuda_cccl
cccl
cuda_cudart
cuda_cupti
cuda_cuxxfilt
@@ -3,7 +3,7 @@
backendStdenv,
buildPackages,
cmake,
cuda_cccl,
cccl,
cuda_cudart,
cuda_nvcc,
cuda_nvml_dev,
@@ -104,7 +104,7 @@ backendStdenv.mkDerivation (finalAttrs: {
enableParallelBuilding = true;
buildInputs = [
cuda_cccl
cccl
cuda_cudart
cuda_nvml_dev
cuda_nvrtc
@@ -4,7 +4,7 @@
{
backendStdenv,
_cuda,
cuda_cccl,
cccl,
cuda_cudart,
cuda_nvcc,
cudaNamePrefix,
@@ -53,7 +53,7 @@ backendStdenv.mkDerivation (finalAttrs: {
];
buildInputs = [
cuda_cccl # <nv/target>
cccl # <nv/target>
cuda_cudart
nccl
]
@@ -1,7 +1,7 @@
{
_cuda,
backendStdenv,
cuda_cccl,
cccl,
cuda_cudart,
cuda_nvcc,
cudaAtLeast,
@@ -82,7 +82,7 @@ backendStdenv.mkDerivation (finalAttrs: {
buildInputs = [
(getInclude cuda_nvcc)
cuda_cccl
cccl
cuda_cudart
];
@@ -1,7 +1,7 @@
{
backendStdenv,
cmake,
cuda_cccl,
cccl,
cuda_cudart,
cuda_nvcc,
cudaNamePrefix,
@@ -26,7 +26,7 @@ backendStdenv.mkDerivation (finalAttrs: {
];
buildInputs = [
cuda_cccl
cccl
cuda_cudart
libcublas
];
@@ -4,7 +4,7 @@
autoPatchelfHook,
backendStdenv,
cmake,
cuda_cccl,
cccl,
cuda_cudart,
cuda_nvcc,
cudatoolkit,
@@ -99,7 +99,7 @@ in
(lib.getDev libcusparse)
cuda_nvcc
(lib.getDev cuda_cudart) # <cuda_runtime_api.h>
cuda_cccl # <nv/target>
cccl # <nv/target>
];
postPatch = prevAttrs.postPatch or "" + ''
+1 -1
View File
@@ -434,7 +434,7 @@ effectiveStdenv.mkDerivation {
]
++ optionals enableCuda [
cudaPackages.cuda_cudart
cudaPackages.cuda_cccl # <thrust/*>
cudaPackages.cccl # <thrust/*>
cudaPackages.libnpp # npp.h
nvidia-optical-flow-sdk
]
@@ -41,7 +41,7 @@ let
# NOTE: torchvision doesn't use cudnn; torch does!
# For this reason it is not included.
cuda-common-redist = with cudaPackages; [
(lib.getDev cuda_cccl) # <thrust/*>
(lib.getDev cccl) # <thrust/*>
(lib.getDev libcublas) # cublas_v2.h
(lib.getLib libcublas)
(lib.getInclude libcublas) # cublasLt.h
@@ -39,7 +39,7 @@ buildPythonPackage rec {
with cudaPackages;
[
cuda_cudart # cuda_runtime.h, -lcudart
cuda_cccl
cccl
libcusparse # cusparse.h
libcusolver # cusolverDn.h
cuda_nvcc
@@ -32,7 +32,7 @@ let
outpaths = lib.filter (outpath: outpath != null) (
with cudaPackages;
[
cuda_cccl # <nv/target>
cccl # <nv/target>
cuda_cudart
cuda_nvcc # <crt/host_defines.h>
cuda_nvprof
@@ -79,7 +79,7 @@ buildPythonPackage.override { inherit (torch) stdenv; } (finalAttrs: {
++ lib.optionals cudaSupport (
with cudaPackages;
[
cuda_cccl # <nv/target>
cccl # <nv/target>
cuda_cudart # cuda_runtime.h
libcublas # cublas_v2.h
libcusolver # cusolverDn.h
@@ -60,7 +60,7 @@ buildPythonPackage.override { inherit (torch) stdenv; } (finalAttrs: {
paths = with cudaPackages; [
(lib.getBin cuda_nvcc) # bin/nvcc, bin/ptxas, nvvm/, nvcc.profile
(lib.getBin cutlass) # include/cute, include/cutlass
(lib.getInclude cuda_cccl) # include/cuda/std/* (libcu++)
(lib.getInclude cccl) # include/cuda/std/* (libcu++)
(lib.getInclude cuda_cudart) # include/cuda_runtime.h, cuda_bf16.h, cuda_fp8.h
(lib.getInclude cuda_cuobjdump) # bin/cuobjdump
];
@@ -68,7 +68,7 @@ let
];
buildInputs = [
cudaPackages.cuda_cccl # <thrust/*>
cudaPackages.cccl # <thrust/*>
cudaPackages.libcublas # cublas_v2.h
cudaPackages.libcurand # curand.h
cudaPackages.libcusolver # cusolverDn.h
@@ -56,7 +56,7 @@ buildPythonPackage (finalAttrs: {
dontUseCmakeConfigure = true;
buildInputs = with cudaPackages; [
cuda_cccl
cccl
cuda_cudart
libcublas
libcurand
@@ -54,7 +54,7 @@ buildPythonPackage {
];
buildInputs = with cudaPackages; [
cuda_cccl # <nv/target>
cccl # <nv/target>
cuda_cudart # cuda_runtime.h
libcufft
libcurand
@@ -116,7 +116,7 @@ let
(lib.getOutput "static" cuda_cudart) # libcudart_static.a
# Headers
(lib.getDev cuda_cccl) # block_load.cuh
(lib.getDev cccl) # block_load.cuh
(lib.getDev cuda_cudart) # cuda.h
(lib.getDev cuda_cupti) # cupti.h
(lib.getDev cuda_nvcc) # See https://github.com/google/jax/issues/19811
@@ -115,7 +115,7 @@ buildPythonPackage.override { stdenv = cudaPackages.backendStdenv; } (finalAttrs
lapack
]
++ (with cudaPackages; [
cuda_cccl # <nv/target>
cccl # <nv/target>
cuda_cudart # CUDA::cuda_driver (driver stub)
libcublas
libcufft
@@ -89,7 +89,7 @@ buildPythonPackage.override { stdenv = stdenvTarget; } rec {
with cudaPackages;
[
cuda_cudart # cuda_runtime.h
cuda_cccl # <thrust/*>
cccl # <thrust/*>
libcublas # cublas_v2.h
]
);
@@ -10,7 +10,6 @@
transformers,
triton,
cudaPackages,
rocmPackages,
config,
cudaSupport ? config.cudaSupport,
which,
@@ -41,7 +40,7 @@ buildPythonPackage rec {
with cudaPackages;
[
cuda_cudart # cuda_runtime.h, -lcudart
cuda_cccl
cccl
libcusparse # cusparse.h
libcusolver # cusolverDn.h
cuda_nvcc
@@ -72,8 +72,8 @@ buildPythonPackage (finalAttrs: {
++ lib.optionals cudaSupport (
with cudaPackages;
[
cccl # <thrust/*>
cuda_cudart # cuda_runtime.h
cuda_cccl # <thrust/*>
libcublas # cublas_v2.h
libcusolver # cusolverDn.h
libcusparse # cusparse.h
@@ -136,7 +136,7 @@ let
cudaComponents = with cudaPackages; [
(cuda_nvcc.__spliced.buildHost or cuda_nvcc)
(cuda_nvprune.__spliced.buildHost or cuda_nvprune)
cuda_cccl # block_load.cuh
cccl # block_load.cuh
cuda_cudart # cuda.h
cuda_cupti # cupti.h
cuda_nvcc # See https://github.com/google/jax/issues/19811
@@ -550,7 +550,7 @@ buildPythonPackage.override { inherit stdenv; } (finalAttrs: {
++ lib.optionals cudaSupport (
with cudaPackages;
[
cuda_cccl # <thrust/*>
cccl # <thrust/*>
cuda_cudart # cuda_runtime.h and libraries
cuda_cupti # For kineto
cuda_nvcc # crt/host_config.h; even though we include this in nativeBuildInputs, it's needed here too
@@ -305,7 +305,7 @@ let
mergedCudaLibraries = with cudaPackages; [
cuda_cudart # cuda_runtime.h, -lcudart
cuda_cccl
cccl
libcurand # curand_kernel.h
libcusparse # cusparse.h
libcusolver # cusolverDn.h
@@ -166,7 +166,7 @@ buildPythonPackage.override { stdenv = effectiveStdenv; } (finalAttrs: {
]
++ lib.optionals cudaSupport [
(lib.getStatic cudaPackages.cuda_nvcc) # dependency on nvptxcompiler_static; no dynamic version available
cudaPackages.cuda_cccl
cudaPackages.cccl
cudaPackages.cuda_cudart
cudaPackages.cuda_nvcc
cudaPackages.cuda_nvrtc
@@ -82,7 +82,7 @@ buildPythonPackage.override { stdenv = effectiveStdenv; } (finalAttrs: {
[
cuda_cudart # cuda_runtime_api.h
libcusparse # cusparse.h
cuda_cccl # nv/target
cccl # nv/target
libcublas # cublas_v2.h
libcusolver # cusolverDn.h
libcurand # curand_kernel.h