nixpkgs mirror (for testing) github.com/NixOS/nixpkgs
nix
at python-updates 134 lines 3.5 kB view raw
1{ 2 _cuda, 3 callPackage, 4 config, 5 lib, 6}: 7let 8 mkCudaPackages = 9 manifestVersions: 10 callPackage ../development/cuda-modules { 11 manifests = _cuda.lib.selectManifests manifestVersions; 12 }; 13 14 # NOTE: 15 # The manifests are largely the same except for TensorRT: 16 # - linux-x86_64 is generally the best supported and can use the latest release 17 # - linux-sbsa (post-Orin Jetson and ARM) comes in second; NVIDIA dropped support for CUDA 12 with 10.13.2 (there is no 18 # 10.13.1), so we use 10.13.0 for all CUDA 12 releases. 19 # - linux-aarch64 (pre-Thor Jetson) is historically least supported; we use the latest release available. 20 21 cudaPackages_12_6 = 22 let 23 inherit (cudaPackages_12_6.backendStdenv) hasJetsonCudaCapability hostPlatform; 24 in 25 mkCudaPackages { 26 cublasmp = "0.6.0"; 27 cuda = "12.6.3"; 28 cudnn = "9.13.0"; 29 cudss = "0.6.0"; 30 cuquantum = "25.09.0"; 31 cusolvermp = "0.7.0"; 32 cusparselt = "0.6.3"; 33 cutensor = "2.3.1"; 34 nppplus = "0.10.0"; 35 nvcomp = "5.0.0.6"; 36 nvjpeg2000 = "0.9.0"; 37 nvpl = "25.5"; 38 nvtiff = "0.5.1"; 39 tensorrt = 40 if hasJetsonCudaCapability then 41 "10.7.0" 42 else if hostPlatform.isAarch64 then 43 "10.13.0" 44 else 45 "10.14.1"; 46 }; 47 48 cudaPackages_12_8 = 49 let 50 inherit (cudaPackages_12_8.backendStdenv) hasJetsonCudaCapability hostPlatform; 51 in 52 mkCudaPackages { 53 cublasmp = "0.6.0"; 54 cuda = "12.8.1"; 55 cudnn = "9.13.0"; 56 cudss = "0.6.0"; 57 cuquantum = "25.09.0"; 58 cusolvermp = "0.7.0"; 59 cusparselt = "0.8.1"; 60 cutensor = "2.3.1"; 61 nppplus = "0.10.0"; 62 nvcomp = "5.0.0.6"; 63 nvjpeg2000 = "0.9.0"; 64 nvpl = "25.5"; 65 nvtiff = "0.5.1"; 66 tensorrt = 67 if hasJetsonCudaCapability then 68 "10.7.0" 69 else if hostPlatform.isAarch64 then 70 "10.13.0" 71 else 72 "10.14.1"; 73 }; 74 75 cudaPackages_12_9 = 76 let 77 inherit (cudaPackages_12_9.backendStdenv) hasJetsonCudaCapability hostPlatform; 78 in 79 mkCudaPackages { 80 cublasmp = "0.6.0"; 81 cuda = "12.9.1"; 82 cudnn = "9.13.0"; 83 cudss = "0.6.0"; 84 cuquantum = "25.09.0"; 85 cusolvermp = "0.7.0"; 86 cusparselt = "0.8.1"; 87 cutensor = "2.3.1"; 88 nppplus = "0.10.0"; 89 nvcomp = "5.0.0.6"; 90 nvjpeg2000 = "0.9.0"; 91 nvpl = "25.5"; 92 nvtiff = "0.5.1"; 93 tensorrt = 94 if hasJetsonCudaCapability then 95 "10.7.0" 96 else if hostPlatform.isAarch64 then 97 "10.13.0" 98 else 99 "10.14.1"; 100 }; 101 102 # NOTE: Thor is supported from CUDA 13.0, so our check needs to capture whether pre-Thor devices were selected. 103 hasPreThorJetsonCudaCapability = lib.any (lib.flip lib.versionOlder "10.1"); 104 105 cudaPackages_13_0 = 106 let 107 inherit (cudaPackages_13_0.backendStdenv) requestedJetsonCudaCapabilities; 108 in 109 mkCudaPackages { 110 cublasmp = "0.6.0"; 111 cuda = "13.0.2"; 112 cudnn = "9.13.0"; 113 cudss = "0.6.0"; 114 cuquantum = "25.09.0"; 115 cusolvermp = "0.7.0"; 116 cusparselt = "0.8.1"; 117 cutensor = "2.3.1"; 118 nppplus = "0.10.0"; 119 nvcomp = "5.0.0.6"; 120 nvjpeg2000 = "0.9.0"; 121 nvpl = "25.5"; 122 nvtiff = "0.5.1"; 123 tensorrt = 124 if hasPreThorJetsonCudaCapability requestedJetsonCudaCapabilities then "10.7.0" else "10.14.1"; 125 }; 126in 127{ 128 inherit 129 cudaPackages_12_6 130 cudaPackages_12_8 131 cudaPackages_12_9 132 cudaPackages_13_0 133 ; 134}