python312Packages.torch: unroll recursive git retrieval (#277789)

authored by Arne Keller and committed by GitHub 2bdbe4c9 da5449bc

+716 -6
+33 -6
pkgs/development/python-modules/torch/default.nix
··· 2 stdenv, 3 lib, 4 fetchFromGitHub, 5 buildPythonPackage, 6 python, 7 config, 8 cudaSupport ? config.cudaSupport, 9 cudaPackages, ··· 219 "Rocm support is currently broken because `rocmPackages.hipblaslt` is unpackaged. (2024-06-09)" = 220 rocmSupport; 221 }; 222 in 223 buildPythonPackage rec { 224 pname = "torch"; ··· 234 ]; 235 cudaPropagateToOutput = "cxxdev"; 236 237 - src = fetchFromGitHub { 238 - owner = "pytorch"; 239 - repo = "pytorch"; 240 - rev = "refs/tags/v${version}"; 241 - fetchSubmodules = true; 242 - hash = "sha256-17lgAcqJN+vir+Zvffy5cXRmNjd5Y80ev8b8pOj9F+g="; 243 }; 244 245 patches = ··· 676 cudaPackages 677 rocmSupport 678 rocmPackages 679 ; 680 cudaCapabilities = if cudaSupport then supportedCudaCapabilities else [ ]; 681 # At least for 1.10.2 `torch.fft` is unavailable unless BLAS provider is MKL. This attribute allows for easy detection of its availability.
··· 2 stdenv, 3 lib, 4 fetchFromGitHub, 5 + fetchFromGitLab, 6 + fetchFromGitea, 7 buildPythonPackage, 8 python, 9 + runCommand, 10 + writeShellScript, 11 config, 12 cudaSupport ? config.cudaSupport, 13 cudaPackages, ··· 223 "Rocm support is currently broken because `rocmPackages.hipblaslt` is unpackaged. (2024-06-09)" = 224 rocmSupport; 225 }; 226 + 227 + git-unroll = fetchFromGitea { 228 + domain = "codeberg.org"; 229 + owner = "gm6k"; 230 + repo = "git-unroll"; 231 + rev = "96bf24f2af153310ec59979c123a8cefda8636db"; 232 + hash = "sha256-BTlq2Pm4l/oypBzKKpxExVPyQ0CcAP8llUnl/fd3DUU="; 233 + }; 234 + 235 + unroll-src = writeShellScript "unroll-src" '' 236 + echo "{ 237 + version, 238 + fetchFromGitLab, 239 + fetchFromGitHub, 240 + runCommand, 241 + }: 242 + assert version == "'"'$1'"'";" 243 + ${git-unroll}/unroll https://github.com/pytorch/pytorch v$1 244 + echo 245 + echo "# Update using: unroll-src [version]" 246 + ''; 247 in 248 buildPythonPackage rec { 249 pname = "torch"; ··· 259 ]; 260 cudaPropagateToOutput = "cxxdev"; 261 262 + src = callPackage ./src.nix { 263 + inherit 264 + version 265 + fetchFromGitHub 266 + fetchFromGitLab 267 + runCommand 268 + ; 269 }; 270 271 patches = ··· 702 cudaPackages 703 rocmSupport 704 rocmPackages 705 + unroll-src 706 ; 707 cudaCapabilities = if cudaSupport then supportedCudaCapabilities else [ ]; 708 # At least for 1.10.2 `torch.fft` is unavailable unless BLAS provider is MKL. This attribute allows for easy detection of its availability.
+683
pkgs/development/python-modules/torch/src.nix
···
··· 1 + { 2 + version, 3 + fetchFromGitLab, 4 + fetchFromGitHub, 5 + runCommand, 6 + }: 7 + assert version == "2.5.1"; 8 + (rec { 9 + src_DCGM = fetchFromGitHub { 10 + owner = "NVIDIA"; 11 + repo = "DCGM"; 12 + rev = "ffde4e54bc7249a6039a5e6b45b395141e1217f9"; 13 + hash = "sha256-jlnq25byEep7wRF3luOIGaiaYjqSVaTBx02N6gE/ox8="; 14 + }; 15 + src_FP16 = fetchFromGitHub { 16 + owner = "Maratyszcza"; 17 + repo = "FP16"; 18 + rev = "4dfe081cf6bcd15db339cf2680b9281b8451eeb3"; 19 + hash = "sha256-B27LtVnL52niaFgPW0pp5Uulub/Q3NvtSDkJNahrSBk="; 20 + }; 21 + src_FXdiv = fetchFromGitHub { 22 + owner = "Maratyszcza"; 23 + repo = "FXdiv"; 24 + rev = "b408327ac2a15ec3e43352421954f5b1967701d1"; 25 + hash = "sha256-BEjscsejYVhRxDAmah5DT3+bglp8G5wUTTYL7+HjWds="; 26 + }; 27 + src_GSL = fetchFromGitHub { 28 + owner = "microsoft"; 29 + repo = "GSL"; 30 + rev = "6f4529395c5b7c2d661812257cd6780c67e54afa"; 31 + hash = "sha256-sNTDH1ohz+rcnBvA5KkarHKdRMQPW0c2LeSVPdEYx6Q="; 32 + }; 33 + src_NNPACK = fetchFromGitHub { 34 + owner = "Maratyszcza"; 35 + repo = "NNPACK"; 36 + rev = "c07e3a0400713d546e0dea2d5466dd22ea389c73"; 37 + hash = "sha256-GzF53u1ELtmEH3WbBzGBemlQhjj3EIKB+37wMtSYE2g="; 38 + }; 39 + src_NVTX = fetchFromGitHub { 40 + owner = "NVIDIA"; 41 + repo = "NVTX"; 42 + rev = "e170594ac7cf1dac584da473d4ca9301087090c1"; 43 + hash = "sha256-n34BPxRnAW301ba1lXqSlGh7jaPqNjpp45GnJ+yDapI="; 44 + }; 45 + src_PeachPy = fetchFromGitHub { 46 + owner = "malfet"; 47 + repo = "PeachPy"; 48 + rev = "f45429b087dd7d5bc78bb40dc7cf06425c252d67"; 49 + hash = "sha256-eyhfnOOZPtsJwjkF6ybv3F77fyjaV6wzgu+LxadZVw0="; 50 + }; 51 + src_VulkanMemoryAllocator = fetchFromGitHub { 52 + owner = "GPUOpen-LibrariesAndSDKs"; 53 + repo = "VulkanMemoryAllocator"; 54 + rev = "a6bfc237255a6bac1513f7c1ebde6d8aed6b5191"; 55 + hash = "sha256-urUebQaPTgCECmm4Espri1HqYGy0ueAqTBu/VSiX/8I="; 56 + }; 57 + src_XNNPACK = fetchFromGitHub { 58 + owner = "google"; 59 + repo = "XNNPACK"; 60 + rev = "fcbf55af6cf28a4627bcd1f703ab7ad843f0f3a2"; 61 + hash = "sha256-lnycZPoswZQwRWJjR4if4qp8O9KhgYNbtwjNuoem48w="; 62 + }; 63 + src_asmjit = fetchFromGitHub { 64 + owner = "asmjit"; 65 + repo = "asmjit"; 66 + rev = "d3fbf7c9bc7c1d1365a94a45614b91c5a3706b81"; 67 + hash = "sha256-0Wv9dxrh9GfajTFb+NpguqqSWH0mqJAj03bxFVJbft8="; 68 + }; 69 + src_benchmark = fetchFromGitHub { 70 + owner = "google"; 71 + repo = "benchmark"; 72 + rev = "0d98dba29d66e93259db7daa53a9327df767a415"; 73 + hash = "sha256-yUiFxi80FWBmTZgqmqTMf9oqcBeg3o4I4vKd4djyRWY="; 74 + }; 75 + src_benchmark_onnx = fetchFromGitHub { 76 + owner = "google"; 77 + repo = "benchmark"; 78 + rev = "2dd015dfef425c866d9a43f2c67d8b52d709acb6"; 79 + hash = "sha256-pUW9YVaujs/y00/SiPqDgK4wvVsaM7QUp/65k0t7Yr0="; 80 + }; 81 + src_benchmark_opentelemetry-cpp = fetchFromGitHub { 82 + owner = "google"; 83 + repo = "benchmark"; 84 + rev = "d572f4777349d43653b21d6c2fc63020ab326db2"; 85 + hash = "sha256-gg3g/0Ki29FnGqKv9lDTs5oA9NjH23qQ+hTdVtSU+zo="; 86 + }; 87 + src_benchmark_protobuf = fetchFromGitHub { 88 + owner = "google"; 89 + repo = "benchmark"; 90 + rev = "5b7683f49e1e9223cf9927b24f6fd3d6bd82e3f8"; 91 + hash = "sha256-iFRgjLkftuszAqBnmS9GXU8BwYnabmwMAQyw19sfjb4="; 92 + }; 93 + src_civetweb = fetchFromGitHub { 94 + owner = "civetweb"; 95 + repo = "civetweb"; 96 + rev = "eefb26f82b233268fc98577d265352720d477ba4"; 97 + hash = "sha256-Qh6BGPk7a01YzCeX42+Og9M+fjXRs7kzNUCyT4mYab4="; 98 + }; 99 + src_clang-cindex-python3 = fetchFromGitHub { 100 + owner = "wjakob"; 101 + repo = "clang-cindex-python3"; 102 + rev = "6a00cbc4a9b8e68b71caf7f774b3f9c753ae84d5"; 103 + hash = "sha256-IDUIuAvgCzWaHoTJUZrH15bqoVcP8bZk+Gs1Ae6/CpY="; 104 + }; 105 + src_cpp-httplib = fetchFromGitHub { 106 + owner = "yhirose"; 107 + repo = "cpp-httplib"; 108 + rev = "3b6597bba913d51161383657829b7e644e59c006"; 109 + hash = "sha256-dd9NckF1mGhQOyV1LO07QyP51l1kSpYQOH0GkG4v2eE="; 110 + }; 111 + src_cpr = fetchFromGitHub { 112 + owner = "libcpr"; 113 + repo = "cpr"; 114 + rev = "871ed52d350214a034f6ef8a3b8f51c5ce1bd400"; 115 + hash = "sha256-TxoDCIa7pS+nfI8hNiGIRQKpYNrKSd1yCXPfVXPcRW8="; 116 + }; 117 + src_cpuinfo = fetchFromGitHub { 118 + owner = "pytorch"; 119 + repo = "cpuinfo"; 120 + rev = "094fc30b9256f54dad5ad23bcbfb5de74781422f"; 121 + hash = "sha256-JbIEQ6jFprbMpeH8IBhuRo3VXxo8a32lmT4yfxSIEj0="; 122 + }; 123 + src_cpuinfo_fbgemm = fetchFromGitHub { 124 + owner = "pytorch"; 125 + repo = "cpuinfo"; 126 + rev = "ed8b86a253800bafdb7b25c5c399f91bff9cb1f3"; 127 + hash = "sha256-YRqBU83AjxbSE5zquhi4iIiJna/qFWA0jo2GBifqzi8="; 128 + }; 129 + src_cudnn-frontend = fetchFromGitHub { 130 + owner = "NVIDIA"; 131 + repo = "cudnn-frontend"; 132 + rev = "2533f5e5c1877fd76266133c1479ef1643ce3a8b"; 133 + hash = "sha256-z9HH/ZEPv+Nf0eB0npjJiakjXx6cwoesKKnYNS1r9TE="; 134 + }; 135 + src_cutlass = fetchFromGitHub { 136 + owner = "NVIDIA"; 137 + repo = "cutlass"; 138 + rev = "bbe579a9e3beb6ea6626d9227ec32d0dae119a49"; 139 + hash = "sha256-81O80F3MMOn22N9UaXLU6/9DTVWenYvKhLTHoxw8EEU="; 140 + }; 141 + src_cutlass_fbgemm = fetchFromGitHub { 142 + owner = "NVIDIA"; 143 + repo = "cutlass"; 144 + rev = "fc9ebc645b63f3a6bc80aaefde5c063fb72110d6"; 145 + hash = "sha256-e2SwXNNwjl/1fV64b+mOJvwGDYeO1LFcqZGbNten37U="; 146 + }; 147 + src_dynolog = fetchFromGitHub { 148 + owner = "facebookincubator"; 149 + repo = "dynolog"; 150 + rev = "7d04a0053a845370ae06ce317a22a48e9edcc74e"; 151 + hash = "sha256-Je6wAz+uJ/AiAnSZVQ4+pGajZ8DymS0qI9ekB8fGYOo="; 152 + }; 153 + src_eigen = fetchFromGitLab { 154 + domain = "gitlab.com"; 155 + owner = "libeigen"; 156 + repo = "eigen"; 157 + rev = "3147391d946bb4b6c68edd901f2add6ac1f31f8c"; 158 + hash = "sha256-1/4xMetKMDOgZgzz3WMxfHUEpmdAm52RqZvz6i0mLEw="; 159 + }; 160 + src_fbgemm = fetchFromGitHub { 161 + owner = "pytorch"; 162 + repo = "fbgemm"; 163 + rev = "dbc3157bf256f1339b3fa1fef2be89ac4078be0e"; 164 + hash = "sha256-PJiFtLnPA6IgxZ2sXIcyyjFRGtb+sG5y2hiWEwFuBOU="; 165 + }; 166 + src_fbjni = fetchFromGitHub { 167 + owner = "facebookincubator"; 168 + repo = "fbjni"; 169 + rev = "7e1e1fe3858c63c251c637ae41a20de425dde96f"; 170 + hash = "sha256-PsgUHtCE3dNR2QdUnRjrXb0ZKZNGwFkA8RWYkZEklEY="; 171 + }; 172 + src_flatbuffers = fetchFromGitHub { 173 + owner = "google"; 174 + repo = "flatbuffers"; 175 + rev = "01834de25e4bf3975a9a00e816292b1ad0fe184b"; 176 + hash = "sha256-h0lF7jf1cDVVyqhUCi7D0NoZ3b4X/vWXsFplND80lGs="; 177 + }; 178 + src_fmt = fetchFromGitHub { 179 + owner = "fmtlib"; 180 + repo = "fmt"; 181 + rev = "0c9fce2ffefecfdce794e1859584e25877b7b592"; 182 + hash = "sha256-IKNt4xUoVi750zBti5iJJcCk3zivTt7nU12RIf8pM+0="; 183 + }; 184 + src_fmt_dynolog = fetchFromGitHub { 185 + owner = "fmtlib"; 186 + repo = "fmt"; 187 + rev = "cd4af11efc9c622896a3e4cb599fa28668ca3d05"; 188 + hash = "sha256-Ks3UG3V0Pz6qkKYFhy71ZYlZ9CPijO6GBrfMqX5zAp8="; 189 + }; 190 + src_fmt_kineto = fetchFromGitHub { 191 + owner = "fmtlib"; 192 + repo = "fmt"; 193 + rev = "0041a40c1350ba702d475b9c4ad62da77caea164"; 194 + hash = "sha256-PtzSB2mekUT7bjhXC/+F5UpSUvcdIkXTWnIz+jkAUuU="; 195 + }; 196 + src_gemmlowp = fetchFromGitHub { 197 + owner = "google"; 198 + repo = "gemmlowp"; 199 + rev = "3fb5c176c17c765a3492cd2f0321b0dab712f350"; 200 + hash = "sha256-G3PAf9j7Tb4dUoaV9Tmxkkfu3v+w0uFbZ+MWS68tlRw="; 201 + }; 202 + src_gflags = fetchFromGitHub { 203 + owner = "gflags"; 204 + repo = "gflags"; 205 + rev = "e171aa2d15ed9eb17054558e0b3a6a413bb01067"; 206 + hash = "sha256-4NLd/p72H7ZiFCCVjTfM/rDvZ8CVPMxYpnJ2O1od8ZA="; 207 + }; 208 + src_gflags_gflags = fetchFromGitHub { 209 + owner = "gflags"; 210 + repo = "gflags"; 211 + rev = "8411df715cf522606e3b1aca386ddfc0b63d34b4"; 212 + hash = "sha256-Bb4g64u5a0QRWwDl1ryNXmht6NKFWPW9bAF07yYRJ6I="; 213 + }; 214 + src_glog = fetchFromGitHub { 215 + owner = "google"; 216 + repo = "glog"; 217 + rev = "b33e3bad4c46c8a6345525fd822af355e5ef9446"; 218 + hash = "sha256-xqRp9vaauBkKz2CXbh/Z4TWqhaUtqfbsSlbYZR/kW9s="; 219 + }; 220 + src_gloo = fetchFromGitHub { 221 + owner = "facebookincubator"; 222 + repo = "gloo"; 223 + rev = "5354032ea08eadd7fc4456477f7f7c6308818509"; 224 + hash = "sha256-JMLtxyQz7jechJ5DmMq0guOfL9leI6khdI9g/5Ckgfc="; 225 + }; 226 + src_googletest = fetchFromGitHub { 227 + owner = "google"; 228 + repo = "googletest"; 229 + rev = "e2239ee6043f73722e7aa812a459f54a28552929"; 230 + hash = "sha256-SjlJxushfry13RGA7BCjYC9oZqV4z6x8dOiHfl/wpF0="; 231 + }; 232 + src_googletest_dynolog = fetchFromGitHub { 233 + owner = "google"; 234 + repo = "googletest"; 235 + rev = "58d77fa8070e8cec2dc1ed015d66b454c8d78850"; 236 + hash = "sha256-W+OxRTVtemt2esw4P7IyGWXOonUN5ZuscjvzqkYvZbM="; 237 + }; 238 + src_googletest_fbgemm = fetchFromGitHub { 239 + owner = "google"; 240 + repo = "googletest"; 241 + rev = "cbf019de22c8dd37b2108da35b2748fd702d1796"; 242 + hash = "sha256-G6NihPly7czG2NOX66kFfcf5ya+XRrUWt4SP1Y9JPzs="; 243 + }; 244 + src_googletest_kineto = fetchFromGitHub { 245 + owner = "google"; 246 + repo = "googletest"; 247 + rev = "7aca84427f224eeed3144123d5230d5871e93347"; 248 + hash = "sha256-ML144v86Kb9KSyxpqn8+XdKeU8r53PiMyh2ZzNYDyZU="; 249 + }; 250 + src_googletest_opentelemetry-cpp = fetchFromGitHub { 251 + owner = "google"; 252 + repo = "googletest"; 253 + rev = "b796f7d44681514f58a683a3a71ff17c94edb0c1"; 254 + hash = "sha256-LVLEn+e7c8013pwiLzJiiIObyrlbBHYaioO/SWbItPQ="; 255 + }; 256 + src_googletest_protobuf = fetchFromGitHub { 257 + owner = "google"; 258 + repo = "googletest"; 259 + rev = "5ec7f0c4a113e2f18ac2c6cc7df51ad6afc24081"; 260 + hash = "sha256-Zh7t6kOabEZxIuTwREerNSgbZLPnGWv78h0wQQAIuT4="; 261 + }; 262 + src_googletest_tensorpipe = fetchFromGitHub { 263 + owner = "google"; 264 + repo = "googletest"; 265 + rev = "aee0f9d9b5b87796ee8a0ab26b7587ec30e8858e"; 266 + hash = "sha256-L2HR+QTQmagk92JiuW3TRx47so33xQvewdeYL1ipUPs="; 267 + }; 268 + src_hipify_torch = fetchFromGitHub { 269 + owner = "ROCmSoftwarePlatform"; 270 + repo = "hipify_torch"; 271 + rev = "23f53b025b466d8ec3c45d52290d3442f7fbe6b1"; 272 + hash = "sha256-ohbGKy0sxa5pQy9EwsZk2UWmjveCZaJu/PEK2MLbjII="; 273 + }; 274 + src_ideep = fetchFromGitHub { 275 + owner = "intel"; 276 + repo = "ideep"; 277 + rev = "41d636c2bbcea6bff0faf97cdb65a48cdde987af"; 278 + hash = "sha256-i4MK6zTScB0healwSoTNBP+UY2dHUfyyDUfBhDDSBCc="; 279 + }; 280 + src_ittapi = fetchFromGitHub { 281 + owner = "intel"; 282 + repo = "ittapi"; 283 + rev = "5b8a7d7422611c3a0d799fb5fc5dd4abfae35b42"; 284 + hash = "sha256-VxJky2TF3RcIMqjNaAK/mvpC0afkwpAsY0cD6Ergkls="; 285 + }; 286 + src_json = fetchFromGitHub { 287 + owner = "nlohmann"; 288 + repo = "json"; 289 + rev = "87cda1d6646592ac5866dc703c8e1839046a6806"; 290 + hash = "sha256-lXYJGWwLyQPqvxnDRWoDLXdjiD81r1eNHi7vRdbIuJ0="; 291 + }; 292 + src_json_dynolog = fetchFromGitHub { 293 + owner = "nlohmann"; 294 + repo = "json"; 295 + rev = "4f8fba14066156b73f1189a2b8bd568bde5284c5"; 296 + hash = "sha256-DTsZrdB9GcaNkx7ZKxcgCA3A9ShM5icSF0xyGguJNbk="; 297 + }; 298 + src_json_opentelemetry-cpp = fetchFromGitHub { 299 + owner = "nlohmann"; 300 + repo = "json"; 301 + rev = "bc889afb4c5bf1c0d8ee29ef35eaaf4c8bef8a5d"; 302 + hash = "sha256-SUdhIV7tjtacf5DkoWk9cnkfyMlrkg8ZU7XnPZd22Tw="; 303 + }; 304 + src_kineto = fetchFromGitHub { 305 + owner = "pytorch"; 306 + repo = "kineto"; 307 + rev = "d9753139d181b9ff42872465aac0e5d3018be415"; 308 + hash = "sha256-m1Uul9HKZLAiST7GQmvd9+9ziJSU+9Hjq8D24KiAyto="; 309 + }; 310 + src_libnop = fetchFromGitHub { 311 + owner = "google"; 312 + repo = "libnop"; 313 + rev = "910b55815be16109f04f4180e9adee14fb4ce281"; 314 + hash = "sha256-AsPZt+ylfdGpytQ1RoQljKeXE2uGkGONCaWzLK2sZhA="; 315 + }; 316 + src_libuv = fetchFromGitHub { 317 + owner = "libuv"; 318 + repo = "libuv"; 319 + rev = "1dff88e5161cba5c59276d2070d2e304e4dcb242"; 320 + hash = "sha256-i6AYD1Ony0L2+3yWK6bxOfwoZEvd9qCg33QSqA7bRXI="; 321 + }; 322 + src_mimalloc = fetchFromGitHub { 323 + owner = "microsoft"; 324 + repo = "mimalloc"; 325 + rev = "b66e3214d8a104669c2ec05ae91ebc26a8f5ab78"; 326 + hash = "sha256-uwuqln08Hx1d2l7GNn8/8hzOA1Pmzob5g17XgFb+blg="; 327 + }; 328 + src_mkl-dnn = fetchFromGitHub { 329 + owner = "intel"; 330 + repo = "mkl-dnn"; 331 + rev = "66f0cb9eb66affd2da3bf5f8d897376f04aae6af"; 332 + hash = "sha256-/ERkk6bgGEKoJEVdnBxMFEzB8pii71t3zQZNtyg+TdQ="; 333 + }; 334 + src_nccl = fetchFromGitHub { 335 + owner = "NVIDIA"; 336 + repo = "nccl"; 337 + rev = "ab2b89c4c339bd7f816fbc114a4b05d386b66290"; 338 + hash = "sha256-IF2tILwW8XnzSmfn7N1CO7jXL95gUp02guIW5n1eaig="; 339 + }; 340 + src_onnx = fetchFromGitHub { 341 + owner = "onnx"; 342 + repo = "onnx"; 343 + rev = "3bf92c03a9f27eba3bda1e5b9e63ea20ec213557"; 344 + hash = "sha256-JmxnsHRrzj2QzPz3Yndw0MmgZJ8MDYxHjuQ7PQkQsDg="; 345 + }; 346 + src_opentelemetry-cpp = fetchFromGitHub { 347 + owner = "open-telemetry"; 348 + repo = "opentelemetry-cpp"; 349 + rev = "a799f4aed9c94b765dcdaabaeab7d5e7e2310878"; 350 + hash = "sha256-jLRUpB9aDvxsc7B42b08vN2rygN/ycgOyt78i2Hms0Q="; 351 + }; 352 + src_opentelemetry-proto = fetchFromGitHub { 353 + owner = "open-telemetry"; 354 + repo = "opentelemetry-proto"; 355 + rev = "4ca4f0335c63cda7ab31ea7ed70d6553aee14dce"; 356 + hash = "sha256-A14YrqvBAEBBPzvxcNVY2sJok+54/mHKNQPRaf9QLzs="; 357 + }; 358 + src_opentracing-cpp = fetchFromGitHub { 359 + owner = "opentracing"; 360 + repo = "opentracing-cpp"; 361 + rev = "06b57f48ded1fa3bdd3d4346f6ef29e40e08eaf5"; 362 + hash = "sha256-XlQi26ynXKDwA86DwsDw+hhKR8bcdnrtFH1CpAzVlLs="; 363 + }; 364 + src_pfs = fetchFromGitHub { 365 + owner = "dtrugman"; 366 + repo = "pfs"; 367 + rev = "f68a2fa8ea36c783bdd760371411fcb495aa3150"; 368 + hash = "sha256-VB7/7hi4vZKgpjpgir+CyWIMwoNLHGRIXPJvVOn8Pq4="; 369 + }; 370 + src_pocketfft = fetchFromGitHub { 371 + owner = "mreineck"; 372 + repo = "pocketfft"; 373 + rev = "9d3ab05a7fffbc71a492bc6a17be034e83e8f0fe"; 374 + hash = "sha256-RSbimayr8Np7YP0aUo1MNusFmhi9jjDfgGXbiISR+/8="; 375 + }; 376 + src_prometheus-cpp = fetchFromGitHub { 377 + owner = "jupp0r"; 378 + repo = "prometheus-cpp"; 379 + rev = "c9ffcdda9086ffd9e1283ea7a0276d831f3c8a8d"; 380 + hash = "sha256-qx6oBxd0YrUyFq+7ArnKBqOwrl5X8RS9nErhRDUJ7+8="; 381 + }; 382 + src_protobuf = fetchFromGitHub { 383 + owner = "protocolbuffers"; 384 + repo = "protobuf"; 385 + rev = "d1eca4e4b421cd2997495c4b4e65cea6be4e9b8a"; 386 + hash = "sha256-InCW/Sb4E7dQeg3VHgpCtm91qqfh0Qpmu4ZzKffacOQ="; 387 + }; 388 + src_psimd = fetchFromGitHub { 389 + owner = "Maratyszcza"; 390 + repo = "psimd"; 391 + rev = "072586a71b55b7f8c584153d223e95687148a900"; 392 + hash = "sha256-lV+VZi2b4SQlRYrhKx9Dxc6HlDEFz3newvcBjTekupo="; 393 + }; 394 + src_pthreadpool = fetchFromGitHub { 395 + owner = "Maratyszcza"; 396 + repo = "pthreadpool"; 397 + rev = "4fe0e1e183925bf8cfa6aae24237e724a96479b8"; 398 + hash = "sha256-R4YmNzWEELSkAws/ejmNVxqXDTJwcqjLU/o/HvgRn2E="; 399 + }; 400 + src_pybind11 = fetchFromGitHub { 401 + owner = "pybind"; 402 + repo = "pybind11"; 403 + rev = "7c33cdc2d39c7b99a122579f53bc94c8eb3332ff"; 404 + hash = "sha256-cpxhrTFihA+gWmX62a+EQF3lccUyvu+d1MU2IC/CN6Q="; 405 + }; 406 + src_pybind11_onnx = fetchFromGitHub { 407 + owner = "pybind"; 408 + repo = "pybind11"; 409 + rev = "5b0a6fc2017fcc176545afe3e09c9f9885283242"; 410 + hash = "sha256-n7nLEG2+sSR9wnxM+C8FWc2B+Mx74Pan1+IQf+h2bGU="; 411 + }; 412 + src_pybind11_tensorpipe = fetchFromGitHub { 413 + owner = "pybind"; 414 + repo = "pybind11"; 415 + rev = "a23996fce38ff6ccfbcdc09f1e63f2c4be5ea2ef"; 416 + hash = "sha256-3TALLHJAeWCSf88oBgLyyUoI/HyWGasAcAy4fGOQt04="; 417 + }; 418 + src_pytorch = fetchFromGitHub { 419 + owner = "pytorch"; 420 + repo = "pytorch"; 421 + rev = "v2.5.1"; 422 + hash = "sha256-GknW0DZAx2at+SwjKm2HrjCPuvaeXXm1PD7Vep/aTBQ="; 423 + }; 424 + src_sleef = fetchFromGitHub { 425 + owner = "shibatch"; 426 + repo = "sleef"; 427 + rev = "60e76d2bce17d278b439d9da17177c8f957a9e9b"; 428 + hash = "sha256-JfARLkdt4je8ll+oqPGJqzUCQbsXoJ0bbX3jf0aHd0o="; 429 + }; 430 + src_tensorpipe = fetchFromGitHub { 431 + owner = "pytorch"; 432 + repo = "tensorpipe"; 433 + rev = "52791a2fd214b2a9dc5759d36725909c1daa7f2e"; 434 + hash = "sha256-i+CtjNFPDUzFCPxP0//jMLJDrQoorg0On9NfoVaMUxI="; 435 + }; 436 + src_vcpkg = fetchFromGitHub { 437 + owner = "Microsoft"; 438 + repo = "vcpkg"; 439 + rev = "8eb57355a4ffb410a2e94c07b4dca2dffbee8e50"; 440 + hash = "sha256-u+4vyOphnowoaZgfkCbzF7Q4tuz2GN1bHylaKw352Lc="; 441 + }; 442 + src_DCGM_recursive = src_DCGM; 443 + src_FP16_recursive = src_FP16; 444 + src_FXdiv_recursive = src_FXdiv; 445 + src_GSL_recursive = src_GSL; 446 + src_NNPACK_recursive = src_NNPACK; 447 + src_NVTX_recursive = src_NVTX; 448 + src_PeachPy_recursive = src_PeachPy; 449 + src_VulkanMemoryAllocator_recursive = src_VulkanMemoryAllocator; 450 + src_XNNPACK_recursive = src_XNNPACK; 451 + src_asmjit_recursive = src_asmjit; 452 + src_benchmark_recursive = src_benchmark; 453 + src_benchmark_onnx_recursive = src_benchmark_onnx; 454 + src_benchmark_opentelemetry-cpp_recursive = src_benchmark_opentelemetry-cpp; 455 + src_benchmark_protobuf_recursive = src_benchmark_protobuf; 456 + src_civetweb_recursive = src_civetweb; 457 + src_clang-cindex-python3_recursive = src_clang-cindex-python3; 458 + src_cpp-httplib_recursive = src_cpp-httplib; 459 + src_cpr_recursive = src_cpr; 460 + src_cpuinfo_recursive = src_cpuinfo; 461 + src_cpuinfo_fbgemm_recursive = src_cpuinfo_fbgemm; 462 + src_cudnn-frontend_recursive = src_cudnn-frontend; 463 + src_cutlass_recursive = src_cutlass; 464 + src_cutlass_fbgemm_recursive = src_cutlass_fbgemm; 465 + src_dynolog_recursive = runCommand "dynolog" { } '' 466 + cp -r ${src_dynolog} $out 467 + chmod u+w $out/third_party/DCGM 468 + cp -r ${src_DCGM_recursive}/* $out/third_party/DCGM 469 + chmod u+w $out/third_party/cpr 470 + cp -r ${src_cpr_recursive}/* $out/third_party/cpr 471 + chmod u+w $out/third_party/fmt 472 + cp -r ${src_fmt_dynolog_recursive}/* $out/third_party/fmt 473 + chmod u+w $out/third_party/gflags 474 + cp -r ${src_gflags_recursive}/* $out/third_party/gflags 475 + chmod u+w $out/third_party/glog 476 + cp -r ${src_glog_recursive}/* $out/third_party/glog 477 + chmod u+w $out/third_party/googletest 478 + cp -r ${src_googletest_dynolog_recursive}/* $out/third_party/googletest 479 + chmod u+w $out/third_party/json 480 + cp -r ${src_json_dynolog_recursive}/* $out/third_party/json 481 + chmod u+w $out/third_party/pfs 482 + cp -r ${src_pfs_recursive}/* $out/third_party/pfs 483 + ''; 484 + src_eigen_recursive = src_eigen; 485 + src_fbgemm_recursive = runCommand "fbgemm" { } '' 486 + cp -r ${src_fbgemm} $out 487 + chmod u+w $out/third_party/asmjit 488 + cp -r ${src_asmjit_recursive}/* $out/third_party/asmjit 489 + chmod u+w $out/third_party/cpuinfo 490 + cp -r ${src_cpuinfo_fbgemm_recursive}/* $out/third_party/cpuinfo 491 + chmod u+w $out/third_party/cutlass 492 + cp -r ${src_cutlass_fbgemm_recursive}/* $out/third_party/cutlass 493 + chmod u+w $out/third_party/googletest 494 + cp -r ${src_googletest_fbgemm_recursive}/* $out/third_party/googletest 495 + chmod u+w $out/third_party/hipify_torch 496 + cp -r ${src_hipify_torch_recursive}/* $out/third_party/hipify_torch 497 + ''; 498 + src_fbjni_recursive = src_fbjni; 499 + src_flatbuffers_recursive = src_flatbuffers; 500 + src_fmt_recursive = src_fmt; 501 + src_fmt_dynolog_recursive = src_fmt_dynolog; 502 + src_fmt_kineto_recursive = src_fmt_kineto; 503 + src_gemmlowp_recursive = src_gemmlowp; 504 + src_gflags_recursive = runCommand "gflags" { } '' 505 + cp -r ${src_gflags} $out 506 + chmod u+w $out/doc 507 + cp -r ${src_gflags_gflags_recursive}/* $out/doc 508 + ''; 509 + src_gflags_gflags_recursive = src_gflags_gflags; 510 + src_glog_recursive = src_glog; 511 + src_gloo_recursive = src_gloo; 512 + src_googletest_recursive = src_googletest; 513 + src_googletest_dynolog_recursive = src_googletest_dynolog; 514 + src_googletest_fbgemm_recursive = src_googletest_fbgemm; 515 + src_googletest_kineto_recursive = src_googletest_kineto; 516 + src_googletest_opentelemetry-cpp_recursive = src_googletest_opentelemetry-cpp; 517 + src_googletest_protobuf_recursive = src_googletest_protobuf; 518 + src_googletest_tensorpipe_recursive = src_googletest_tensorpipe; 519 + src_hipify_torch_recursive = src_hipify_torch; 520 + src_ideep_recursive = runCommand "ideep" { } '' 521 + cp -r ${src_ideep} $out 522 + chmod u+w $out/mkl-dnn 523 + cp -r ${src_mkl-dnn_recursive}/* $out/mkl-dnn 524 + ''; 525 + src_ittapi_recursive = src_ittapi; 526 + src_json_recursive = src_json; 527 + src_json_dynolog_recursive = src_json_dynolog; 528 + src_json_opentelemetry-cpp_recursive = src_json_opentelemetry-cpp; 529 + src_kineto_recursive = runCommand "kineto" { } '' 530 + cp -r ${src_kineto} $out 531 + chmod u+w $out/libkineto/third_party/dynolog 532 + cp -r ${src_dynolog_recursive}/* $out/libkineto/third_party/dynolog 533 + chmod u+w $out/libkineto/third_party/fmt 534 + cp -r ${src_fmt_kineto_recursive}/* $out/libkineto/third_party/fmt 535 + chmod u+w $out/libkineto/third_party/googletest 536 + cp -r ${src_googletest_kineto_recursive}/* $out/libkineto/third_party/googletest 537 + ''; 538 + src_libnop_recursive = src_libnop; 539 + src_libuv_recursive = src_libuv; 540 + src_mimalloc_recursive = src_mimalloc; 541 + src_mkl-dnn_recursive = src_mkl-dnn; 542 + src_nccl_recursive = src_nccl; 543 + src_onnx_recursive = runCommand "onnx" { } '' 544 + cp -r ${src_onnx} $out 545 + chmod u+w $out/third_party/benchmark 546 + cp -r ${src_benchmark_onnx_recursive}/* $out/third_party/benchmark 547 + chmod u+w $out/third_party/pybind11 548 + cp -r ${src_pybind11_onnx_recursive}/* $out/third_party/pybind11 549 + ''; 550 + src_opentelemetry-cpp_recursive = runCommand "opentelemetry-cpp" { } '' 551 + cp -r ${src_opentelemetry-cpp} $out 552 + chmod u+w $out/third_party/benchmark 553 + cp -r ${src_benchmark_opentelemetry-cpp_recursive}/* $out/third_party/benchmark 554 + chmod u+w $out/third_party/googletest 555 + cp -r ${src_googletest_opentelemetry-cpp_recursive}/* $out/third_party/googletest 556 + chmod u+w $out/third_party/ms-gsl 557 + cp -r ${src_GSL_recursive}/* $out/third_party/ms-gsl 558 + chmod u+w $out/third_party/nlohmann-json 559 + cp -r ${src_json_opentelemetry-cpp_recursive}/* $out/third_party/nlohmann-json 560 + chmod u+w $out/third_party/opentelemetry-proto 561 + cp -r ${src_opentelemetry-proto_recursive}/* $out/third_party/opentelemetry-proto 562 + chmod u+w $out/third_party/opentracing-cpp 563 + cp -r ${src_opentracing-cpp_recursive}/* $out/third_party/opentracing-cpp 564 + chmod u+w $out/third_party/prometheus-cpp 565 + cp -r ${src_prometheus-cpp_recursive}/* $out/third_party/prometheus-cpp 566 + chmod u+w $out/tools/vcpkg 567 + cp -r ${src_vcpkg_recursive}/* $out/tools/vcpkg 568 + ''; 569 + src_opentelemetry-proto_recursive = src_opentelemetry-proto; 570 + src_opentracing-cpp_recursive = src_opentracing-cpp; 571 + src_pfs_recursive = src_pfs; 572 + src_pocketfft_recursive = src_pocketfft; 573 + src_prometheus-cpp_recursive = runCommand "prometheus-cpp" { } '' 574 + cp -r ${src_prometheus-cpp} $out 575 + chmod u+w $out/3rdparty/civetweb 576 + cp -r ${src_civetweb_recursive}/* $out/3rdparty/civetweb 577 + chmod u+w $out/3rdparty/googletest 578 + cp -r ${src_googletest_recursive}/* $out/3rdparty/googletest 579 + ''; 580 + src_protobuf_recursive = runCommand "protobuf" { } '' 581 + cp -r ${src_protobuf} $out 582 + chmod u+w $out/third_party/benchmark 583 + cp -r ${src_benchmark_protobuf_recursive}/* $out/third_party/benchmark 584 + chmod u+w $out/third_party/googletest 585 + cp -r ${src_googletest_protobuf_recursive}/* $out/third_party/googletest 586 + ''; 587 + src_psimd_recursive = src_psimd; 588 + src_pthreadpool_recursive = src_pthreadpool; 589 + src_pybind11_recursive = src_pybind11; 590 + src_pybind11_onnx_recursive = src_pybind11_onnx; 591 + src_pybind11_tensorpipe_recursive = runCommand "pybind11_tensorpipe" { } '' 592 + cp -r ${src_pybind11_tensorpipe} $out 593 + chmod u+w $out/tools/clang 594 + cp -r ${src_clang-cindex-python3_recursive}/* $out/tools/clang 595 + ''; 596 + src_pytorch_recursive = runCommand "pytorch" { } '' 597 + cp -r ${src_pytorch} $out 598 + chmod u+w $out/android/libs/fbjni 599 + cp -r ${src_fbjni_recursive}/* $out/android/libs/fbjni 600 + chmod u+w $out/third_party/FP16 601 + cp -r ${src_FP16_recursive}/* $out/third_party/FP16 602 + chmod u+w $out/third_party/FXdiv 603 + cp -r ${src_FXdiv_recursive}/* $out/third_party/FXdiv 604 + chmod u+w $out/third_party/NNPACK 605 + cp -r ${src_NNPACK_recursive}/* $out/third_party/NNPACK 606 + chmod u+w $out/third_party/NVTX 607 + cp -r ${src_NVTX_recursive}/* $out/third_party/NVTX 608 + chmod u+w $out/third_party/VulkanMemoryAllocator 609 + cp -r ${src_VulkanMemoryAllocator_recursive}/* $out/third_party/VulkanMemoryAllocator 610 + chmod u+w $out/third_party/XNNPACK 611 + cp -r ${src_XNNPACK_recursive}/* $out/third_party/XNNPACK 612 + chmod u+w $out/third_party/benchmark 613 + cp -r ${src_benchmark_recursive}/* $out/third_party/benchmark 614 + chmod u+w $out/third_party/cpp-httplib 615 + cp -r ${src_cpp-httplib_recursive}/* $out/third_party/cpp-httplib 616 + chmod u+w $out/third_party/cpuinfo 617 + cp -r ${src_cpuinfo_recursive}/* $out/third_party/cpuinfo 618 + chmod u+w $out/third_party/cudnn_frontend 619 + cp -r ${src_cudnn-frontend_recursive}/* $out/third_party/cudnn_frontend 620 + chmod u+w $out/third_party/cutlass 621 + cp -r ${src_cutlass_recursive}/* $out/third_party/cutlass 622 + chmod u+w $out/third_party/eigen 623 + cp -r ${src_eigen_recursive}/* $out/third_party/eigen 624 + chmod u+w $out/third_party/fbgemm 625 + cp -r ${src_fbgemm_recursive}/* $out/third_party/fbgemm 626 + chmod u+w $out/third_party/flatbuffers 627 + cp -r ${src_flatbuffers_recursive}/* $out/third_party/flatbuffers 628 + chmod u+w $out/third_party/fmt 629 + cp -r ${src_fmt_recursive}/* $out/third_party/fmt 630 + chmod u+w $out/third_party/gemmlowp/gemmlowp 631 + cp -r ${src_gemmlowp_recursive}/* $out/third_party/gemmlowp/gemmlowp 632 + chmod u+w $out/third_party/gloo 633 + cp -r ${src_gloo_recursive}/* $out/third_party/gloo 634 + chmod u+w $out/third_party/googletest 635 + cp -r ${src_googletest_recursive}/* $out/third_party/googletest 636 + chmod u+w $out/third_party/ideep 637 + cp -r ${src_ideep_recursive}/* $out/third_party/ideep 638 + chmod u+w $out/third_party/ittapi 639 + cp -r ${src_ittapi_recursive}/* $out/third_party/ittapi 640 + chmod u+w $out/third_party/kineto 641 + cp -r ${src_kineto_recursive}/* $out/third_party/kineto 642 + chmod u+w $out/third_party/mimalloc 643 + cp -r ${src_mimalloc_recursive}/* $out/third_party/mimalloc 644 + chmod u+w $out/third_party/nccl/nccl 645 + cp -r ${src_nccl_recursive}/* $out/third_party/nccl/nccl 646 + chmod u+w $out/third_party/nlohmann 647 + cp -r ${src_json_recursive}/* $out/third_party/nlohmann 648 + chmod u+w $out/third_party/onnx 649 + cp -r ${src_onnx_recursive}/* $out/third_party/onnx 650 + chmod u+w $out/third_party/opentelemetry-cpp 651 + cp -r ${src_opentelemetry-cpp_recursive}/* $out/third_party/opentelemetry-cpp 652 + chmod u+w $out/third_party/pocketfft 653 + cp -r ${src_pocketfft_recursive}/* $out/third_party/pocketfft 654 + chmod u+w $out/third_party/protobuf 655 + cp -r ${src_protobuf_recursive}/* $out/third_party/protobuf 656 + chmod u+w $out/third_party/psimd 657 + cp -r ${src_psimd_recursive}/* $out/third_party/psimd 658 + chmod u+w $out/third_party/pthreadpool 659 + cp -r ${src_pthreadpool_recursive}/* $out/third_party/pthreadpool 660 + chmod u+w $out/third_party/pybind11 661 + cp -r ${src_pybind11_recursive}/* $out/third_party/pybind11 662 + chmod u+w $out/third_party/python-peachpy 663 + cp -r ${src_PeachPy_recursive}/* $out/third_party/python-peachpy 664 + chmod u+w $out/third_party/sleef 665 + cp -r ${src_sleef_recursive}/* $out/third_party/sleef 666 + chmod u+w $out/third_party/tensorpipe 667 + cp -r ${src_tensorpipe_recursive}/* $out/third_party/tensorpipe 668 + ''; 669 + src_sleef_recursive = src_sleef; 670 + src_tensorpipe_recursive = runCommand "tensorpipe" { } '' 671 + cp -r ${src_tensorpipe} $out 672 + chmod u+w $out/third_party/googletest 673 + cp -r ${src_googletest_tensorpipe_recursive}/* $out/third_party/googletest 674 + chmod u+w $out/third_party/libnop 675 + cp -r ${src_libnop_recursive}/* $out/third_party/libnop 676 + chmod u+w $out/third_party/libuv 677 + cp -r ${src_libuv_recursive}/* $out/third_party/libuv 678 + chmod u+w $out/third_party/pybind11 679 + cp -r ${src_pybind11_tensorpipe_recursive}/* $out/third_party/pybind11 680 + ''; 681 + src_vcpkg_recursive = src_vcpkg; 682 + }).src_pytorch_recursive 683 + # Update using: unroll-src [version]