From 40542ab1e869d6be641998954c90b0f4b52e5819 Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Sun, 26 Nov 2023 18:24:50 +0100 Subject: [PATCH 01/43] [CUDA] Download instead of having the user install it. --- ports/cuda/hash-linux-ppc64le.cmake | 56 ++++++ ports/cuda/hash-linux-sbsa.cmake | 60 +++++++ ports/cuda/hash-linux-x86_64.cmake | 66 ++++++++ ports/cuda/hash-windows-x86_64.cmake | 56 ++++++ ports/cuda/portfile.cmake | 245 +++++++++++++++++++++++++-- ports/cuda/vcpkg-port-config.cmake | 3 + ports/cuda/vcpkg.json | 11 +- ports/cudnn/FindCUDNN.cmake | 8 +- ports/cudnn/portfile.cmake | 122 +++++++------ ports/cudnn/vcpkg.json | 8 +- ports/cusparselt/portfile.cmake | 63 +++++++ ports/cusparselt/vcpkg.json | 9 + 12 files changed, 614 insertions(+), 93 deletions(-) create mode 100644 ports/cuda/hash-linux-ppc64le.cmake create mode 100644 ports/cuda/hash-linux-sbsa.cmake create mode 100644 ports/cuda/hash-linux-x86_64.cmake create mode 100644 ports/cuda/hash-windows-x86_64.cmake create mode 100644 ports/cusparselt/portfile.cmake create mode 100644 ports/cusparselt/vcpkg.json diff --git a/ports/cuda/hash-linux-ppc64le.cmake b/ports/cuda/hash-linux-ppc64le.cmake new file mode 100644 index 00000000000000..5f25ed0c3b13a3 --- /dev/null +++ b/ports/cuda/hash-linux-ppc64le.cmake @@ -0,0 +1,56 @@ +set(cuda-json_HASH "e248bc28c51ea77b7ecc4ca4c0f1590115837a53f22f254c05955a55448e811a2419e811fad009b234f85d1de6fec641512c50f52af8dddc39ca93ca4468ddb4") +set(lic_cuda_cccl_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_cccl_HASH "6f4b2dc3d6fdd772104684ecedfa3ec247e16097042000cf7f9c105f7da8e0cf5ac423fb33666dd7cb15ebdab0a8a029d11a94a929ee632cb08510f71f6aee3d") +set(lic_cuda_cudart_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_cudart_HASH "4d5cced21cc5d92453077e41075df2bc9fdedaa2bfe4e569f4e2a7a5867a73b53f0a032905191fa57cc15b975446e80e92b0e2edfadaffb62ade6da912fd3593") +set(lic_cuda_nvml_dev_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_nvml_dev_HASH "e40ded85dd87c390a12ec417e6089b75dc3029822460ced10d24a343656851f60ff9aa7973bf303898370dd5951738ef7c277d1824df880caf80f35f4705e291") +set(lic_cuda_nvrtc_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_nvrtc_HASH "6931631d13f30fee139e97d2410e352b4951b002127a7cd6e23dfc79dcd345fe18c7771c422a08d2b85c31c62e61b38e4985981212213d467b7322b437342e50") +set(lic_cuda_profiler_api_HASH "9330644686d6f1130f3c011690dbfeb3b52eec7043a2c16d25cebf15e85dac832489614883db9cf78353669e66ae8f907176e5940b59be1351acb04c598f6069") +set(cuda_profiler_api_HASH "594a2ce2ac34430b9913863c17e92bf36fbb5fbed400c40f9e42ededc9a9194e7ddcbf01cc002893cd11b246aa741499fad6e0536f8514cd2a8df5d0a967e053") +set(lic_cuda_sanitizer_api_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_sanitizer_api_HASH "9af8a4c873fff42dccc1117d5c749a48e62e9a90eda7f699efa07cfb321f75a89986eeac11d62a6ee1fbcb14a143e73ced0d28b5ef75ce1d2de4c186b28df961") +set(lic_libcublas_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(libcublas_HASH "fda0677b18cf6cc5b4d265c01451f78bf326eb61d08dd07587ce07a9bc5658a2927f11ff5cd16536fb9e67eeb47a11fa9645281a3dd247d96518cef4fdf2c61c") +set(lic_libcufft_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(libcufft_HASH "c29c49e92928b194976cd836722871cbd50429eed07e837434d73172726e1c6e86d1f0faed09af3f18979b165241e735db0620a5e814ad55d6f875b2bffb912a") +set(lic_libcurand_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(libcurand_HASH "762d3700ce1456b5af3a71708be31aff8a3657f4a27f619d881f7fc7e229f73599c1fb14d1c9c1544457be22404aecd3c1c6142fca06db095b5aba124e70ee98") +set(lic_libcusolver_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(libcusolver_HASH "72588d5a2038884a17213555e480415e19fcda85f27f2cb2b8627a15f4bd96f7f146594389d72d1c5bcbcd226996433e8fb38ab037f0fe8430b156ed30b98431") +set(lic_libcusparse_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(libcusparse_HASH "c25e8817a26f4d9612aa11ffb01fc395e375fa75114802f4b889e02dce275bd4643f179f0e34db02b3f8c15a5b5f687e2ad713906c11b49dab0b16281311dc94") +set(lic_libnpp_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(libnpp_HASH "21d08f6d03c92910c0ddb7b9f3eb2535d47473adf8ca9dbfe528176fbb031d7f2980b9be1bf51261e2e0b727a84157f5ce3057e825d889c7ef90c65e8f086f3e") +set(lic_libnvjitlink_HASH "9330644686d6f1130f3c011690dbfeb3b52eec7043a2c16d25cebf15e85dac832489614883db9cf78353669e66ae8f907176e5940b59be1351acb04c598f6069") +set(libnvjitlink_HASH "fff1125e6dbef20ee61b83fc9fb42f2d1842760a739633c60d90b4931709340ff3d5cec7c3927a8a2a9c02a483a7873f8e1f00bd9799a482fe95184e06724f2a") +set(lic_libnvjpeg_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(libnvjpeg_HASH "1606da8cddcda76961da9c994a0fe1ee63f23aefea2c67b5ab514e48538f561ceafe5f22a503ddbea8b01f333e448b5dc29d57c9bbc8978550d8e5a33aaff999") +set(lic_nvidia_driver_HASH "2a28ca80789f705e0c9d14c1b1c11304fa42ad31741a9fc339a295a0e307aaf05cb58cb4199e966ead799ae5232d68d0e54cb002212c1eab32bd9e288a030316") +set(nvidia_driver_HASH "9ed525921153d2d897dce23e6aa0c05f59c1e983d12615093dc863ebcc5e8ab12ab2e51fbe4dfbd82b97d69ec3aaa492802ba47af72d1dc95a33bb2ef4506be8") +set(lic_nsight_compute_HASH "b9fcf702602703edeae6dbda86d53734343b6b42fcc8d1294783a4220d36e0d283167cdc5dd4ad5fba7ee4ce5774f264251660fbbed20a00a18e86aada6b95f5") +set(nsight_compute_HASH "273bca2cf8d253b6d660dd5d24295bebf903979d9227c09e4c38bcb744b97591a15853e211f550a9e4ff4653a945475d9eda2046daa2d9270b86d2fc083aa950") +set(lic_nsight_systems_HASH "b9fcf702602703edeae6dbda86d53734343b6b42fcc8d1294783a4220d36e0d283167cdc5dd4ad5fba7ee4ce5774f264251660fbbed20a00a18e86aada6b95f5") +set(nsight_systems_HASH "aa308edcd6fdc7ac35d4c70b01e6a0f2a3c781b9f734ff892df33228b6e00d0ec6586540a6ede2320d2a107ad9513233496f3fdf66430609e06b37cedd4e1ee5") +set(lic_cuda_gdb_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_gdb_HASH "0c77357ee1718b2ff82dd58d295c847c5c9c94543e49b4f554c9220de3758963fe82069337ddf196e666279b4367a9c8177a802cc245f7dbbe1115247128e782") +set(lic_cuda_cuobjdump_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_cuobjdump_HASH "ce895cfb3d417f89dfe61544bbbc862cf71dab7212798fe2e6dd15acfc567d6fcfc0b38a79bdf7a6e12d09734329237a46a3b87d6bbc129b7401268d7e2482ae") +set(lic_cuda_cupti_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_cupti_HASH "1a509629f6a81184dd590ff8974b72ecfa133e2e39e7b3dfad60b37c183db6cbfe2850b0d85c3f75eef4bf67fb4a0fe432872ac38106e6f83baffa6896f5aaa6") +set(lic_cuda_cuxxfilt_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_cuxxfilt_HASH "7a88d66f8d02a719791da45c3c5c63d16d17bb4b6389862cafdbc75e81599551386e13a453db2c9f8f552862a848eb85e8334424251d03e07b521562ef1128eb") +set(lic_cuda_nvcc_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_nvcc_HASH "0eb53d84040ca76ec599d4705d583cba6b047ff5f6f0f4f8da29b7315934cbbe9bacdd4c7dd61a65b8f99c55d7a41daecbd1b17722f3f24794c6523d278f8a6e") +set(lic_cuda_nvdisasm_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_nvdisasm_HASH "0b75cf794575b8c3109198d9c42f853ccd92c644223e6fcb85d15f446a67e880ed1c4d82d7ccaa91cf2d2cee3b82e4fec583d3cfeefb1e28463b167a978b4a50") +set(lic_cuda_nvprof_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_nvprof_HASH "76c338f8d27b0759a8bb9d0bdf961d426005da8cc12cf3a2944f717ab726f9e736319cf5d94287810e891d09d17ba2981f28dcfcf03d4fd9c05a8e4aaf021b33") +set(lic_cuda_nvprune_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_nvprune_HASH "e2167850893802273ccf8e39d07b8cfdd79fe9e7262c310d1923edc12b6eed6c765d831f75785f868d0cf96b738aed49e5fe12b623fc2f2745c43f821870d1b5") +set(lic_cuda_nvtx_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_nvtx_HASH "7d7358fba8170df09bc7759f93c3f6c4f5296f88ee06f9ea1f2a854502537b4ac2850a0b8c7d93a659b59cdf1f671ec06651ca0b9a9106f571db642bf20a26c7") +set(lic_cuda_nvvp_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_nvvp_HASH "5064f5529db33d9fabd5167da98579859ac1c14ba688d339020fed43e2294b34800fab2bd43d1597fd9eab5a5abab547c391be9f039e19306bfba4415a3f82c7") + diff --git a/ports/cuda/hash-linux-sbsa.cmake b/ports/cuda/hash-linux-sbsa.cmake new file mode 100644 index 00000000000000..a317c5ba8e70fc --- /dev/null +++ b/ports/cuda/hash-linux-sbsa.cmake @@ -0,0 +1,60 @@ +set(cuda-json_HASH "e248bc28c51ea77b7ecc4ca4c0f1590115837a53f22f254c05955a55448e811a2419e811fad009b234f85d1de6fec641512c50f52af8dddc39ca93ca4468ddb4") +set(lic_cuda_cccl_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_cccl_HASH "5fee8a88af6be381756ad6b66d0854dc20678ad8ca9a3da7bfe245e0469c5ecf350d803f348912a1278ec050adb2435a568ea0c04831e424e94a69e00fb4361f") +set(lic_cuda_cudart_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_cudart_HASH "58cfd0fc290a0991f4d0bcc9e3d683cd9d0818dd0be454057fdfbc4d3da275b2d9e07b05a38d1474744775cf2ec80c6cd53f72ea768570c0684c371d9368bca4") +set(lic_cuda_nvml_dev_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_nvml_dev_HASH "a546bcf5d2ce5d59bea8d4eef1ed5520d6e0f082159ec18fb302b41327c8a5f151149ee981fe0d03de181fb36d9a1d6208d445a718f669a9ce6eda8365e7c80a") +set(lic_cuda_nvrtc_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_nvrtc_HASH "6a6a04e68b5eb17a28320e50e673fa1d9410019b2ca30ca77777f92f12c4bf6f03b46ba7033ef2c5ef6f5640a9b11f8a317df512313f9c115422cdfb131594a7") +set(lic_cuda_profiler_api_HASH "9330644686d6f1130f3c011690dbfeb3b52eec7043a2c16d25cebf15e85dac832489614883db9cf78353669e66ae8f907176e5940b59be1351acb04c598f6069") +set(cuda_profiler_api_HASH "87b856e6491b6115dd2901d2607a9752704f65a49ca99e086fbbaf0b186b84709a99f71443eb55e970bc46cb4633b9c15ad6491f425eccc6e9020fdef4e8bb6c") +set(lic_cuda_sanitizer_api_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_sanitizer_api_HASH "a8aa0d55dbc3d228fc46fa4ae06d6cda6a438f14d7845a9bb0ab45cdd6b24eafaf64645983f45db221e4b9ddcbfea5031c2277a87132694efaa62a9efc53bea4") +set(lic_libcublas_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(libcublas_HASH "3ea59656ad5c5f7b9fcd1cd016ce202b5aedb198a4b768f29ac78b48a480bd24d835f94c77bf922944b144000c5a0172e0edb31bbd48c361ec269b186387d578") +set(lic_libcufft_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(libcufft_HASH "4afb80dae78a18136f5afde0f19e8484522931fa6b835b1ad04bc4e8de3826b8fb48f2e27d352dcfc6ae14f7e8b76c35a73a8abd41adb69367a5099fc091f1b2") +set(lic_libcurand_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(libcurand_HASH "edfacf9391bc7aa26d8e7b4557bcdd738155f044a496d08c21797cf7447ae7335d013698b8394bd1d0ba17352fd8129b545f51bfaffb9d3642c5efbb9d9eff8f") +set(lic_libcusolver_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(libcusolver_HASH "3cb0328c21b7619e415ddbd816511c5fad39afb62efcdad741ade154ca350290dc898a352f7eda233ceecef6e7ed72d9ec057296ba7beb03f8a1feafe62ff3e8") +set(lic_libcusparse_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(libcusparse_HASH "f3461cbb441a67f89b7b65f95902a84a2af2ec9c3de9bca3fce7daac3a85b6b9ed923b3c2032eb36ad2f8fcdcfa32fe1c94a25be5195dbedcc83763536c8033e") +set(lic_libnpp_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(libnpp_HASH "e51f80042aa3e103dd4907900bcb7a32353231f041b0cfe0af119bbd3b0d57507b5aea927baaaa62a6d8aac9af25acbc5a30a87e0b9491211034050c44887337") +set(lic_libnvjitlink_HASH "9330644686d6f1130f3c011690dbfeb3b52eec7043a2c16d25cebf15e85dac832489614883db9cf78353669e66ae8f907176e5940b59be1351acb04c598f6069") +set(libnvjitlink_HASH "751cd5aac717ee5ca79ed5978612aad08024cd281e8e23474cdf18696b4cd6c19d754559fdc799a084d7c6411440c86a14f3b5df48f589c82f9a9665dd4b37cb") +set(lic_libnvjpeg_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(libnvjpeg_HASH "3b5d947103ca53d5e9062b3ccf38310b52c30f33b632a4780ad31d898fbe4979f07b0705d141e698d8eebd540a665a609bf3d63cf8a2ad8d5a6d129f500b183b") +set(lic_fabricmanager_HASH "2a28ca80789f705e0c9d14c1b1c11304fa42ad31741a9fc339a295a0e307aaf05cb58cb4199e966ead799ae5232d68d0e54cb002212c1eab32bd9e288a030316") +set(fabricmanager_HASH "e078d6c8e446810620bc1a9fdf40ee7730cc3ea6171b9ff7241b6f76efce2634cf35b170dc2878780eb196f6daafd52811e5e5ae291d25753005ab6ecd8deba0") +set(lic_libnvidia_nscq_HASH "2a28ca80789f705e0c9d14c1b1c11304fa42ad31741a9fc339a295a0e307aaf05cb58cb4199e966ead799ae5232d68d0e54cb002212c1eab32bd9e288a030316") +set(libnvidia_nscq_HASH "630d810d4ee8838a5797050477f560142154f20e27bd10abf6a850b18162f88f0fccdfb126d87f8f1619696d3227da4010239ccb3edf10cd1c88166ec4aedf80") +set(lic_nvidia_driver_HASH "2a28ca80789f705e0c9d14c1b1c11304fa42ad31741a9fc339a295a0e307aaf05cb58cb4199e966ead799ae5232d68d0e54cb002212c1eab32bd9e288a030316") +set(nvidia_driver_HASH "8f1b345d601fe5ae5f1c14dcad6affd7f03f4aa1c0cdd81def760c8cdfd97e712524d547027b0d22ba0878009ccfaaf39c1dcfe1348613b4eb06a4d34acca5e9") +set(lic_libcufile_HASH "a7db5621e13d42e03388e3484fc01703fb83b1aafc33f3f7dfc3066e327ef5b0a81fd9d413405e9921dbea253bff24f0325bf8a7e5c44e050561efe5e60f9f95") +set(libcufile_HASH "38b3665889f746992cd257d705076e29d58678cd193b10088ef2821cb8ca349b0e1ba070fd4773ac8be8784a6a4ad55c5d8b3876393edc9fac4c37a859848e4d") +set(lic_nsight_compute_HASH "b9fcf702602703edeae6dbda86d53734343b6b42fcc8d1294783a4220d36e0d283167cdc5dd4ad5fba7ee4ce5774f264251660fbbed20a00a18e86aada6b95f5") +set(nsight_compute_HASH "1fbfe8d4e2b6c7f98c7645be299d44c9f77de07a5fbfa1474e08eeb2deeb7bf4370c1cf67a70e128373ebe7d183465deb3069f84e136987fbf44308ffea5c4e6") +set(lic_nsight_systems_HASH "b9fcf702602703edeae6dbda86d53734343b6b42fcc8d1294783a4220d36e0d283167cdc5dd4ad5fba7ee4ce5774f264251660fbbed20a00a18e86aada6b95f5") +set(nsight_systems_HASH "f0b00fbb508ded1024a38aea42edefedd7904f805c812f8e118021efaca89607d4e5e960508bbd72d28cbf253979e9f9441b1751a745ac77bf3a294dc61105ff") +set(lic_nvidia_fs_HASH "a7db5621e13d42e03388e3484fc01703fb83b1aafc33f3f7dfc3066e327ef5b0a81fd9d413405e9921dbea253bff24f0325bf8a7e5c44e050561efe5e60f9f95") +set(nvidia_fs_HASH "41bab92111127f6ceedc589db8a5d1c050e822dc51f558454b8967a3ccdf5c650b5060bcd057ff966364b8415acbc6411634061ba043c64a7cb533d2b5dc88fd") +set(lic_cuda_gdb_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_gdb_HASH "aa0aadb9b5bf8f749db1c0515bf0dfe4c0b367927d050f96921392079eca1534b034c91e3475918355b9f667eb9db3e7ede2edce4bc001db3ec24a8d1173b4cf") +set(lic_cuda_cuobjdump_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_cuobjdump_HASH "a7a4fb98411a3de06b6d8466d4d869d5701c33a0a6b6e80f82be4c20e4dac3c32d97468f44ac3faad0083500fdaebfea3ff99c3e11d0042f21d954a5727632e5") +set(lic_cuda_cupti_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_cupti_HASH "96d7119d13bfbb68a3119d7685133406837dd9dd138f5882adadad753495b13b8385ee15bd71a942513681a73d893638662b18119fa03be717a3b83fb72ff1de") +set(lic_cuda_cuxxfilt_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_cuxxfilt_HASH "71800cd7737b023da87b0741cc634028493c42aa46f347c70ca88efde09155de47e0b1cf1dd6b3e92af5903b762d96ffcf7180e3f56b4b2f8312bf0f55531e9a") +set(lic_cuda_nvcc_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_nvcc_HASH "d28475f4ca0f7fa35e4a43e3dfe49302d1126d3496e20aac5d87ab56de06b1860e8652e40256751207008c8c58b8b1c516652f7018112ea9fcb1efaf2418c4f5") +set(lic_cuda_nvdisasm_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_nvdisasm_HASH "9026088b518ff631fa70a9a5bfb6c029210722530c763d2d6da76cd628c038362e4422e6c50c0a37b5f01c615036b4d9e9b153eb420288a495cb0a0f31a3a9b7") +set(lic_cuda_nvprune_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_nvprune_HASH "f8fb5255d1b48c0115d9ec948300949c42a36bc0dbc2216e432d55658fa7149d716de4981adfd157f9a45e85f72a6869edd2552e9fde4b3780713a1db743cd95") +set(lic_cuda_nvtx_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_nvtx_HASH "95b6b3d206891b64c63290f1064068af2dfbc349d39dfb5e1c9f1de641a8d506494ba11057458f2dc5590360f2707030833991b47c93238f59012983318332a2") + diff --git a/ports/cuda/hash-linux-x86_64.cmake b/ports/cuda/hash-linux-x86_64.cmake new file mode 100644 index 00000000000000..ddd666c378223b --- /dev/null +++ b/ports/cuda/hash-linux-x86_64.cmake @@ -0,0 +1,66 @@ +set(cuda-json_HASH "e248bc28c51ea77b7ecc4ca4c0f1590115837a53f22f254c05955a55448e811a2419e811fad009b234f85d1de6fec641512c50f52af8dddc39ca93ca4468ddb4") +set(lic_cuda_cccl_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_cccl_HASH "b7dd0a25ca2746e64ff692c5400a1f056fb5d6cdd15b38f8a061414bc5be7e6bffff71e1c30951fe6f22721f1e977162d884a653d1b86548ef265e47482d0032") +set(lic_cuda_cudart_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_cudart_HASH "62d0790f04bc1af432863e58c90d0c5e3ea34d718f27305a34a5a11bff901b15c305ab4cc312a61881a80faf75fd9c5ea1af829264dc922dd0b4b2df4351f67a") +set(lic_cuda_nvml_dev_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_nvml_dev_HASH "90bdbc30f651fbcbf43ebae93df0c736850ee15a0f937b1dccec69046c2cfc1899443707696b923f14a31f7b36cf3d1a043920d45f648db6b13332414bdc31f4") +set(lic_cuda_nvrtc_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_nvrtc_HASH "e2dfa11a6cd02379ebb9381001438cd970f0a22234ddd366139683df30bd5641eed92403ee6f8d82e77506ecd8a42ad355e864035cc359b2b4f0342423910ffe") +set(lic_cuda_opencl_HASH "9330644686d6f1130f3c011690dbfeb3b52eec7043a2c16d25cebf15e85dac832489614883db9cf78353669e66ae8f907176e5940b59be1351acb04c598f6069") +set(cuda_opencl_HASH "20bb15bd4337d319624102b1a228612fdbce0324ce45426997fb4c04d69e2e8550cfee11b52e8d339a1c2973535359445ed260460b37d3d0486bcb193ac2ce0e") +set(lic_cuda_profiler_api_HASH "9330644686d6f1130f3c011690dbfeb3b52eec7043a2c16d25cebf15e85dac832489614883db9cf78353669e66ae8f907176e5940b59be1351acb04c598f6069") +set(cuda_profiler_api_HASH "a103e4a2cd8ed93e323a0dea5fe459ba9a9e4116a95b321dd44dab2d724c4ba93a8206da38cc4f1b793e81fb13c6d77438b9dfd788a0bbd3bde2a4d2234dac7c") +set(lic_cuda_sanitizer_api_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_sanitizer_api_HASH "ed5144da24f1c9caa91295d612c9c2ba66923a63f6365b3bf4d1fb452b12f5e2910b6da709cd0a3b5f696fd8ccf6f08321e237bd8e5000bf2c74ca76911556d6") +set(lic_libcublas_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(libcublas_HASH "0c8635d28ac2746f51e158667d68d9934ee6fc838473e8f789905d635bbd29b39d42c9782b63ff7cd065b67877ac664ab46a0220b59a1d182debb1d5b4bbf9d9") +set(lic_libcufft_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(libcufft_HASH "f23910dbae1d64b594e5b8d0cb3ebc36490d438bcd3e8d906b5b03492e39b295e9737db6406b0269724fded09aab85e6a5fd954289e242904273328890b8e097") +set(lic_libcurand_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(libcurand_HASH "09ff1713efc3a554d39c353520f82e42bc903d868c8f19835036fec9df12d0417ff9992291d3bcf98dac49866f9b7ddd7a050253d54c2131421f8317e41b876a") +set(lic_libcusolver_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(libcusolver_HASH "bdc0cdab1be95e9044ce797e05fbcee9d59dc4f3f6490c35cb7fcddc7729f81e3371475b2573a06483a75d13b813f9d63b9cde2f93bf434110a0733cf01aed4c") +set(lic_libcusparse_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(libcusparse_HASH "c1bb222ef9881c25936d4d8ae1fdf4a463924e3db66a1311ac5d070bd6ac8c5e3c3faf1958ad83976102f57939bf9ba8a1ad87b93af36d82d2481bbec4692582") +set(lic_libnpp_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(libnpp_HASH "999719b97649461a6c207f7c1e2069d1ca678a3b9bb9a56b708338d2de4c653332b877a82d80bd0689a8303ebc223ffe4412115de39c83d6eecaf29a129de180") +set(lic_libnvjitlink_HASH "9330644686d6f1130f3c011690dbfeb3b52eec7043a2c16d25cebf15e85dac832489614883db9cf78353669e66ae8f907176e5940b59be1351acb04c598f6069") +set(libnvjitlink_HASH "54252cb76f67338f9c036ce4a0b4143878c7bfafcb498ab2657a60ead3f83a18983c19b74907146f28fbab444c85b337bc14bbeab802f740e77c081fdcffa43a") +set(lic_libnvjpeg_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(libnvjpeg_HASH "93d2cd56cc998ff40b89a89e8815a515401756466e9c284892febdb8bd7d2c27526a48ebe210885ecbaef791c818c6ee49f6526626e7986d8bb1b409a345ff4f") +set(lic_fabricmanager_HASH "2a28ca80789f705e0c9d14c1b1c11304fa42ad31741a9fc339a295a0e307aaf05cb58cb4199e966ead799ae5232d68d0e54cb002212c1eab32bd9e288a030316") +set(fabricmanager_HASH "974570b27bcb75e448c332fb1ab9f8c905df7ef0c6acee4caa5665ae25a0d7f33296fd78c1adc5f50bf556fd31cba3ab59254ad311055ea632234bda6dea3a65") +set(lic_libnvidia_nscq_HASH "2a28ca80789f705e0c9d14c1b1c11304fa42ad31741a9fc339a295a0e307aaf05cb58cb4199e966ead799ae5232d68d0e54cb002212c1eab32bd9e288a030316") +set(libnvidia_nscq_HASH "c4d712f862f6296cd004dfe4f8f5d52c6476db451c1ae6dde199331e3222ec46bae5ed98114159ed7689b129d7006fea8d8cba9e3eda095d58b2eb7577a55ebb") +set(lic_nvidia_driver_HASH "2a28ca80789f705e0c9d14c1b1c11304fa42ad31741a9fc339a295a0e307aaf05cb58cb4199e966ead799ae5232d68d0e54cb002212c1eab32bd9e288a030316") +set(nvidia_driver_HASH "a3af20f23d0fcf340c65b92b43b2ae230e9e4d51602c566a5657954a5cc424ea424b806ca518d795061285df107f83a8af30241dc20eb98301ba012854c2174b") +set(lic_libcufile_HASH "a7db5621e13d42e03388e3484fc01703fb83b1aafc33f3f7dfc3066e327ef5b0a81fd9d413405e9921dbea253bff24f0325bf8a7e5c44e050561efe5e60f9f95") +set(libcufile_HASH "cd57e96d7cd17a7aad2cd798c23316dfc09239a1604c2a1866695be42e8b01daf87fe3e95928a50e164f982b8e7e250a22129b61b0aef17c757e0e293ad27aaa") +set(lic_nsight_compute_HASH "b9fcf702602703edeae6dbda86d53734343b6b42fcc8d1294783a4220d36e0d283167cdc5dd4ad5fba7ee4ce5774f264251660fbbed20a00a18e86aada6b95f5") +set(nsight_compute_HASH "9a2de386927b7dd6b115f435dbd061ec7e8a9d77c2a691856290302a3d96c82c20b8e161b27e4232dec72016149cb83bc76fd388b6d2d84dd16fb3e22606ab26") +set(lic_nsight_systems_HASH "b9fcf702602703edeae6dbda86d53734343b6b42fcc8d1294783a4220d36e0d283167cdc5dd4ad5fba7ee4ce5774f264251660fbbed20a00a18e86aada6b95f5") +set(nsight_systems_HASH "8a78968ae1ff73c5965cf6540b5e3a27961075f1523ad1211ce95a3b577e2c25709a241370b818b1012133dd3bd4ced2071bc5ea7b94903b3faf141673b9db0c") +set(lic_nvidia_fs_HASH "a7db5621e13d42e03388e3484fc01703fb83b1aafc33f3f7dfc3066e327ef5b0a81fd9d413405e9921dbea253bff24f0325bf8a7e5c44e050561efe5e60f9f95") +set(nvidia_fs_HASH "75b16f3ef241cbe089890fb63582871a521a9798e56fa43644b089177d27d716741f1cdb657f6770e0fe4d954555caf22288b626d5c2a44394d11d07116f6596") +set(lic_cuda_gdb_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_gdb_HASH "05b7971a779618344eb760124942a5595de486c5272b8a68fd4878844cadc016889c92a0e930cbdcb551fda65fc73dfbbba80004fb9b508e2d7004cbfc49b214") +set(lic_cuda_cuobjdump_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_cuobjdump_HASH "877b64a8a5d196de970e180c0dfc9bbab8ef20ec4c024e2c5040109beb10ed93a9b8f8d3db221015154d7b3b64fee9d2fa0cd0a7c611a221ba307a59a98f1bcf") +set(lic_cuda_cupti_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_cupti_HASH "14116425d077f2bd645b99dcd9e1b270fd03dbf45dff47d199360a97b91f741625ac8ecfe5408e98732b71e801a9164f391232eba8dd35cb47f5626042754cc0") +set(lic_cuda_cuxxfilt_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_cuxxfilt_HASH "f386846d6daa4754b91bb9f91e98a686dcffa5ec2bba6b0bd4d0c57671c7851764a27ba0ac83cb449a06085cdff7d340c113ffa345bedad3dbb0161bc10f62e7") +set(lic_cuda_nvcc_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_nvcc_HASH "f72401c6230d101ae4ae1f4810b84bf415406d4d64f557b98da76909f11b6d124537a4ee260a51a46791a4d46aa6802480d52b291bcb3bf672d863249fd2bbed") +set(lic_cuda_nvdisasm_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_nvdisasm_HASH "5f26bb5f9205f6f1024765e0101296b7f5a8250a542d8bf5a5427952ac261d2fae1b3ec7622252da3cd2508bf6ccb9f22c271945b711c16a2df55eb64116a503") +set(lic_cuda_nvprof_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_nvprof_HASH "7d119f9c832c20ef5eeff87a4288bbad8ab2e6bb143791311fdca1ba83b5b65b288474ccda51825cadc653b7228be9cd47b9f3a670f5c2ba147543adea71a36a") +set(lic_cuda_nvprune_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_nvprune_HASH "674aea2c0a2f8266d398848e3b14f82a78149e20859456b6a4da5491d69439403b2c3299f345602d2b64072802005ff8bf8db69906291f2cbe495ca962fdfe8d") +set(lic_cuda_nvtx_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_nvtx_HASH "bcf9515dcee56449b87e13b97d3c60722850e8a31b1402c72215c918c8ba602274966a684818a4c247a8ca21f3211492a675d688dc8ec5e6aaf2f3f3874d3d49") +set(lic_cuda_nvvp_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_nvvp_HASH "fd3c49b0c7d2498ee3d513e028414a5756247f4c78c064a302388b49e5c84a341a82821c423d48e0d49b112b69bc75f5331954a8ea4253dc09f764202e337dbc") + diff --git a/ports/cuda/hash-windows-x86_64.cmake b/ports/cuda/hash-windows-x86_64.cmake new file mode 100644 index 00000000000000..66e7dd13beb11e --- /dev/null +++ b/ports/cuda/hash-windows-x86_64.cmake @@ -0,0 +1,56 @@ +set(cuda-json_HASH "e248bc28c51ea77b7ecc4ca4c0f1590115837a53f22f254c05955a55448e811a2419e811fad009b234f85d1de6fec641512c50f52af8dddc39ca93ca4468ddb4") +set(lic_cuda_cccl_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_cccl_HASH "64b74abd339aa2184d357322a80ae59998cc72e30ce811f0edbc33bf792b3bd29ef6bbb02488d82bad89578c0df15bcad75628b66ffb670508040a056a5df667") +set(lic_cuda_cudart_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_cudart_HASH "9a3e7ac9f09caf979af7f033af71d02ea44d2847fa5ebd385a22bbb99a4dff6eec90ad87ceb9bf54ef81cb476375b57bc09a6555825842a42be94e1486ab14b8") +set(lic_cuda_nvml_dev_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_nvml_dev_HASH "1dc2548e78fbc4caf2cda9064151ca198b0954c3ab22da752e66e5f50d3d6d544761b562a64932253ccd43ccdb0f3808588d48819210a9515046d314b73cb0be") +set(lic_cuda_nvrtc_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_nvrtc_HASH "9130e10242ad1d1ea0662d07353b363c7bfcc74c0fffc114a387bfc718d39308441305dae61c0b07a3c1a8fdaeb721ac9b548489c5e9b4674365bd1195a753a1") +set(lic_cuda_opencl_HASH "9330644686d6f1130f3c011690dbfeb3b52eec7043a2c16d25cebf15e85dac832489614883db9cf78353669e66ae8f907176e5940b59be1351acb04c598f6069") +set(cuda_opencl_HASH "a71d0fbe4a474b3d0c0bba87fdf633b784af43cb0679985b30f600fd4416f32a21aeac28b46c8f09804d1bd050b0890522eae6e78bc89404a2a9147964afb1c0") +set(lic_cuda_profiler_api_HASH "9330644686d6f1130f3c011690dbfeb3b52eec7043a2c16d25cebf15e85dac832489614883db9cf78353669e66ae8f907176e5940b59be1351acb04c598f6069") +set(cuda_profiler_api_HASH "e8a5ed55b2f50ccd8897287f2cd4cdd3377375670587d2e4d9e14c4be52173d69dcb2d0c90b85a06ed9c637fa5cc93d5a037af8a1d70b8ee3bac2f257e4f61c5") +set(lic_cuda_sanitizer_api_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_sanitizer_api_HASH "4fa674404ed8a18a6eb4073ba96fad9e64aef2ab29b6aa21ed0dd95b209aff39ce6684b267acb9aa59e060efdcc87f2d93b4a59a97dba30a3bfb93744412f8e4") +set(lic_libcublas_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(libcublas_HASH "4a48e5c02084f920f4acf8ad29d71339c51278751414cefad6d222e6c66d00ee6b2f63436bbdeb3455e6da45b50a2d9b79c3bf3e8d74bd4b82f9a85c2bf82722") +set(lic_libcufft_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(libcufft_HASH "993be593f89616d3dd4eda0cd5e54a2877c0b10f86ce3511b6f3aeeadfaa2013e020616f8d2429038ea1b92746e1c3df70ca8775a2614787dfa794e20e764f98") +set(lic_libcurand_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(libcurand_HASH "b283f63f011b7c8d7076bdf52bd3013bdfb32423a17713010172525d8f17020eac2f4e8cd5c50cd67793325af5d33bd1f067861318decb265085efe124de05ed") +set(lic_libcusolver_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(libcusolver_HASH "c6366b3b37105793856b98db8e53d2308b09dd502ab2face6fe10a55582395a4bc949a759829efb4ae733a2b5ec64813b33fc2685a6a4f83d9358cb29ca7fa08") +set(lic_libcusparse_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(libcusparse_HASH "594c2b7c3c889192be44c43778c4efb409cf5e77ca838b859d3f7f222db2d9059f32500b77fd1821948213b3d686041fe2b956bc3e87780bad246c4e8b6bc3a5") +set(lic_libnpp_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(libnpp_HASH "dff57624041ecc838f4425fc55b65aa6268bb569ac17820272c0abaf02f5c2645a6a1d3b554e0170f6887571e2f6b9c0c006a2458696af5586dfdb3e00b91d2b") +set(lic_libnvjitlink_HASH "9330644686d6f1130f3c011690dbfeb3b52eec7043a2c16d25cebf15e85dac832489614883db9cf78353669e66ae8f907176e5940b59be1351acb04c598f6069") +set(libnvjitlink_HASH "9c3a61c35e1fd93fbba93db37d38b5f52fb883e9e2865c3f01074b2e1e9f9d1c8c91d8441fca7afeff4f081093497dacf8a16b75b36ef138064c7f040ae4140b") +set(lic_libnvjpeg_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(libnvjpeg_HASH "ed11629005e2cefce1f963cdb196b76423b7b46d7e69837687c4ce8145036a0030ce049d31b92520e953c89902e0d6472b10bdfa528cc6e964ac9b2ab117adca") +set(lic_nsight_compute_HASH "b9fcf702602703edeae6dbda86d53734343b6b42fcc8d1294783a4220d36e0d283167cdc5dd4ad5fba7ee4ce5774f264251660fbbed20a00a18e86aada6b95f5") +set(nsight_compute_HASH "d652194b34a024de333c9a93108d8978ad4788f3a246d2e5276fff9eb0b9f09a51dbf994a1417acee04ec19b1bbbfd24e25ff3abe4054326faf788c4dcb29611") +set(lic_nsight_systems_HASH "b9fcf702602703edeae6dbda86d53734343b6b42fcc8d1294783a4220d36e0d283167cdc5dd4ad5fba7ee4ce5774f264251660fbbed20a00a18e86aada6b95f5") +set(nsight_systems_HASH "896b903bad64a1a43ddcb8be5339b5be7b2b2defc8b89f5c3ba75bb9fc0586280170dbfc8db686d19a3fe6df5d7739d282ab3c6d7f49877270c008b7df08677c") +set(lic_nsight_vse_HASH "b9fcf702602703edeae6dbda86d53734343b6b42fcc8d1294783a4220d36e0d283167cdc5dd4ad5fba7ee4ce5774f264251660fbbed20a00a18e86aada6b95f5") +set(nsight_vse_HASH "c0f55f4d36e3fd4d86781bafbb13298d1c8267e572025deb09806de97d6a22b012a3ba8866f6f7f3434be0a6f7119cab0c08f8f6853351d13f364809a933dafa") +set(lic_cuda_cuobjdump_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_cuobjdump_HASH "d1e6569237bf36c29a767b70ff8629987ea348011689101a5a22a08ee0d401cec5c2bd2557aac21f55b866d9b7c425a0310eb2c74838214418024c344f444a68") +set(lic_cuda_cupti_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_cupti_HASH "ad2fc3c3d3c385b45ac81e5513e6dfb7d8e415df64304fb11d7ebb2c75bad8f02404b6d435aa2b1725f80f47e09458605259097c345dd0bfd68a9e20d29f98eb") +set(lic_cuda_cuxxfilt_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_cuxxfilt_HASH "f3932361d662e28a7e49e2f0483522748f71322e39c98ae2abe48be4ec623d4485991d3da896dfa065e8bdf9fd18a65f8c8572065fa51b47292dc0a3c925e6a5") +set(lic_cuda_nvcc_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_nvcc_HASH "d8da6ea08e4602814440fa84ba6d92d8465af93a3229444262d4a186786a2fbbec108ba006b8de4f1adc7660b3be7a76a6930d5f7c2febd790b635b0b936df2e") +set(lic_cuda_nvdisasm_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_nvdisasm_HASH "984dbfe4a69993786d29a50e7228c07b034671040a3685b4433f7872826628a68a4d4d547ff9c5819596adc1a66b45888dde6f3d5f36292f5a56d7aad467f710") +set(lic_cuda_nvprof_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_nvprof_HASH "de911b13ba9f99a6a7f2756038839f6372379c09b3c3b0c5fa9bfeed970056a5ea65e8a94cf63a3796aecacd247ecae488a0ada2677f12120f3b201c773dccfa") +set(lic_cuda_nvprune_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_nvprune_HASH "e44c22d479bd2dfc4b7eda05c07170b3ef4847209ae0bb83b018fae3b84e1d3e7fc8a135f8bac035e3ef76918f61d384f57340bc7687b8ebada14fb697d7a24c") +set(lic_cuda_nvtx_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_nvtx_HASH "f9c5cb0f4e7f380cbe4591b01a95dcb518dbcb606ec05382de28068dc5ed0b240e7cd1a5bd51fe0c72f3fb5cfeeca0181f27847258982b4cc7f21b3e2b735f60") +set(lic_cuda_nvvp_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") +set(cuda_nvvp_HASH "ccee58926296e8c0ab2ba37baa6a407ff887fef8340ee9c8a2734d101757cc518c6b32d7e09e78fd75195bfea249cfbbaacc8887011a9157a676732fffd8c68f") + diff --git a/ports/cuda/portfile.cmake b/ports/cuda/portfile.cmake index b5ea25636feb3c..12979fb73aa57c 100644 --- a/ports/cuda/portfile.cmake +++ b/ports/cuda/portfile.cmake @@ -1,15 +1,230 @@ -# This package doesn't install CUDA. It instead verifies that CUDA is installed. -# Other packages can depend on this package to declare a dependency on CUDA. -# If this package is installed, we assume that CUDA is properly installed. - -#note: this port must be kept in sync with CUDNN and NCCL ports: every time one is upgraded, the other must be too - -include("${CMAKE_CURRENT_LIST_DIR}/vcpkg_find_cuda.cmake") - -vcpkg_find_cuda(OUT_CUDA_TOOLKIT_ROOT CUDA_TOOLKIT_ROOT) - -file(COPY "${CMAKE_CURRENT_LIST_DIR}/vcpkg-port-config.cmake" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}") -file(COPY "${CMAKE_CURRENT_LIST_DIR}/vcpkg_find_cuda.cmake" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}") -file(INSTALL "${VCPKG_ROOT_DIR}/LICENSE.txt" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright) - -set(VCPKG_POLICY_CMAKE_HELPER_PORT enabled) +set(base_url "https://developer.download.nvidia.com/compute/cuda/redist") + +if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64") + set(target x86_64) +elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "arm64" AND VCPKG_TARGET_IS_LINUX) + set(target sbsa) +elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "ppc64" AND VCPKG_TARGET_IS_LINUX) + set(target ppc64le) +else() + message(FATAL_ERROR "Unsupported architecture") +endif() + +if(VCPKG_TARGET_IS_WINDOWS) + set(platform windows) +else() + set(platform linux) +endif() + +set(components + cccl # < contains cmake files + cudart + nvtx + nvml_dev + nvrtc + #opencl # OpenCL port should probably own this. + profiler_api + #sanitizer_api +) + +set(libs + libcublas + libcufft + libcurand + libcusolver + libcusparse + libnpp + libnvjitlink + libnvjpeg +) + +set(util + #nsight_compute + #nsight_systems +) + +set(tools + cuobjdump + cupti + cuxxfilt # has some extra API + nvcc + nvdisasm + nvprof + #nvprune + + #nvvp +) + +if(VCPKG_TARGET_IS_WINDOWS) + list(APPEND util + #nsight_vse + ) +endif() + +if(VCPKG_TARGET_IS_LINUX) + list(APPEND libs + fabricmanager + libnvidia_nscq + nvidia_driver + libcufile + ) + list(APPEND util + nvidia_fs + ) + list(APPEND util + cuda_gdb + ) +endif() + +if(target STREQUAL "sbsa") + list(REMOVE_ITEM components "opencl") + list(REMOVE_ITEM tools "nvprof" "nvvp") +elseif(target STREQUAL "ppc64le") + list(REMOVE_ITEM components "opencl") + list(REMOVE_ITEM libs "fabricmanager" "libnvidia_nscq" "libcufile") + list(REMOVE_ITEM util "nvidia_fs") +endif() + +list(TRANSFORM components PREPEND "cuda_") +list(TRANSFORM tools PREPEND "cuda_") + + + +set(update_opt "") +#set(cuda_updating 1) +if(cuda_updating) + set(VCPKG_USE_HEAD_VERSION 1) + set(update_opt SKIP_SHA512) + + message(STATUS "Running ${PORT} in update mode!") +else() + include("${CURRENT_PORT_DIR}/hash-${platform}-${target}.cmake") +endif() + +vcpkg_download_distfile( + cuda_redist_json + URLS ${base_url}/redistrib_${VERSION}.json + FILENAME cuda-${VERSION}.json + SHA512 ${cuda-json_HASH} + ${update_opt} +) + +if(cuda_updating) + file(SHA512 "${cuda_redist_json}" hash) + string(APPEND update_hash "set(cuda-json_HASH \"${hash}\")\n") +endif() + +file(READ "${cuda_redist_json}" cuda_json) + +file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/tools/cuda") + +set(licenses "") +foreach(comp IN LISTS components libs util tools) + string(JSON comp_json GET "${cuda_json}" "${comp}") + string(JSON lic_rel_url GET "${comp_json}" "license_path") + string(JSON comp_plat_json GET "${comp_json}" "${platform}-${target}") + string(JSON comp_plat_rel_url GET "${comp_plat_json}" "relative_path") + + set(lic_url "${base_url}/${lic_rel_url}") + set(comp_url "${base_url}/${comp_plat_rel_url}") + + vcpkg_download_distfile( + lic_${comp} + URLS ${lic_url} + FILENAME ${lic_rel_url} + SHA512 ${lic_${comp}_HASH} + ${update_opt} + ) + list(APPEND licenses "${lic_${comp}}") + if(cuda_updating) + file(SHA512 "${lic_${comp}}" hash) + string(APPEND update_hash "set(lic_${comp}_HASH \"${hash}\")\n") + endif() + + cmake_path(GET comp_plat_rel_url FILENAME comp_filename) + + vcpkg_download_distfile( + ${comp} + URLS ${comp_url} + FILENAME ${comp_filename} + SHA512 ${${comp}_HASH} + ${update_opt} + ) + if(cuda_updating) + file(SHA512 "${${comp}}" hash) + string(APPEND update_hash "set(${comp}_HASH \"${hash}\")\n") + continue() + endif() + + vcpkg_extract_source_archive( + comp-src + ARCHIVE ${${comp}} + SOURCE_BASE "${comp}" + #BASE_DIRECTORY "CUDA" + WORKING_DIRECTORY "${CURRENT_PACKAGES_DIR}/tools" + ) + + if("${comp}" IN_LIST components OR "${comp}" IN_LIST libs) + file(COPY "${comp-src}/" DESTINATION "${CURRENT_PACKAGES_DIR}" + PATTERN "*docs*" EXCLUDE + PATTERN "*samples*" EXCLUDE + PATTERN "*exsample*" EXCLUDE + PATTERN "src/*" EXCLUDE + PATTERN "LICENSE" EXCLUDE + ) + # Need a duplicate since nvcc won't magically add new unknown search paths for stuff + file(COPY "${comp-src}/" DESTINATION "${CURRENT_PACKAGES_DIR}/tools/cuda" + PATTERN "*docs*" EXCLUDE + PATTERN "*samples*" EXCLUDE + PATTERN "*exsample*" EXCLUDE + PATTERN "LICENSE" EXCLUDE + ) + else() + file(COPY "${comp-src}/" DESTINATION "${CURRENT_PACKAGES_DIR}/tools/cuda" + PATTERN "*docs*" EXCLUDE + PATTERN "*samples*" EXCLUDE + PATTERN "*exsample*" EXCLUDE + PATTERN "LICENSE" EXCLUDE + ) + endif() + file(REMOVE_RECURSE "${comp-src}") +endforeach() + +if(cuda_updating) + file(WRITE "${CURRENT_PORT_DIR}/new_hash-${platform}-${target}.cmake" "${update_hash}\n") + message(FATAL_ERROR "New hashes obtained!") +endif() + +file(COPY "${CURRENT_PACKAGES_DIR}/lib/cmake/" DESTINATION "${CURRENT_PACKAGES_DIR}/share/") +vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/share/cub/cub-header-search.cmake" "lib/cmake/cub" "share/cub") +vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/share/thrust/thrust-header-search.cmake" "lib/cmake/thrust" "share/thrust") +vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/share/libcudacxx/libcudacxx-header-search.cmake" "../../../" "../../") +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/lib/cmake/") + +if(VCPKG_TARGET_IS_WINDOWS) + file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/lib/Win32") + file(RENAME "${CURRENT_PACKAGES_DIR}/lib/x64/" "${CURRENT_PACKAGES_DIR}/lib-tmp/") + file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/lib") + file(RENAME "${CURRENT_PACKAGES_DIR}/lib-tmp" "${CURRENT_PACKAGES_DIR}/lib") +endif() + +if(NOT VCPKG_BUILD_TYPE) + file(COPY "${CURRENT_PACKAGES_DIR}/bin" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/bin") + file(COPY "${CURRENT_PACKAGES_DIR}/lib" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/lib") +endif() + +file(REMOVE_RECURSE + "${CURRENT_PACKAGES_DIR}/include/cub/cmake" + "${CURRENT_PACKAGES_DIR}/include/thrust/cmake" + "${CURRENT_PACKAGES_DIR}/src" +) + +file(REMOVE_RECURSE + "${CURRENT_PACKAGES_DIR}/tools/cuda/include/cub/cmake" + "${CURRENT_PACKAGES_DIR}/tools/cuda/include/thrust/cmake" +) + +vcpkg_install_copyright(FILE_LIST ${licenses}) + +file(COPY "${CMAKE_CURRENT_LIST_DIR}/vcpkg-port-config.cmake" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}") +configure_file("${CMAKE_CURRENT_LIST_DIR}/vcpkg_find_cuda.cmake" "${CURRENT_PACKAGES_DIR}/share/${PORT}//vcpkg_find_cuda.cmake" @ONLY) diff --git a/ports/cuda/vcpkg-port-config.cmake b/ports/cuda/vcpkg-port-config.cmake index c8b23036855952..a93877a6d25011 100644 --- a/ports/cuda/vcpkg-port-config.cmake +++ b/ports/cuda/vcpkg-port-config.cmake @@ -1 +1,4 @@ include("${CMAKE_CURRENT_LIST_DIR}/vcpkg_find_cuda.cmake") + +set(ENV{CUDA_PATH} "${CURRENT_INSTALLED_DIR}") +vcpkg_add_to_path(PREPEND "${CURRENT_HOST_INSTALLED_DIR}/tools/cuda/bin") \ No newline at end of file diff --git a/ports/cuda/vcpkg.json b/ports/cuda/vcpkg.json index 969232998ca05e..69cc4a907a43ba 100644 --- a/ports/cuda/vcpkg.json +++ b/ports/cuda/vcpkg.json @@ -1,9 +1,14 @@ { "name": "cuda", - "version": "10.1", - "port-version": 13, - "description": "A parallel computing platform and programming model", + "version": "12.3.1", + "description": "The NVIDIA® CUDA® Toolkit provides a development environment for creating high performance GPU-accelerated applications. With the CUDA Toolkit, you can develop, optimize, and deploy your applications on GPU-accelerated embedded systems, desktop workstations, enterprise data centers, cloud-based platforms and HPC supercomputers. The toolkit includes GPU-accelerated libraries, debugging and optimization tools, a C/C++ compiler, and a runtime library to deploy your application.", "homepage": "https://developer.nvidia.com/cuda-toolkit", "license": null, "supports": "(windows & x64 & !uwp & !xbox) | (linux & x64) | (linux & arm64)" + "dependencies": [ + { + "name": "cuda", + "host": true + } + ] } diff --git a/ports/cudnn/FindCUDNN.cmake b/ports/cudnn/FindCUDNN.cmake index 178cdaf02f2328..c98e730a113174 100644 --- a/ports/cudnn/FindCUDNN.cmake +++ b/ports/cudnn/FindCUDNN.cmake @@ -25,11 +25,11 @@ include(FindPackageHandleStandardArgs) find_path(CUDNN_INCLUDE_DIR NAMES cudnn.h cudnn_v8.h cudnn_v7.h - HINTS $ENV{CUDA_PATH} $ENV{CUDA_TOOLKIT_ROOT_DIR} $ENV{cudnn} $ENV{CUDNN} $ENV{CUDNN_ROOT_DIR} /usr/include /usr/include/x86_64-linux-gnu/ - PATH_SUFFIXES cuda/include include) + PATHS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}" + PATH_SUFFIXES include ) find_library(CUDNN_LIBRARY NAMES cudnn cudnn8 cudnn7 - HINTS $ENV{CUDA_PATH} $ENV{CUDA_TOOLKIT_ROOT_DIR} $ENV{cudnn} $ENV{CUDNN} $ENV{CUDNN_ROOT_DIR} /usr/lib/x86_64-linux-gnu/ /usr/ - PATH_SUFFIXES lib lib64 cuda/lib cuda/lib64 lib/x64 cuda/lib/x64) + PATHS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}" + PATH_SUFFIXES lib ) if(EXISTS "${CUDNN_INCLUDE_DIR}/cudnn.h") file(READ ${CUDNN_INCLUDE_DIR}/cudnn.h CUDNN_HEADER_CONTENTS) elseif(EXISTS "${CUDNN_INCLUDE_DIR}/cudnn_v8.h") diff --git a/ports/cudnn/portfile.cmake b/ports/cudnn/portfile.cmake index 5b2993efefbb3c..70b07c49380dce 100644 --- a/ports/cudnn/portfile.cmake +++ b/ports/cudnn/portfile.cmake @@ -1,65 +1,57 @@ -set(MINIMUM_CUDNN_VERSION "7.6.5") - -vcpkg_find_cuda(OUT_CUDA_TOOLKIT_ROOT CUDA_TOOLKIT_ROOT OUT_CUDA_VERSION CUDA_VERSION) - -# Try to find CUDNN if it exists; only download if it doesn't exist -find_path(CUDNN_INCLUDE_DIR NAMES cudnn.h cudnn_v8.h cudnn_v7.h - HINTS ${CUDA_TOOLKIT_ROOT} $ENV{CUDA_PATH} $ENV{CUDA_TOOLKIT_ROOT_DIR} $ENV{cudnn} $ENV{CUDNN} $ENV{CUDNN_ROOT_DIR} /usr/include /usr/include/x86_64-linux-gnu/ /usr/include/aarch64-linux-gnu/ - PATH_SUFFIXES cuda/include include) -message(STATUS "CUDNN_INCLUDE_DIR: ${CUDNN_INCLUDE_DIR}") -find_library(CUDNN_LIBRARY NAMES cudnn cudnn8 cudnn7 - HINTS ${CUDA_TOOLKIT_ROOT} $ENV{CUDA_PATH} $ENV{CUDA_TOOLKIT_ROOT_DIR} $ENV{cudnn} $ENV{CUDNN} $ENV{CUDNN_ROOT_DIR} /usr/lib/x86_64-linux-gnu/ /usr/include/aarch64-linux-gnu/ /usr/ - PATH_SUFFIXES lib lib64 cuda/lib cuda/lib64 lib/x64 cuda/lib/x64) -message(STATUS "CUDNN_LIBRARY: ${CUDNN_LIBRARY}") -if(EXISTS "${CUDNN_INCLUDE_DIR}/cudnn.h") - file(READ ${CUDNN_INCLUDE_DIR}/cudnn.h CUDNN_HEADER_CONTENTS) -elseif(EXISTS "${CUDNN_INCLUDE_DIR}/cudnn_v8.h") - file(READ ${CUDNN_INCLUDE_DIR}/cudnn_v8.h CUDNN_HEADER_CONTENTS) -elseif(EXISTS "${CUDNN_INCLUDE_DIR}/cudnn_v7.h") - file(READ ${CUDNN_INCLUDE_DIR}/cudnn_v7.h CUDNN_HEADER_CONTENTS) -endif() -if(EXISTS "${CUDNN_INCLUDE_DIR}/cudnn_version.h") - file(READ "${CUDNN_INCLUDE_DIR}/cudnn_version.h" CUDNN_VERSION_H_CONTENTS) - string(APPEND CUDNN_HEADER_CONTENTS "${CUDNN_VERSION_H_CONTENTS}") - unset(CUDNN_VERSION_H_CONTENTS) -elseif(EXISTS "${CUDNN_INCLUDE_DIR}/cudnn_version_v8.h") - file(READ "${CUDNN_INCLUDE_DIR}/cudnn_version_v8.h" CUDNN_VERSION_H_CONTENTS) - string(APPEND CUDNN_HEADER_CONTENTS "${CUDNN_VERSION_H_CONTENTS}") - unset(CUDNN_VERSION_H_CONTENTS) -elseif(EXISTS "${CUDNN_INCLUDE_DIR}/cudnn_version_v7.h") - file(READ "${CUDNN_INCLUDE_DIR}/cudnn_version_v7.h" CUDNN_VERSION_H_CONTENTS) - string(APPEND CUDNN_HEADER_CONTENTS "${CUDNN_VERSION_H_CONTENTS}") - unset(CUDNN_VERSION_H_CONTENTS) -endif() -if(CUDNN_HEADER_CONTENTS) - string(REGEX MATCH "define CUDNN_MAJOR * +([0-9]+)" - _CUDNN_VERSION_MAJOR "${CUDNN_HEADER_CONTENTS}") - string(REGEX REPLACE "define CUDNN_MAJOR * +([0-9]+)" "\\1" - _CUDNN_VERSION_MAJOR "${_CUDNN_VERSION_MAJOR}") - string(REGEX MATCH "define CUDNN_MINOR * +([0-9]+)" - _CUDNN_VERSION_MINOR "${CUDNN_HEADER_CONTENTS}") - string(REGEX REPLACE "define CUDNN_MINOR * +([0-9]+)" "\\1" - _CUDNN_VERSION_MINOR "${_CUDNN_VERSION_MINOR}") - string(REGEX MATCH "define CUDNN_PATCHLEVEL * +([0-9]+)" - _CUDNN_VERSION_PATCH "${CUDNN_HEADER_CONTENTS}") - string(REGEX REPLACE "define CUDNN_PATCHLEVEL * +([0-9]+)" "\\1" - _CUDNN_VERSION_PATCH "${_CUDNN_VERSION_PATCH}") - if(NOT _CUDNN_VERSION_MAJOR) - set(_CUDNN_VERSION "?") - else() - set(_CUDNN_VERSION "${_CUDNN_VERSION_MAJOR}.${_CUDNN_VERSION_MINOR}.${_CUDNN_VERSION_PATCH}") - endif() -endif() - -if (CUDNN_INCLUDE_DIR AND CUDNN_LIBRARY AND _CUDNN_VERSION VERSION_GREATER_EQUAL MINIMUM_CUDNN_VERSION) - message(STATUS "Found CUDNN ${_CUDNN_VERSION} located on system: (include ${CUDNN_INCLUDE_DIR} lib: ${CUDNN_LIBRARY})") - set(VCPKG_POLICY_EMPTY_PACKAGE enabled) -elseif(VCPKG_TARGET_IS_WINDOWS) - message(FATAL_ERROR "Please download CUDNN from official sources (such as https://developer.nvidia.com/rdp/cudnn-download ) and extract the zip into your CUDA_TOOLKIT_ROOT (${CUDA_TOOLKIT_ROOT}). (For example: tar.exe -xvf cudnn-11.2-windows-x64-v8.1.1.33.zip --strip 1 --directory \"${CUDA_TOOLKIT_ROOT}\"") -else() - message(FATAL_ERROR "Please install CUDNN using your system package manager (the same way you installed CUDA). For example: apt install libcudnn8-dev.") -endif() - -file(INSTALL "${CURRENT_PORT_DIR}/FindCUDNN.cmake" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}") -file(INSTALL "${CURRENT_PORT_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}") -file(INSTALL "${CURRENT_PORT_DIR}/vcpkg-cmake-wrapper.cmake" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}") +set(base_url "https://developer.download.nvidia.com/compute/cuda/redist") + +if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64") + set(target x86_64) +elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "arm64" AND VCPKG_TARGET_IS_LINUX) + set(target sbsa) +elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "ppc64" AND VCPKG_TARGET_IS_LINUX) + set(target ppc64le) +else() + message(FATAL_ERROR "Unsupported architecture") +endif() + +set(ext ".tar.gz") +if(VCPKG_TARGET_IS_WINDOWS) + set(platform windows) + set(ext ".zip") + +else() + set(platform linux) +endif() + +set(cuDNN-windows-x86_64_HASH 55e7ddac92bbb1e7354ae7f1a2246da079c1147534357594419dcde740308a49854b79154e91b2970f8746c27f9564636cce955a21360cba003b93a786168e1d) +set(cuDNN-linux-x86_64_HASH 0) + +vcpkg_download_distfile( + cudnn + URLS https://developer.download.nvidia.com/compute/cudnn/redist/cudnn/${platform}-${target}/cudnn-${platform}-${target}-${VERSION}_cuda12-archive${ext} + FILENAME cudnn-${platform}-${target}-${VERSION}_cuda12-archive${ext} + SHA512 ${cuDNN-${platform}-${target}_HASH} +) + +vcpkg_extract_source_archive( + cudnn-src + ARCHIVE ${cudnn} + SOURCE_BASE "cudnn" + #BASE_DIRECTORY "CUDA" + WORKING_DIRECTORY "${CURRENT_PACKAGES_DIR}" +) + +file(COPY "${cudnn-src}/" DESTINATION "${CURRENT_PACKAGES_DIR}") +vcpkg_install_copyright(FILE_LIST "${cudnn-src}/LICENSE") +file(REMOVE_RECURSE "${cudnn-src}" "${CURRENT_PACKAGES_DIR}/LICENSE") + +if(VCPKG_TARGET_IS_WINDOWS) + file(RENAME "${CURRENT_PACKAGES_DIR}/lib/x64/" "${CURRENT_PACKAGES_DIR}/lib-tmp/") + file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/lib") + file(RENAME "${CURRENT_PACKAGES_DIR}/lib-tmp" "${CURRENT_PACKAGES_DIR}/lib") +endif() + +if(NOT VCPKG_BUILD_TYPE) + file(COPY "${CURRENT_PACKAGES_DIR}/bin" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/bin") + file(COPY "${CURRENT_PACKAGES_DIR}/lib" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/lib") +endif() + +file(INSTALL "${CURRENT_PORT_DIR}/FindCUDNN.cmake" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}") +file(INSTALL "${CURRENT_PORT_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}") +file(INSTALL "${CURRENT_PORT_DIR}/vcpkg-cmake-wrapper.cmake" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}") \ No newline at end of file diff --git a/ports/cudnn/vcpkg.json b/ports/cudnn/vcpkg.json index 32d5756884a54e..33e542f1f5dd8e 100644 --- a/ports/cudnn/vcpkg.json +++ b/ports/cudnn/vcpkg.json @@ -1,11 +1,7 @@ { "name": "cudnn", - "version": "7.6.5", - "port-version": 10, - "description": "NVIDIA's cuDNN deep neural network acceleration library.", - "homepage": "https://developer.nvidia.com/cudnn", - "license": null, - "supports": "(windows & x64 & !uwp) | (linux & x64) | (linux & arm64)", + "version": "8.9.6.50", + "description": "NVIDIA cuDNN is a GPU-accelerated library of primitives for deep neural networks.", "dependencies": [ "cuda" ] diff --git a/ports/cusparselt/portfile.cmake b/ports/cusparselt/portfile.cmake new file mode 100644 index 00000000000000..8c6ec54ab29feb --- /dev/null +++ b/ports/cusparselt/portfile.cmake @@ -0,0 +1,63 @@ +if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64") + set(target x86_64) +elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "arm64" AND VCPKG_TARGET_IS_LINUX) + set(target sbsa) +elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "ppc64" AND VCPKG_TARGET_IS_LINUX) + set(target ppc64le) +else() + message(FATAL_ERROR "Unsupported architecture") +endif() + +set(ext ".tar.gz") +if(VCPKG_TARGET_IS_WINDOWS) + set(platform windows) + set(ext ".zip") + +else() + set(platform linux) +endif() + +set(${PORT}-windows-x86_64_HASH 182de592b37fc38dfe51512165301779e3bd2a5fe0262b4784ac98a3a08fd0aee807a4f11f54701e2c951e8d4a7e8574582b6bf2755b9aca534b7a8a1359e40d) +set(${PORT}-linux-x86_64_HASH 0) + +vcpkg_download_distfile( + ${PORT} + URLS https://developer.download.nvidia.com/compute/cusparselt/redist/libcusparse_lt/${platform}-${target}/libcusparse_lt-${platform}-${target}-${VERSION}-archive${ext} + FILENAME libcusparse_lt-${platform}-${target}-${VERSION}-archive${ext} + SHA512 ${${PORT}-${platform}-${target}_HASH} +) + +vcpkg_extract_source_archive( + ${PORT}-src + ARCHIVE ${${PORT}} + SOURCE_BASE "${PORT}" + #BASE_DIRECTORY "CUDA" + WORKING_DIRECTORY "${CURRENT_PACKAGES_DIR}" +) + +file(COPY "${${PORT}-src}/" DESTINATION "${CURRENT_PACKAGES_DIR}") +vcpkg_install_copyright(FILE_LIST "${${PORT}-src}/LICENSE") +file(REMOVE_RECURSE "${${PORT}-src}" "${CURRENT_PACKAGES_DIR}/LICENSE") + +if(VCPKG_TARGET_IS_WINDOWS) + file(GLOB dll "${CURRENT_PACKAGES_DIR}/lib/*.dll") + string(REPLACE "/lib/" "/bin/" new_dll "${dll}") + file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/bin") + file(RENAME "${dll}" "${new_dll}") +endif() + +if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + file(REMOVE_RECURSE + "${CURRENT_PACKAGES_DIR}/bin" + "${CURRENT_PACKAGES_DIR}/lib/cusparseLt.lib" + ) +else() + file(GLOB static_libs "${CURRENT_PACKAGES_DIR}/lib/*_static*") + file(REMOVE_RECURSE ${static_libs}) +endif() + +if(NOT VCPKG_BUILD_TYPE) + file(COPY "${CURRENT_PACKAGES_DIR}/bin" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/bin") + file(COPY "${CURRENT_PACKAGES_DIR}/lib" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/lib") +endif() + diff --git a/ports/cusparselt/vcpkg.json b/ports/cusparselt/vcpkg.json new file mode 100644 index 00000000000000..10d1598f2a79e9 --- /dev/null +++ b/ports/cusparselt/vcpkg.json @@ -0,0 +1,9 @@ +{ + "name": "cusparselt", + "version": "0.5.0.1", + "description": "cuSPARSELt: A High-Performance CUDA Library for Sparse Matrix-Matrix Multiplication", + "homepage": "https://docs.nvidia.com/cuda/cusparselt/index.html", + "dependencies": [ + "cuda" + ] +} From 6b443355278a3f3700630a84aa4107f07441e8ff Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Sun, 26 Nov 2023 21:01:45 +0100 Subject: [PATCH 02/43] Fix manifest --- ports/cuda/vcpkg.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ports/cuda/vcpkg.json b/ports/cuda/vcpkg.json index 69cc4a907a43ba..0f3c01edf97ed8 100644 --- a/ports/cuda/vcpkg.json +++ b/ports/cuda/vcpkg.json @@ -1,10 +1,10 @@ { "name": "cuda", "version": "12.3.1", - "description": "The NVIDIA® CUDA® Toolkit provides a development environment for creating high performance GPU-accelerated applications. With the CUDA Toolkit, you can develop, optimize, and deploy your applications on GPU-accelerated embedded systems, desktop workstations, enterprise data centers, cloud-based platforms and HPC supercomputers. The toolkit includes GPU-accelerated libraries, debugging and optimization tools, a C/C++ compiler, and a runtime library to deploy your application.", + "description": "The NVIDIA CUDA Toolkit provides a development environment for creating high performance GPU-accelerated applications. With the CUDA Toolkit, you can develop, optimize, and deploy your applications on GPU-accelerated embedded systems, desktop workstations, enterprise data centers, cloud-based platforms and HPC supercomputers. The toolkit includes GPU-accelerated libraries, debugging and optimization tools, a C/C++ compiler, and a runtime library to deploy your application.", "homepage": "https://developer.nvidia.com/cuda-toolkit", "license": null, - "supports": "(windows & x64 & !uwp & !xbox) | (linux & x64) | (linux & arm64)" + "supports": "(windows & x64 & !uwp & !xbox) | (linux & x64) | (linux & arm64)", "dependencies": [ { "name": "cuda", From 12b283cd584f78b7f4ed753bd81bee2e9afe57ad Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Mon, 27 Nov 2023 00:11:48 +0100 Subject: [PATCH 03/43] fine tuning --- ports/cuda/portfile.cmake | 58 ++++++++++++++++++++++++++++++--------- 1 file changed, 45 insertions(+), 13 deletions(-) diff --git a/ports/cuda/portfile.cmake b/ports/cuda/portfile.cmake index 12979fb73aa57c..5649180557b4e1 100644 --- a/ports/cuda/portfile.cmake +++ b/ports/cuda/portfile.cmake @@ -16,7 +16,7 @@ else() set(platform linux) endif() -set(components +set(components cccl # < contains cmake files cudart nvtx @@ -27,7 +27,7 @@ set(components #sanitizer_api ) -set(libs +set(libs libcublas libcufft libcurand @@ -43,7 +43,7 @@ set(util #nsight_systems ) -set(tools +set(tools cuobjdump cupti cuxxfilt # has some extra API @@ -63,12 +63,12 @@ endif() if(VCPKG_TARGET_IS_LINUX) list(APPEND libs - fabricmanager - libnvidia_nscq - nvidia_driver + fabricmanager + libnvidia_nscq + #nvidia_driver libcufile ) - list(APPEND util + list(APPEND util nvidia_fs ) list(APPEND util @@ -88,8 +88,6 @@ endif() list(TRANSFORM components PREPEND "cuda_") list(TRANSFORM tools PREPEND "cuda_") - - set(update_opt "") #set(cuda_updating 1) if(cuda_updating) @@ -168,16 +166,27 @@ foreach(comp IN LISTS components libs util tools) file(COPY "${comp-src}/" DESTINATION "${CURRENT_PACKAGES_DIR}" PATTERN "*docs*" EXCLUDE PATTERN "*samples*" EXCLUDE - PATTERN "*exsample*" EXCLUDE + PATTERN "*example*" EXCLUDE PATTERN "src/*" EXCLUDE PATTERN "LICENSE" EXCLUDE + PATTERN "kernel" EXCLUDE + PATTERN "kernel-open" EXCLUDE + PATTERN "lib32" EXCLUDE + PATTERN "man" EXCLUDE + PATTERN "sbin" EXCLUDE + PATTERN "systemd" EXCLUDE + PATTERN "tests" EXCLUDE + PATTERN "wine" EXCLUDE + PATTERN "firmware" EXCLUDE ) # Need a duplicate since nvcc won't magically add new unknown search paths for stuff file(COPY "${comp-src}/" DESTINATION "${CURRENT_PACKAGES_DIR}/tools/cuda" PATTERN "*docs*" EXCLUDE PATTERN "*samples*" EXCLUDE - PATTERN "*exsample*" EXCLUDE + PATTERN "*example*" EXCLUDE PATTERN "LICENSE" EXCLUDE + PATTERN "tests" EXCLUDE + PATTERN "wine" EXCLUDE ) else() file(COPY "${comp-src}/" DESTINATION "${CURRENT_PACKAGES_DIR}/tools/cuda" @@ -208,9 +217,23 @@ if(VCPKG_TARGET_IS_WINDOWS) file(RENAME "${CURRENT_PACKAGES_DIR}/lib-tmp" "${CURRENT_PACKAGES_DIR}/lib") endif() +if(EXISTS "${CURRENT_PACKAGES_DIR}/pkg-config") + file(RENAME "${CURRENT_PACKAGES_DIR}/pkg-config" "${CURRENT_PACKAGES_DIR}/lib/pkgconfig") + file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/tools/cuda/pkg-config") + file(GLOB pc_files "${CURRENT_PACKAGES_DIR}/lib/pkgconfig/*.pc") + foreach(pc_file IN LISTS pc_files) + file(READ "${pc_file}" contents) + string(REGEX REPLACE "cudaroot=[^\n]+" "cudaroot=\${prefix}" contents "${contents}") + string(REGEX REPLACE "/targets/x86_64-linux" "" contents "${contents}") + file(WRITE "${pc_file}" "${contents}") + endforeach() +endif() + + + if(NOT VCPKG_BUILD_TYPE) - file(COPY "${CURRENT_PACKAGES_DIR}/bin" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/bin") - file(COPY "${CURRENT_PACKAGES_DIR}/lib" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/lib") + file(COPY "${CURRENT_PACKAGES_DIR}/bin/" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/bin") + file(COPY "${CURRENT_PACKAGES_DIR}/lib/" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/lib") endif() file(REMOVE_RECURSE @@ -222,9 +245,18 @@ file(REMOVE_RECURSE file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/tools/cuda/include/cub/cmake" "${CURRENT_PACKAGES_DIR}/tools/cuda/include/thrust/cmake" + "${CURRENT_PACKAGES_DIR}/MANIFEST" + "${CURRENT_PACKAGES_DIR}/third-party-notices.txt" + "${CURRENT_PACKAGES_DIR}/README" + "${CURRENT_PACKAGES_DIR}/CHANGELOG" ) vcpkg_install_copyright(FILE_LIST ${licenses}) file(COPY "${CMAKE_CURRENT_LIST_DIR}/vcpkg-port-config.cmake" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}") configure_file("${CMAKE_CURRENT_LIST_DIR}/vcpkg_find_cuda.cmake" "${CURRENT_PACKAGES_DIR}/share/${PORT}//vcpkg_find_cuda.cmake" @ONLY) + +vcpkg_fixup_pkgconfig() + +set(VCPKG_POLICY_SKIP_DUMPBIN_CHECKS enabled) +set(VCPKG_POLICY_DLLS_IN_STATIC_LIBRARY enabled) From 584d8c0fd6bb57d0bfb9cdcd871ea1c01c50c9cf Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Mon, 27 Nov 2023 01:17:09 +0100 Subject: [PATCH 04/43] remove empty dirs after tuning --- ports/cuda/portfile.cmake | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ports/cuda/portfile.cmake b/ports/cuda/portfile.cmake index 5649180557b4e1..aa742dcb106d2a 100644 --- a/ports/cuda/portfile.cmake +++ b/ports/cuda/portfile.cmake @@ -240,6 +240,8 @@ file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/include/cub/cmake" "${CURRENT_PACKAGES_DIR}/include/thrust/cmake" "${CURRENT_PACKAGES_DIR}/src" + "${CURRENT_PACKAGES_DIR}/nvml" + "${CURRENT_PACKAGES_DIR}/tools/cuda/nvml" ) file(REMOVE_RECURSE From b2a2eac083d8f6828bb603dd297f5679b16810a4 Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Sat, 2 Dec 2023 23:30:15 +0100 Subject: [PATCH 05/43] do not install /include/cub/ since that is another port --- ports/cuda/portfile.cmake | 1 + 1 file changed, 1 insertion(+) diff --git a/ports/cuda/portfile.cmake b/ports/cuda/portfile.cmake index aa742dcb106d2a..2cc9aa5f579afe 100644 --- a/ports/cuda/portfile.cmake +++ b/ports/cuda/portfile.cmake @@ -178,6 +178,7 @@ foreach(comp IN LISTS components libs util tools) PATTERN "tests" EXCLUDE PATTERN "wine" EXCLUDE PATTERN "firmware" EXCLUDE + PATTERN "include/cub/" EXCLUDE # cub has its own port ) # Need a duplicate since nvcc won't magically add new unknown search paths for stuff file(COPY "${comp-src}/" DESTINATION "${CURRENT_PACKAGES_DIR}/tools/cuda" From 24daba228681897374b3a9a39213d0aaa17259c5 Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Sat, 2 Dec 2023 23:53:58 +0100 Subject: [PATCH 06/43] add a wrapper for cuda --- ports/cuda/portfile.cmake | 4 +++- ports/cuda/vcpkg-cmake-wrapper.cmake | 3 +++ 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 ports/cuda/vcpkg-cmake-wrapper.cmake diff --git a/ports/cuda/portfile.cmake b/ports/cuda/portfile.cmake index 2cc9aa5f579afe..d33f9c8c3d788c 100644 --- a/ports/cuda/portfile.cmake +++ b/ports/cuda/portfile.cmake @@ -257,7 +257,9 @@ file(REMOVE_RECURSE vcpkg_install_copyright(FILE_LIST ${licenses}) file(COPY "${CMAKE_CURRENT_LIST_DIR}/vcpkg-port-config.cmake" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}") -configure_file("${CMAKE_CURRENT_LIST_DIR}/vcpkg_find_cuda.cmake" "${CURRENT_PACKAGES_DIR}/share/${PORT}//vcpkg_find_cuda.cmake" @ONLY) +configure_file("${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake" "${CURRENT_PACKAGES_DIR}/share/${PORT}/vcpkg-cmake-wrapper.cmake" @ONLY) +configure_file("${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake" "${CURRENT_PACKAGES_DIR}/share/CUDAToolkit/vcpkg-cmake-wrapper.cmake" @ONLY) +configure_file("${CMAKE_CURRENT_LIST_DIR}/vcpkg_find_cuda.cmake" "${CURRENT_PACKAGES_DIR}/share/${PORT}/vcpkg_find_cuda.cmake" @ONLY) vcpkg_fixup_pkgconfig() diff --git a/ports/cuda/vcpkg-cmake-wrapper.cmake b/ports/cuda/vcpkg-cmake-wrapper.cmake new file mode 100644 index 00000000000000..cfb8e6f5eca646 --- /dev/null +++ b/ports/cuda/vcpkg-cmake-wrapper.cmake @@ -0,0 +1,3 @@ +set(CUDA_TOOLKIT_ROOT_DIR "${CMAKE_CURRENT_LIST_DIR}/../../@TARGET_TRIPLET@/tools/cuda") +set(CUDAToolkit_ROOT "${CMAKE_CURRENT_LIST_DIR}/../../@TARGET_TRIPLET@/tools/cuda") +_find_package(${ARGS}) From 7075a4857b67a55cb393d319c0865d932cba73dc Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Sun, 3 Dec 2023 00:10:02 +0100 Subject: [PATCH 07/43] don't install cuda also into prefix --- ports/cuda/portfile.cmake | 46 ++++++++++++++++++++------------------- 1 file changed, 24 insertions(+), 22 deletions(-) diff --git a/ports/cuda/portfile.cmake b/ports/cuda/portfile.cmake index d33f9c8c3d788c..5eb5ea203c1971 100644 --- a/ports/cuda/portfile.cmake +++ b/ports/cuda/portfile.cmake @@ -163,23 +163,23 @@ foreach(comp IN LISTS components libs util tools) ) if("${comp}" IN_LIST components OR "${comp}" IN_LIST libs) - file(COPY "${comp-src}/" DESTINATION "${CURRENT_PACKAGES_DIR}" - PATTERN "*docs*" EXCLUDE - PATTERN "*samples*" EXCLUDE - PATTERN "*example*" EXCLUDE - PATTERN "src/*" EXCLUDE - PATTERN "LICENSE" EXCLUDE - PATTERN "kernel" EXCLUDE - PATTERN "kernel-open" EXCLUDE - PATTERN "lib32" EXCLUDE - PATTERN "man" EXCLUDE - PATTERN "sbin" EXCLUDE - PATTERN "systemd" EXCLUDE - PATTERN "tests" EXCLUDE - PATTERN "wine" EXCLUDE - PATTERN "firmware" EXCLUDE - PATTERN "include/cub/" EXCLUDE # cub has its own port - ) + #file(COPY "${comp-src}/" DESTINATION "${CURRENT_PACKAGES_DIR}" + # PATTERN "*docs*" EXCLUDE + # PATTERN "*samples*" EXCLUDE + # PATTERN "*example*" EXCLUDE + # PATTERN "src/*" EXCLUDE + # PATTERN "LICENSE" EXCLUDE + # PATTERN "kernel" EXCLUDE + # PATTERN "kernel-open" EXCLUDE + # PATTERN "lib32" EXCLUDE + # PATTERN "man" EXCLUDE + # PATTERN "sbin" EXCLUDE + # PATTERN "systemd" EXCLUDE + # PATTERN "tests" EXCLUDE + # PATTERN "wine" EXCLUDE + # PATTERN "firmware" EXCLUDE + # PATTERN "include/cub/" EXCLUDE # cub has its own port + #) # Need a duplicate since nvcc won't magically add new unknown search paths for stuff file(COPY "${comp-src}/" DESTINATION "${CURRENT_PACKAGES_DIR}/tools/cuda" PATTERN "*docs*" EXCLUDE @@ -205,17 +205,17 @@ if(cuda_updating) message(FATAL_ERROR "New hashes obtained!") endif() -file(COPY "${CURRENT_PACKAGES_DIR}/lib/cmake/" DESTINATION "${CURRENT_PACKAGES_DIR}/share/") +file(COPY "${CURRENT_PACKAGES_DIR}/tools/cuda/lib/cmake/" DESTINATION "${CURRENT_PACKAGES_DIR}/share/") vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/share/cub/cub-header-search.cmake" "lib/cmake/cub" "share/cub") vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/share/thrust/thrust-header-search.cmake" "lib/cmake/thrust" "share/thrust") vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/share/libcudacxx/libcudacxx-header-search.cmake" "../../../" "../../") file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/lib/cmake/") if(VCPKG_TARGET_IS_WINDOWS) - file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/lib/Win32") - file(RENAME "${CURRENT_PACKAGES_DIR}/lib/x64/" "${CURRENT_PACKAGES_DIR}/lib-tmp/") - file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/lib") - file(RENAME "${CURRENT_PACKAGES_DIR}/lib-tmp" "${CURRENT_PACKAGES_DIR}/lib") +# file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/lib/Win32") +# file(RENAME "${CURRENT_PACKAGES_DIR}/lib/x64/" "${CURRENT_PACKAGES_DIR}/lib-tmp/") +# file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/lib") +# file(RENAME "${CURRENT_PACKAGES_DIR}/lib-tmp" "${CURRENT_PACKAGES_DIR}/lib") endif() if(EXISTS "${CURRENT_PACKAGES_DIR}/pkg-config") @@ -265,3 +265,5 @@ vcpkg_fixup_pkgconfig() set(VCPKG_POLICY_SKIP_DUMPBIN_CHECKS enabled) set(VCPKG_POLICY_DLLS_IN_STATIC_LIBRARY enabled) + +set(VCPKG_POLICY_EMPTY_INCLUDE_FOLDER enabled) From 817a4309f582814f72ef90b355082bfaa0ee173b Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Sun, 3 Dec 2023 00:42:53 +0100 Subject: [PATCH 08/43] disable debug copy --- ports/cuda/portfile.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ports/cuda/portfile.cmake b/ports/cuda/portfile.cmake index 5eb5ea203c1971..b9b00b80eaeb33 100644 --- a/ports/cuda/portfile.cmake +++ b/ports/cuda/portfile.cmake @@ -233,8 +233,8 @@ endif() if(NOT VCPKG_BUILD_TYPE) - file(COPY "${CURRENT_PACKAGES_DIR}/bin/" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/bin") - file(COPY "${CURRENT_PACKAGES_DIR}/lib/" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/lib") +# file(COPY "${CURRENT_PACKAGES_DIR}/bin/" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/bin") +# file(COPY "${CURRENT_PACKAGES_DIR}/lib/" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/lib") endif() file(REMOVE_RECURSE From 21e55c1aabfd43d4aa4bd412a4f1177c3dccb403 Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Sun, 3 Dec 2023 09:32:20 +0100 Subject: [PATCH 09/43] adjust installation a bit --- ports/cuda/portfile.cmake | 39 +++++++++++++---------- ports/cuda/vcpkg_find_cuda.cmake | 53 +++++++------------------------- 2 files changed, 34 insertions(+), 58 deletions(-) diff --git a/ports/cuda/portfile.cmake b/ports/cuda/portfile.cmake index b9b00b80eaeb33..7de4f1a381723b 100644 --- a/ports/cuda/portfile.cmake +++ b/ports/cuda/portfile.cmake @@ -163,10 +163,14 @@ foreach(comp IN LISTS components libs util tools) ) if("${comp}" IN_LIST components OR "${comp}" IN_LIST libs) - #file(COPY "${comp-src}/" DESTINATION "${CURRENT_PACKAGES_DIR}" + file(COPY "${comp-src}/" DESTINATION "${CURRENT_PACKAGES_DIR}" + PATTERN "/bin/*.dll" INCLUDE + PATTERN "/lib/*.lib" INCLUDE + PATTERN "/lib/*.a" INCLUDE + PATTERN "/lib/*.so" INCLUDE # PATTERN "*docs*" EXCLUDE # PATTERN "*samples*" EXCLUDE - # PATTERN "*example*" EXCLUDE + # # PATTERN "*example*" EXCLUDE # PATTERN "src/*" EXCLUDE # PATTERN "LICENSE" EXCLUDE # PATTERN "kernel" EXCLUDE @@ -179,7 +183,7 @@ foreach(comp IN LISTS components libs util tools) # PATTERN "wine" EXCLUDE # PATTERN "firmware" EXCLUDE # PATTERN "include/cub/" EXCLUDE # cub has its own port - #) + ) # Need a duplicate since nvcc won't magically add new unknown search paths for stuff file(COPY "${comp-src}/" DESTINATION "${CURRENT_PACKAGES_DIR}/tools/cuda" PATTERN "*docs*" EXCLUDE @@ -205,27 +209,30 @@ if(cuda_updating) message(FATAL_ERROR "New hashes obtained!") endif() -file(COPY "${CURRENT_PACKAGES_DIR}/tools/cuda/lib/cmake/" DESTINATION "${CURRENT_PACKAGES_DIR}/share/") -vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/share/cub/cub-header-search.cmake" "lib/cmake/cub" "share/cub") +file(COPY "${CURRENT_PACKAGES_DIR}/tools/cuda/lib/cmake/" DESTINATION "${CURRENT_PACKAGES_DIR}/share/" + PATTERN "/share/cub/" EXCLUDE +) +#vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/share/cub/cub-header-search.cmake" "lib/cmake/cub" "share/cub") vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/share/thrust/thrust-header-search.cmake" "lib/cmake/thrust" "share/thrust") vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/share/libcudacxx/libcudacxx-header-search.cmake" "../../../" "../../") file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/lib/cmake/") if(VCPKG_TARGET_IS_WINDOWS) -# file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/lib/Win32") -# file(RENAME "${CURRENT_PACKAGES_DIR}/lib/x64/" "${CURRENT_PACKAGES_DIR}/lib-tmp/") -# file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/lib") -# file(RENAME "${CURRENT_PACKAGES_DIR}/lib-tmp" "${CURRENT_PACKAGES_DIR}/lib") + file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/lib/Win32") + file(RENAME "${CURRENT_PACKAGES_DIR}/lib/x64/" "${CURRENT_PACKAGES_DIR}/lib-tmp/") + file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/lib") + file(RENAME "${CURRENT_PACKAGES_DIR}/lib-tmp" "${CURRENT_PACKAGES_DIR}/lib") endif() -if(EXISTS "${CURRENT_PACKAGES_DIR}/pkg-config") - file(RENAME "${CURRENT_PACKAGES_DIR}/pkg-config" "${CURRENT_PACKAGES_DIR}/lib/pkgconfig") +if(EXISTS "${CURRENT_PACKAGES_DIR}/tools/cuda/pkg-config") + file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/share") + file(RENAME "${CURRENT_PACKAGES_DIR}/pkg-config" "${CURRENT_PACKAGES_DIR}/share/pkgconfig") file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/tools/cuda/pkg-config") - file(GLOB pc_files "${CURRENT_PACKAGES_DIR}/lib/pkgconfig/*.pc") + file(GLOB pc_files "${CURRENT_PACKAGES_DIR}/share/pkgconfig/*.pc") foreach(pc_file IN LISTS pc_files) file(READ "${pc_file}" contents) - string(REGEX REPLACE "cudaroot=[^\n]+" "cudaroot=\${prefix}" contents "${contents}") - string(REGEX REPLACE "/targets/x86_64-linux" "" contents "${contents}") + string(REGEX REPLACE "cudaroot=[^\n]+" "cudaroot=\${prefix}/tools/cuda" contents "${contents}") + #string(REGEX REPLACE "/targets/x86_64-linux" "" contents "${contents}") file(WRITE "${pc_file}" "${contents}") endforeach() endif() @@ -233,8 +240,8 @@ endif() if(NOT VCPKG_BUILD_TYPE) -# file(COPY "${CURRENT_PACKAGES_DIR}/bin/" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/bin") -# file(COPY "${CURRENT_PACKAGES_DIR}/lib/" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/lib") + file(COPY "${CURRENT_PACKAGES_DIR}/bin/" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/bin") + file(COPY "${CURRENT_PACKAGES_DIR}/lib/" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/lib") endif() file(REMOVE_RECURSE diff --git a/ports/cuda/vcpkg_find_cuda.cmake b/ports/cuda/vcpkg_find_cuda.cmake index a6265b78b7192a..62095cb59ac905 100644 --- a/ports/cuda/vcpkg_find_cuda.cmake +++ b/ports/cuda/vcpkg_find_cuda.cmake @@ -2,58 +2,27 @@ function(vcpkg_find_cuda) cmake_parse_arguments(PARSE_ARGV 0 vfc "" "OUT_CUDA_TOOLKIT_ROOT;OUT_CUDA_VERSION" "") if(NOT vfc_OUT_CUDA_TOOLKIT_ROOT) - message(FATAL_ERROR "vcpkg_find_cuda() requres an OUT_CUDA_TOOLKIT_ROOT argument") + message(FATAL_ERROR "vcpkg_find_cuda() requires an OUT_CUDA_TOOLKIT_ROOT argument") endif() - set(CUDA_REQUIRED_VERSION "10.1.0") + set(CUDA_REQUIRED_VERSION "11.0.0") set(CUDA_PATHS + ${CURRENT_INSTALLED_DIR}/tools/cuda ENV CUDA_PATH ENV CUDA_HOME ENV CUDA_BIN_PATH ENV CUDA_TOOLKIT_ROOT_DIR) - if (VCPKG_TARGET_IS_WINDOWS) - find_program(NVCC - NAMES nvcc.exe - PATHS - ${CUDA_PATHS} - PATH_SUFFIXES bin bin64 - DOC "Toolkit location." - NO_DEFAULT_PATH - ) - else() - if (VCPKG_TARGET_IS_LINUX) - set(platform_base "/usr/local/cuda-") - else() - set(platform_base "/Developer/NVIDIA/CUDA-") - endif() - file(GLOB possible_paths "${platform_base}*") - set(FOUND_PATH ) - foreach (p ${possible_paths}) - # Extract version number from end of string - string(REGEX MATCH "[0-9][0-9]?\\.[0-9]$" p_version ${p}) - if (IS_DIRECTORY ${p} AND p_version) - if (p_version VERSION_GREATER_EQUAL CUDA_REQUIRED_VERSION) - set(FOUND_PATH ${p}) - break() - endif() - endif() - endforeach() - - vcpkg_list(APPEND CUDA_PATHS /usr/bin) - - find_program(NVCC - NAMES nvcc - PATHS - ${CUDA_PATHS} - PATHS ${FOUND_PATH} - PATH_SUFFIXES bin bin64 - DOC "Toolkit location." - NO_DEFAULT_PATH - ) - endif() + find_program(NVCC + NAMES nvcc.exe + PATHS + ${CUDA_PATHS} + PATH_SUFFIXES bin bin64 + DOC "Toolkit location." + NO_DEFAULT_PATH + ) set(error_code 1) if (NVCC) From 857d5dfafd19f9215ce0bcc369d08de3e7809dbc Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Sun, 3 Dec 2023 10:17:05 +0100 Subject: [PATCH 10/43] fix linux installation --- ports/cudnn/portfile.cmake | 8 +++++--- ports/cusparselt/portfile.cmake | 8 +++++--- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/ports/cudnn/portfile.cmake b/ports/cudnn/portfile.cmake index 70b07c49380dce..dbeba0e5c764a5 100644 --- a/ports/cudnn/portfile.cmake +++ b/ports/cudnn/portfile.cmake @@ -10,7 +10,7 @@ else() message(FATAL_ERROR "Unsupported architecture") endif() -set(ext ".tar.gz") +set(ext ".tar.xz") if(VCPKG_TARGET_IS_WINDOWS) set(platform windows) set(ext ".zip") @@ -20,7 +20,7 @@ else() endif() set(cuDNN-windows-x86_64_HASH 55e7ddac92bbb1e7354ae7f1a2246da079c1147534357594419dcde740308a49854b79154e91b2970f8746c27f9564636cce955a21360cba003b93a786168e1d) -set(cuDNN-linux-x86_64_HASH 0) +set(cuDNN-linux-x86_64_HASH d066f1c736fbc1106809fc6fd0eb27a333e9d70413f339f36074f7289f91982913166d69bda3c6e1a939d0ed7bad16574c95d80c1cff51678b8f13cb6e355f5c) vcpkg_download_distfile( cudnn @@ -48,7 +48,9 @@ if(VCPKG_TARGET_IS_WINDOWS) endif() if(NOT VCPKG_BUILD_TYPE) - file(COPY "${CURRENT_PACKAGES_DIR}/bin" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/bin") + if(EXISTS "${CURRENT_PACKAGES_DIR}/bin") + file(COPY "${CURRENT_PACKAGES_DIR}/bin" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/bin") + endif() file(COPY "${CURRENT_PACKAGES_DIR}/lib" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/lib") endif() diff --git a/ports/cusparselt/portfile.cmake b/ports/cusparselt/portfile.cmake index 8c6ec54ab29feb..703b669ac7d6ac 100644 --- a/ports/cusparselt/portfile.cmake +++ b/ports/cusparselt/portfile.cmake @@ -8,7 +8,7 @@ else() message(FATAL_ERROR "Unsupported architecture") endif() -set(ext ".tar.gz") +set(ext ".tar.xz") if(VCPKG_TARGET_IS_WINDOWS) set(platform windows) set(ext ".zip") @@ -18,7 +18,7 @@ else() endif() set(${PORT}-windows-x86_64_HASH 182de592b37fc38dfe51512165301779e3bd2a5fe0262b4784ac98a3a08fd0aee807a4f11f54701e2c951e8d4a7e8574582b6bf2755b9aca534b7a8a1359e40d) -set(${PORT}-linux-x86_64_HASH 0) +set(${PORT}-linux-x86_64_HASH 86cabe1e0ac33f9be93e263bfe0cc281688e711d5812cf64dc8c4b6f6fc167afa965121ede94d85383c88cce280b373d41299cd220a1f01421b976e04091105f) vcpkg_download_distfile( ${PORT} @@ -57,7 +57,9 @@ else() endif() if(NOT VCPKG_BUILD_TYPE) - file(COPY "${CURRENT_PACKAGES_DIR}/bin" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/bin") + if(EXISTS "${CURRENT_PACKAGES_DIR}/bin") + file(COPY "${CURRENT_PACKAGES_DIR}/bin" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/bin") + endif() file(COPY "${CURRENT_PACKAGES_DIR}/lib" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/lib") endif() From 766d7759af04507f2e4aaa437850c532eff426d6 Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Sun, 3 Dec 2023 10:18:42 +0100 Subject: [PATCH 11/43] Remove INCLUDE --- ports/cuda/portfile.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/ports/cuda/portfile.cmake b/ports/cuda/portfile.cmake index 7de4f1a381723b..51433067030f82 100644 --- a/ports/cuda/portfile.cmake +++ b/ports/cuda/portfile.cmake @@ -164,10 +164,10 @@ foreach(comp IN LISTS components libs util tools) if("${comp}" IN_LIST components OR "${comp}" IN_LIST libs) file(COPY "${comp-src}/" DESTINATION "${CURRENT_PACKAGES_DIR}" - PATTERN "/bin/*.dll" INCLUDE - PATTERN "/lib/*.lib" INCLUDE - PATTERN "/lib/*.a" INCLUDE - PATTERN "/lib/*.so" INCLUDE + PATTERN "/bin/*.dll" + PATTERN "/lib/*.lib" + PATTERN "/lib/*.a" + PATTERN "/lib/*.so" # PATTERN "*docs*" EXCLUDE # PATTERN "*samples*" EXCLUDE # # PATTERN "*example*" EXCLUDE From c3d4c502c0d2b276bec2fb4694746f9d21fb8403 Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Sun, 3 Dec 2023 11:03:25 +0100 Subject: [PATCH 12/43] more fine tuning --- ports/cuda/portfile.cmake | 51 ++++++++++++++++++++++----------------- 1 file changed, 29 insertions(+), 22 deletions(-) diff --git a/ports/cuda/portfile.cmake b/ports/cuda/portfile.cmake index 51433067030f82..0ba3cb2f2d91d9 100644 --- a/ports/cuda/portfile.cmake +++ b/ports/cuda/portfile.cmake @@ -164,29 +164,32 @@ foreach(comp IN LISTS components libs util tools) if("${comp}" IN_LIST components OR "${comp}" IN_LIST libs) file(COPY "${comp-src}/" DESTINATION "${CURRENT_PACKAGES_DIR}" - PATTERN "/bin/*.dll" - PATTERN "/lib/*.lib" - PATTERN "/lib/*.a" - PATTERN "/lib/*.so" - # PATTERN "*docs*" EXCLUDE - # PATTERN "*samples*" EXCLUDE - # # PATTERN "*example*" EXCLUDE - # PATTERN "src/*" EXCLUDE - # PATTERN "LICENSE" EXCLUDE - # PATTERN "kernel" EXCLUDE - # PATTERN "kernel-open" EXCLUDE - # PATTERN "lib32" EXCLUDE - # PATTERN "man" EXCLUDE - # PATTERN "sbin" EXCLUDE - # PATTERN "systemd" EXCLUDE - # PATTERN "tests" EXCLUDE - # PATTERN "wine" EXCLUDE - # PATTERN "firmware" EXCLUDE - # PATTERN "include/cub/" EXCLUDE # cub has its own port + PATTERN "/bin/*.dll" + PATTERN "/lib/*.lib" + PATTERN "/lib/*.a" + PATTERN "/lib/*.so" + PATTERN "*docs*" EXCLUDE + PATTERN "*doc*" EXCLUDE + PATTERN "*samples*" EXCLUDE + PATTERN "*example*" EXCLUDE + PATTERN "src/*" EXCLUDE + PATTERN "LICENSE" EXCLUDE + PATTERN "kernel" EXCLUDE + PATTERN "kernel-open" EXCLUDE + PATTERN "lib32" EXCLUDE + PATTERN "man" EXCLUDE + PATTERN "sbin" EXCLUDE + PATTERN "systemd" EXCLUDE + PATTERN "tests" EXCLUDE + PATTERN "wine" EXCLUDE + PATTERN "firmware" EXCLUDE + PATTERN "include" EXCLUDE + PATTERN "share" EXCLUDE ) # Need a duplicate since nvcc won't magically add new unknown search paths for stuff file(COPY "${comp-src}/" DESTINATION "${CURRENT_PACKAGES_DIR}/tools/cuda" PATTERN "*docs*" EXCLUDE + PATTERN "*doc*" EXCLUDE PATTERN "*samples*" EXCLUDE PATTERN "*example*" EXCLUDE PATTERN "LICENSE" EXCLUDE @@ -196,6 +199,7 @@ foreach(comp IN LISTS components libs util tools) else() file(COPY "${comp-src}/" DESTINATION "${CURRENT_PACKAGES_DIR}/tools/cuda" PATTERN "*docs*" EXCLUDE + PATTERN "*doc*" EXCLUDE PATTERN "*samples*" EXCLUDE PATTERN "*exsample*" EXCLUDE PATTERN "LICENSE" EXCLUDE @@ -214,7 +218,9 @@ file(COPY "${CURRENT_PACKAGES_DIR}/tools/cuda/lib/cmake/" DESTINATION "${CURRENT ) #vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/share/cub/cub-header-search.cmake" "lib/cmake/cub" "share/cub") vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/share/thrust/thrust-header-search.cmake" "lib/cmake/thrust" "share/thrust") -vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/share/libcudacxx/libcudacxx-header-search.cmake" "../../../" "../../") +vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/share/thrust/thrust-header-search.cmake" "from_install_prefix}" "from_install_prefix}/tools/cuda/") + +vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/share/libcudacxx/libcudacxx-header-search.cmake" "../../../" "../../tools/cuda") file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/lib/cmake/") if(VCPKG_TARGET_IS_WINDOWS) @@ -245,19 +251,20 @@ if(NOT VCPKG_BUILD_TYPE) endif() file(REMOVE_RECURSE - "${CURRENT_PACKAGES_DIR}/include/cub/cmake" - "${CURRENT_PACKAGES_DIR}/include/thrust/cmake" "${CURRENT_PACKAGES_DIR}/src" "${CURRENT_PACKAGES_DIR}/nvml" "${CURRENT_PACKAGES_DIR}/tools/cuda/nvml" + "${CURRENT_PACKAGES_DIR}/share/cub" ) file(REMOVE_RECURSE + "${CURRENT_PACKAGES_DIR}/include" "${CURRENT_PACKAGES_DIR}/tools/cuda/include/cub/cmake" "${CURRENT_PACKAGES_DIR}/tools/cuda/include/thrust/cmake" "${CURRENT_PACKAGES_DIR}/MANIFEST" "${CURRENT_PACKAGES_DIR}/third-party-notices.txt" "${CURRENT_PACKAGES_DIR}/README" + "${CURRENT_PACKAGES_DIR}/LICENSE" "${CURRENT_PACKAGES_DIR}/CHANGELOG" ) From 5afb173a161516b8aaf7408fe0d214b3f20bc883 Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Sun, 3 Dec 2023 11:24:52 +0100 Subject: [PATCH 13/43] more folder finetuning --- ports/cuda/portfile.cmake | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/ports/cuda/portfile.cmake b/ports/cuda/portfile.cmake index 0ba3cb2f2d91d9..34ec38dc006a0b 100644 --- a/ports/cuda/portfile.cmake +++ b/ports/cuda/portfile.cmake @@ -231,10 +231,10 @@ if(VCPKG_TARGET_IS_WINDOWS) endif() if(EXISTS "${CURRENT_PACKAGES_DIR}/tools/cuda/pkg-config") - file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/share") - file(RENAME "${CURRENT_PACKAGES_DIR}/pkg-config" "${CURRENT_PACKAGES_DIR}/share/pkgconfig") + file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/lib") + file(RENAME "${CURRENT_PACKAGES_DIR}/pkg-config" "${CURRENT_PACKAGES_DIR}/lib/pkgconfig") file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/tools/cuda/pkg-config") - file(GLOB pc_files "${CURRENT_PACKAGES_DIR}/share/pkgconfig/*.pc") + file(GLOB pc_files "${CURRENT_PACKAGES_DIR}/lib/pkgconfig/*.pc") foreach(pc_file IN LISTS pc_files) file(READ "${pc_file}" contents) string(REGEX REPLACE "cudaroot=[^\n]+" "cudaroot=\${prefix}/tools/cuda" contents "${contents}") @@ -279,5 +279,6 @@ vcpkg_fixup_pkgconfig() set(VCPKG_POLICY_SKIP_DUMPBIN_CHECKS enabled) set(VCPKG_POLICY_DLLS_IN_STATIC_LIBRARY enabled) +set(VCPKG_POLICY_SKIP_ARCHITECTURE_CHECK enabled) set(VCPKG_POLICY_EMPTY_INCLUDE_FOLDER enabled) From f37831791a132b6b8bed017389d369601750f419 Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Sun, 3 Dec 2023 12:05:07 +0100 Subject: [PATCH 14/43] set crt linkage to static --- ports/cuda/portfile.cmake | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/ports/cuda/portfile.cmake b/ports/cuda/portfile.cmake index 34ec38dc006a0b..e57bc30477cb3b 100644 --- a/ports/cuda/portfile.cmake +++ b/ports/cuda/portfile.cmake @@ -1,5 +1,9 @@ set(base_url "https://developer.download.nvidia.com/compute/cuda/redist") +if(VCPKG_TARGET_IS_WINDOWS) + set(VCPKG_CRT_LINKAGE "static") +endif() + if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64") set(target x86_64) elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "arm64" AND VCPKG_TARGET_IS_LINUX) @@ -280,5 +284,6 @@ vcpkg_fixup_pkgconfig() set(VCPKG_POLICY_SKIP_DUMPBIN_CHECKS enabled) set(VCPKG_POLICY_DLLS_IN_STATIC_LIBRARY enabled) set(VCPKG_POLICY_SKIP_ARCHITECTURE_CHECK enabled) +set(VCPKG_POLICY_ONLY_RELEASE_CRT enabled) set(VCPKG_POLICY_EMPTY_INCLUDE_FOLDER enabled) From bfb1e9b37a97912419a10d7b8b6f2485cb0558b6 Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Sun, 3 Dec 2023 13:50:15 +0100 Subject: [PATCH 15/43] fix post build errors --- ports/cudnn/portfile.cmake | 7 ++++++- ports/cusparselt/portfile.cmake | 4 ++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/ports/cudnn/portfile.cmake b/ports/cudnn/portfile.cmake index dbeba0e5c764a5..8ecf61b9b97de1 100644 --- a/ports/cudnn/portfile.cmake +++ b/ports/cudnn/portfile.cmake @@ -56,4 +56,9 @@ endif() file(INSTALL "${CURRENT_PORT_DIR}/FindCUDNN.cmake" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}") file(INSTALL "${CURRENT_PORT_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}") -file(INSTALL "${CURRENT_PORT_DIR}/vcpkg-cmake-wrapper.cmake" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}") \ No newline at end of file +file(INSTALL "${CURRENT_PORT_DIR}/vcpkg-cmake-wrapper.cmake" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}") + +set(VCPKG_POLICY_SKIP_DUMPBIN_CHECKS enabled) +set(VCPKG_POLICY_DLLS_IN_STATIC_LIBRARY enabled) +set(VCPKG_POLICY_SKIP_ARCHITECTURE_CHECK enabled) +set(VCPKG_POLICY_ONLY_RELEASE_CRT enabled) diff --git a/ports/cusparselt/portfile.cmake b/ports/cusparselt/portfile.cmake index 703b669ac7d6ac..86f697450e5d00 100644 --- a/ports/cusparselt/portfile.cmake +++ b/ports/cusparselt/portfile.cmake @@ -63,3 +63,7 @@ if(NOT VCPKG_BUILD_TYPE) file(COPY "${CURRENT_PACKAGES_DIR}/lib" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/lib") endif() +set(VCPKG_POLICY_SKIP_DUMPBIN_CHECKS enabled) +set(VCPKG_POLICY_DLLS_IN_STATIC_LIBRARY enabled) +set(VCPKG_POLICY_SKIP_ARCHITECTURE_CHECK enabled) +set(VCPKG_POLICY_ONLY_RELEASE_CRT enabled) From 3c841a2ffd01cc20a4288c144f0ea877d629940a Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Sun, 3 Dec 2023 14:01:41 +0100 Subject: [PATCH 16/43] fix post build --- ports/cusparselt/portfile.cmake | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ports/cusparselt/portfile.cmake b/ports/cusparselt/portfile.cmake index 86f697450e5d00..59e68e2ad5f08c 100644 --- a/ports/cusparselt/portfile.cmake +++ b/ports/cusparselt/portfile.cmake @@ -8,6 +8,10 @@ else() message(FATAL_ERROR "Unsupported architecture") endif() +if(VCPKG_TARGET_IS_WINDOWS) + set(VCPKG_CRT_LINKAGE "static") +endif() + set(ext ".tar.xz") if(VCPKG_TARGET_IS_WINDOWS) set(platform windows) From cfe778d24ebf2f9a6e8c47d332e9ac05c4a6bb64 Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Sun, 3 Dec 2023 14:54:53 +0100 Subject: [PATCH 17/43] Fix paths --- ports/cuda/vcpkg-cmake-wrapper.cmake | 4 ++-- ports/cuda/vcpkg-port-config.cmake | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/cuda/vcpkg-cmake-wrapper.cmake b/ports/cuda/vcpkg-cmake-wrapper.cmake index cfb8e6f5eca646..c5493b115b4f54 100644 --- a/ports/cuda/vcpkg-cmake-wrapper.cmake +++ b/ports/cuda/vcpkg-cmake-wrapper.cmake @@ -1,3 +1,3 @@ -set(CUDA_TOOLKIT_ROOT_DIR "${CMAKE_CURRENT_LIST_DIR}/../../@TARGET_TRIPLET@/tools/cuda") -set(CUDAToolkit_ROOT "${CMAKE_CURRENT_LIST_DIR}/../../@TARGET_TRIPLET@/tools/cuda") +set(CUDA_TOOLKIT_ROOT_DIR "${CMAKE_CURRENT_LIST_DIR}/../../tools/cuda") +set(CUDAToolkit_ROOT "${CMAKE_CURRENT_LIST_DIR}/../../tools/cuda") _find_package(${ARGS}) diff --git a/ports/cuda/vcpkg-port-config.cmake b/ports/cuda/vcpkg-port-config.cmake index a93877a6d25011..01b5062af9e71a 100644 --- a/ports/cuda/vcpkg-port-config.cmake +++ b/ports/cuda/vcpkg-port-config.cmake @@ -1,4 +1,4 @@ include("${CMAKE_CURRENT_LIST_DIR}/vcpkg_find_cuda.cmake") set(ENV{CUDA_PATH} "${CURRENT_INSTALLED_DIR}") -vcpkg_add_to_path(PREPEND "${CURRENT_HOST_INSTALLED_DIR}/tools/cuda/bin") \ No newline at end of file +vcpkg_add_to_path(PREPEND "${CURRENT_INSTALLED_DIR}/tools/cuda/bin") \ No newline at end of file From 5cf582d74b8ff4ff9f06aaafc3ef0f7f4fd4c066 Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Sun, 3 Dec 2023 18:01:49 +0100 Subject: [PATCH 18/43] v db --- versions/baseline.json | 12 ++++++++---- versions/c-/cuda.json | 5 +++++ versions/c-/cudnn.json | 5 +++++ versions/c-/cusparselt.json | 9 +++++++++ 4 files changed, 27 insertions(+), 4 deletions(-) create mode 100644 versions/c-/cusparselt.json diff --git a/versions/baseline.json b/versions/baseline.json index 3e624a3d18d932..5ec17f91d7ca3e 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -2013,12 +2013,12 @@ "port-version": 1 }, "cuda": { - "baseline": "10.1", - "port-version": 13 + "baseline": "12.3.1", + "port-version": 0 }, "cudnn": { - "baseline": "7.6.5", - "port-version": 10 + "baseline": "8.9.6.50", + "port-version": 0 }, "cunit": { "baseline": "2.1.3", @@ -2032,6 +2032,10 @@ "baseline": "2018-06-15", "port-version": 8 }, + "cusparselt": { + "baseline": "0.5.0.1", + "port-version": 0 + }, "cute-headers": { "baseline": "2019-09-20", "port-version": 2 diff --git a/versions/c-/cuda.json b/versions/c-/cuda.json index 25c88a19c49f50..793af683321dba 100644 --- a/versions/c-/cuda.json +++ b/versions/c-/cuda.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "c874bc15bedc45e1f4a14e900b0f57b1934333d4", + "version": "12.3.1", + "port-version": 0 + }, { "git-tree": "d7709c275f8ce58e6d1b4c71b8d37fba4a9a0377", "version": "10.1", diff --git a/versions/c-/cudnn.json b/versions/c-/cudnn.json index fbe1b3f5e0d290..3604e802dbd03a 100644 --- a/versions/c-/cudnn.json +++ b/versions/c-/cudnn.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "3d16c847b4f26609fc42da792b730b7d047ff028", + "version": "8.9.6.50", + "port-version": 0 + }, { "git-tree": "406576a41668942aa5f0be5ee12ea54239be2d84", "version": "7.6.5", diff --git a/versions/c-/cusparselt.json b/versions/c-/cusparselt.json new file mode 100644 index 00000000000000..187ce9e2d90a21 --- /dev/null +++ b/versions/c-/cusparselt.json @@ -0,0 +1,9 @@ +{ + "versions": [ + { + "git-tree": "4ea48483e1109a351f168657de6e31ad109389bf", + "version": "0.5.0.1", + "port-version": 0 + } + ] +} From 1338cf3323c9756c9d709b9e3f8634d22a976b8f Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Tue, 5 Dec 2023 10:54:10 +0100 Subject: [PATCH 19/43] Update nccl to also be build. --- ports/nccl/FindNCCL.cmake | 42 +------------------------- ports/nccl/cppflags.patch | 37 +++++++++++++++++++++++ ports/nccl/portfile.cmake | 63 ++++++++++++++++++++++++++++++--------- ports/nccl/vcpkg.json | 3 +- 4 files changed, 88 insertions(+), 57 deletions(-) create mode 100644 ports/nccl/cppflags.patch diff --git a/ports/nccl/FindNCCL.cmake b/ports/nccl/FindNCCL.cmake index 771cd65cd4fca2..d5aba39d45e13c 100644 --- a/ports/nccl/FindNCCL.cmake +++ b/ports/nccl/FindNCCL.cmake @@ -9,44 +9,13 @@ # NCCL_FOUND # NCCL_INCLUDE_DIRS # NCCL_LIBRARIES -# -# Adapted from https://github.com/pytorch/pytorch/blob/master/cmake/Modules/FindNCCL.cmake - -set(NCCL_INCLUDE_DIR $ENV{NCCL_INCLUDE_DIR} CACHE PATH "Folder contains NVIDIA NCCL headers") -set(NCCL_LIB_DIR $ENV{NCCL_LIB_DIR} CACHE PATH "Folder contains NVIDIA NCCL libraries") -set(_NCCL_VERSION $ENV{NCCL_VERSION} CACHE STRING "Version of NCCL to build with") - -list(APPEND NCCL_ROOT $ENV{NCCL_ROOT_DIR} ${CUDA_TOOLKIT_ROOT_DIR}) -# Compatible layer for CMake <3.12. NCCL_ROOT will be accounted in for searching paths and libraries for CMake >=3.12. -list(APPEND CMAKE_PREFIX_PATH ${NCCL_ROOT}) find_path(NCCL_INCLUDE_DIRS NAMES nccl.h - HINTS - ${NCCL_INCLUDE_DIR} - $ENV{CUDNN_ROOT_DIR} - $ENV{CUDA_PATH} - $ENV{CUDNN_ROOT_DIR} - $ENV{CUDA_TOOLKIT_ROOT_DIR} - $ENV{NCCL} - /usr/include PATH_SUFFIXES include ) -if (USE_STATIC_NCCL) - MESSAGE(STATUS "USE_STATIC_NCCL is set. Linking with static NCCL library.") - SET(NCCL_LIBNAME "nccl_static") - if (_NCCL_VERSION) # Prefer the versioned library if a specific NCCL version is specified - set(CMAKE_FIND_LIBRARY_SUFFIXES ".a.${_NCCL_VERSION}" ${CMAKE_FIND_LIBRARY_SUFFIXES}) - endif() -else() - SET(NCCL_LIBNAME "nccl") - if (_NCCL_VERSION) # Prefer the versioned library if a specific NCCL version is specified - set(CMAKE_FIND_LIBRARY_SUFFIXES ".so.${_NCCL_VERSION}" ${CMAKE_FIND_LIBRARY_SUFFIXES}) - endif() -endif() - # Read version from header if(EXISTS "${NCCL_INCLUDE_DIRS}/nccl.h") file(READ ${NCCL_INCLUDE_DIRS}/nccl.h NCCL_HEADER_CONTENTS) @@ -72,18 +41,9 @@ if(NCCL_HEADER_CONTENTS) endif() find_library(NCCL_LIBRARIES - NAMES ${NCCL_LIBNAME} - HINTS - ${NCCL_LIB_DIR} - ${CUDA_TOOLKIT_ROOT} - $ENV{CUDA_PATH} - $ENV{CUDNN_ROOT_DIR} - $ENV{CUDA_TOOLKIT_ROOT_DIR} - $ENV{NCCL} - /usr/lib/x86_64-linux-gnu/ + NAMES nccl PATH_SUFFIXES lib - lib64 ) include(FindPackageHandleStandardArgs) diff --git a/ports/nccl/cppflags.patch b/ports/nccl/cppflags.patch new file mode 100644 index 00000000000000..15433e5452ac74 --- /dev/null +++ b/ports/nccl/cppflags.patch @@ -0,0 +1,37 @@ +diff --git a/src/Makefile b/src/Makefile +index 7a1881d9d6..7601d68978 100644 +--- a/src/Makefile ++++ b/src/Makefile +@@ -112,8 +112,8 @@ $(PKGDIR)/%.pc : %.pc + $(OBJDIR)/%.o : %.cc $(INCTARGETS) + @printf "Compiling %-35s > %s\n" $< $@ + mkdir -p `dirname $@` +- $(CXX) -I. -I$(INCDIR) $(CXXFLAGS) -Iinclude -c $< -o $@ +- @$(CXX) -I. -I$(INCDIR) $(CXXFLAGS) -Iinclude -M $< > $(@:%.o=%.d.tmp) ++ $(CXX) -I. -I$(INCDIR) $(CPPFLAGS) $(CXXFLAGS) -Iinclude -c $< -o $@ ++ @$(CXX) -I. -I$(INCDIR) $(CPPFLAGS) $(CXXFLAGS) -Iinclude -M $< > $(@:%.o=%.d.tmp) + @sed "0,/^.*:/s//$(subst /,\/,$@):/" $(@:%.o=%.d.tmp) > $(@:%.o=%.d) + @sed -e 's/.*://' -e 's/\\$$//' < $(@:%.o=%.d.tmp) | fmt -1 | \ + sed -e 's/^ *//' -e 's/$$/:/' >> $(@:%.o=%.d) +diff --git a/src/device/Makefile b/src/device/Makefile +index 1e9311f1f0..065d7c8407 100644 +--- a/src/device/Makefile ++++ b/src/device/Makefile +@@ -26,7 +26,7 @@ CXXFLAGS += $(INCFLAGS) + SAY = @bash -c 'path="$$2"; [[ "$$(realpath "$$2")" =~ ^$(subst .,\.,$(abspath $(NCCLDIR)))/(.*)$$ ]] && path="$${BASH_REMATCH[1]}"; printf "%-15s %s\n" "$$1" "$$path"' SAY + + COMPILE.cu = $(NVCC) $(NVCUFLAGS) -dc $2 -o $1 +-COMPILE.cc = $(CXX) $(CXXFLAGS) -c $2 -o $1 ++COMPILE.cc = $(CXX) $(CPPFLAGS) $(CXXFLAGS) -c $2 -o $1 + define COMPILE + @$(SAY) "Compiling" $2;\ + mkdir -p $(dir $1);\ +@@ -34,7 +34,7 @@ define COMPILE + endef + + DEPENDS.cu = $(NVCC) $(NVCUFLAGS) -M -dc $1 +-DEPENDS.cc = $(CXX) $(CXXFLAGS) -M -c $1 ++DEPENDS.cc = $(CXX) $(CPPFLAGS) $(CXXFLAGS) -M -c $1 + define DEPENDS + @$(SAY) "Dependencies" $2;\ + mkdir -p $(dir $1);\ diff --git a/ports/nccl/portfile.cmake b/ports/nccl/portfile.cmake index 5909c49d5acb20..b12019ca3a69cb 100644 --- a/ports/nccl/portfile.cmake +++ b/ports/nccl/portfile.cmake @@ -1,20 +1,55 @@ +vcpkg_from_github( + OUT_SOURCE_PATH src_path + REPO NVIDIA/nccl + REF v${VERSION}-1 + SHA512 25226874007b02c0195a5715460694ada1f8a9c841ee1b49c41b6c39865e5e7f28da9a43bb06507d541320fc9be919cc09931c8026eabdff6385915c6bf95a7f + PATCHES + cppflags.patch +) -# Find NCCL. We can use FindNCCL directly since it doesn't call any functions -# that are disallowed in CMake script mode -set(MINIMUM_NCCL_VERSION "2.4.6.1") -set(NCCL_PREV_MODULE_PATH ${CMAKE_MODULE_PATH}) -list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_LIST_DIR}) -find_package(NCCL ${MINIMUM_NCCL_VERSION}) -set(CMAKE_MODULE_PATH ${NCCL_PREV_MODULE_PATH}) - -# Download or return -if(NCCL_FOUND) - message(STATUS "Using NCCL ${_NCCL_VERSION} located on system.") - set(VCPKG_POLICY_EMPTY_PACKAGE enabled) -else() - message(FATAL_ERROR "Please install NCCL using your system package manager (the same way you installed CUDA). For example: apt install libnccl2 libnccl-dev.") +# Note: Feel free to add arm64 support -> see conda-forge/nccl-feedstock + +set(ENV{CUDA_HOME} "${CURRENT_INSTALLED_DIR}/tools/cuda") + +#Trick to avoid calling numerous calls to z_vcpkg_get_cmake_vars and deleting the buildtree +z_vcpkg_get_cmake_vars(cmake_vars_file) +include("${cmake_vars_file}") +set(Z_VCPKG_GET_CMAKE_VARS_FILE "${cmake_vars_file}" CACHE STRING "" FORCE) +set(Z_VCPKG_GET_CMAKE_VARS_FILE_debug "${cmake_vars_file}" CACHE STRING "" FORCE) +set(Z_VCPKG_GET_CMAKE_VARS_FILE_release "${cmake_vars_file}" CACHE STRING "" FORCE) + +file(COPY "${src_path}/" DESTINATION "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel") +if(NOT VCPKG_BUILD_TYPE) + file(COPY "${src_path}/" DESTINATION "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg") +endif() + +# Trick to install with an additional OPTION +if(NOT VCPKG_BUILD_TYPE) + set(VCPKG_BUILD_TYPE debug) + vcpkg_build_make(BUILD_TARGET src.lib) + vcpkg_build_make(BUILD_TARGET install OPTIONS "PREFIX=${CURRENT_PACKAGES_DIR}/debug" LOGFILE_ROOT install) endif() +set(VCPKG_BUILD_TYPE release) +vcpkg_build_make(BUILD_TARGET src.lib) +vcpkg_build_make(BUILD_TARGET install OPTIONS "PREFIX=${CURRENT_PACKAGES_DIR}" LOGFILE_ROOT install) file(INSTALL "${CURRENT_PORT_DIR}/FindNCCL.cmake" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}") configure_file("${CURRENT_PORT_DIR}/vcpkg-cmake-wrapper.cmake" "${CURRENT_PACKAGES_DIR}/share/${PORT}/vcpkg-cmake-wrapper.cmake" @ONLY) file(INSTALL "${CURRENT_PORT_DIR}/usage" DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT}) + +file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") + +vcpkg_fixup_pkgconfig() + +if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + file(GLOB_RECURSE to_delete "${CURRENT_PACKAGES_DIR}/**/*.so*") + file(RENAME "${CURRENT_PACKAGES_DIR}/lib/libnccl_static.a" "${CURRENT_PACKAGES_DIR}/lib/libnccl.a") + if(NOT VCPKG_BUILD_TYPE) + file(RENAME "${CURRENT_PACKAGES_DIR}/debug/lib/libnccl_static.a" "${CURRENT_PACKAGES_DIR}/debug/lib/libnccl.a") + endif() +else() + file(GLOB_RECURSE to_delete "${CURRENT_PACKAGES_DIR}/**/*.a") +endif() +file(REMOVE ${to_delete}) + +vcpkg_install_copyright(FILE_LIST "${src_path}/LICENSE.txt") diff --git a/ports/nccl/vcpkg.json b/ports/nccl/vcpkg.json index 47aeef6a62af7f..da14f10d0dfc69 100644 --- a/ports/nccl/vcpkg.json +++ b/ports/nccl/vcpkg.json @@ -1,7 +1,6 @@ { "name": "nccl", - "version": "2.4.6", - "port-version": 2, + "version": "2.19.4", "description": "Optimized primitives for collective multi-GPU communication.", "supports": "linux & x64", "dependencies": [ From 69614f169e270f108b153bde77573c7f7868b9c5 Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Tue, 5 Dec 2023 10:54:50 +0100 Subject: [PATCH 20/43] v db --- versions/baseline.json | 4 ++-- versions/n-/nccl.json | 5 +++++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/versions/baseline.json b/versions/baseline.json index 5ec17f91d7ca3e..6fc1d54c0b1bd4 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -5873,8 +5873,8 @@ "port-version": 1 }, "nccl": { - "baseline": "2.4.6", - "port-version": 2 + "baseline": "2.19.4", + "port-version": 0 }, "ncnn": { "baseline": "20231027", diff --git a/versions/n-/nccl.json b/versions/n-/nccl.json index 5739121ed520d0..d6e4d0c78c2e6b 100644 --- a/versions/n-/nccl.json +++ b/versions/n-/nccl.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "d64c8ed1d4f206752a3f1281c6a61ea458f8fba5", + "version": "2.19.4", + "port-version": 0 + }, { "git-tree": "6f07fdf26f53fd4974ad4cb6d6df430dc28e52aa", "version": "2.4.6", From c33ab07bf6c04cc8b56abd0bfc4cf29c2c38a3d2 Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Tue, 5 Dec 2023 12:32:24 +0100 Subject: [PATCH 21/43] remove binary suffix from nvcc --- ports/cuda/vcpkg_find_cuda.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ports/cuda/vcpkg_find_cuda.cmake b/ports/cuda/vcpkg_find_cuda.cmake index 62095cb59ac905..036d5def678167 100644 --- a/ports/cuda/vcpkg_find_cuda.cmake +++ b/ports/cuda/vcpkg_find_cuda.cmake @@ -16,7 +16,7 @@ function(vcpkg_find_cuda) find_program(NVCC - NAMES nvcc.exe + NAMES nvcc${VCPKG_HOST_EXECUTABLE_SUFFIX} PATHS ${CUDA_PATHS} PATH_SUFFIXES bin bin64 From 8c5d6354d838e7d1f5e6304f9995fa73a2cb0450 Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Tue, 5 Dec 2023 19:42:15 +0100 Subject: [PATCH 22/43] Move files from lib to lib64 due to the compiler not adding the correct search paths --- ports/cuda/portfile.cmake | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ports/cuda/portfile.cmake b/ports/cuda/portfile.cmake index e57bc30477cb3b..73136e2991613a 100644 --- a/ports/cuda/portfile.cmake +++ b/ports/cuda/portfile.cmake @@ -232,6 +232,9 @@ if(VCPKG_TARGET_IS_WINDOWS) file(RENAME "${CURRENT_PACKAGES_DIR}/lib/x64/" "${CURRENT_PACKAGES_DIR}/lib-tmp/") file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/lib") file(RENAME "${CURRENT_PACKAGES_DIR}/lib-tmp" "${CURRENT_PACKAGES_DIR}/lib") +elseif(VCPKG_TARGET_IS_LINUX) + # Don't really know why this renaming is required. + file(RENAME "${CURRENT_PACKAGES_DIR}/tools/cuda/lib" "${CURRENT_PACKAGES_DIR}/tools/cuda/lib64") endif() if(EXISTS "${CURRENT_PACKAGES_DIR}/tools/cuda/pkg-config") From 058ab2893f47b85dfb44eec21f67cf5dc363cf3e Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Tue, 5 Dec 2023 20:35:50 +0100 Subject: [PATCH 23/43] trace the output --- ports/cuda-api-wrappers/portfile.cmake | 12 +----------- ports/cuda/vcpkg-cmake-wrapper.cmake | 1 + 2 files changed, 2 insertions(+), 11 deletions(-) diff --git a/ports/cuda-api-wrappers/portfile.cmake b/ports/cuda-api-wrappers/portfile.cmake index 9467e3875b5ec9..2d37219748f824 100644 --- a/ports/cuda-api-wrappers/portfile.cmake +++ b/ports/cuda-api-wrappers/portfile.cmake @@ -9,21 +9,11 @@ vcpkg_from_github( # head only library set(VCPKG_BUILD_TYPE release) -# cuda toolkit check -vcpkg_find_cuda(OUT_CUDA_TOOLKIT_ROOT CUDA_TOOLKIT_ROOT) -message(STATUS "CUDA_TOOLKIT_ROOT ${CUDA_TOOLKIT_ROOT}") - -# nvcc compiler path -set(CMAKE_CUDA_COMPILER "${CUDA_TOOLKIT_ROOT}/bin/nvcc${VCPKG_HOST_EXECUTABLE_SUFFIX}") - -set(CUDA_ARCHITECTURES "native") - vcpkg_cmake_configure( SOURCE_PATH "${SOURCE_PATH}" OPTIONS -DCAW_BUILD_EXAMPLES=OFF - "-DCMAKE_CUDA_ARCHITECTURES=${CUDA_ARCHITECTURES}" - "-DCMAKE_CUDA_COMPILER=${CMAKE_CUDA_COMPILER}" + --trace-expand ) vcpkg_cmake_install() diff --git a/ports/cuda/vcpkg-cmake-wrapper.cmake b/ports/cuda/vcpkg-cmake-wrapper.cmake index c5493b115b4f54..8d2a64a734d518 100644 --- a/ports/cuda/vcpkg-cmake-wrapper.cmake +++ b/ports/cuda/vcpkg-cmake-wrapper.cmake @@ -1,3 +1,4 @@ set(CUDA_TOOLKIT_ROOT_DIR "${CMAKE_CURRENT_LIST_DIR}/../../tools/cuda") set(CUDAToolkit_ROOT "${CMAKE_CURRENT_LIST_DIR}/../../tools/cuda") +set(ENV{CUDA_PATH} "${CMAKE_CURRENT_LIST_DIR}/../../tools/cuda") _find_package(${ARGS}) From 668cb591a6967872e1cca65cd2c7b5197f09c8ec Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Tue, 5 Dec 2023 22:50:41 +0100 Subject: [PATCH 24/43] try again --- ports/cuda/vcpkg-cmake-wrapper.cmake | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ports/cuda/vcpkg-cmake-wrapper.cmake b/ports/cuda/vcpkg-cmake-wrapper.cmake index 8d2a64a734d518..c19d1e49575407 100644 --- a/ports/cuda/vcpkg-cmake-wrapper.cmake +++ b/ports/cuda/vcpkg-cmake-wrapper.cmake @@ -1,4 +1,7 @@ set(CUDA_TOOLKIT_ROOT_DIR "${CMAKE_CURRENT_LIST_DIR}/../../tools/cuda") set(CUDAToolkit_ROOT "${CMAKE_CURRENT_LIST_DIR}/../../tools/cuda") set(ENV{CUDA_PATH} "${CMAKE_CURRENT_LIST_DIR}/../../tools/cuda") + +#Presearch cudart since it controls further lookup and does not take ENV CUDA_PATH as an input hint in older versions of CMake +find_library(CUDA_cudart_LIBRARY NAMES cudart HINTS "${CMAKE_CURRENT_LIST_DIR}/../../tools/cuda" ENV CUDA_PATH PATH_SUFFIXES lib64 lib/x64 lib) _find_package(${ARGS}) From 628b2ca2b52c7dc006d0cf4c4cdeb57affb40cbc Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Tue, 5 Dec 2023 23:44:55 +0100 Subject: [PATCH 25/43] add debug find --- ports/cuda-api-wrappers/portfile.cmake | 1 + 1 file changed, 1 insertion(+) diff --git a/ports/cuda-api-wrappers/portfile.cmake b/ports/cuda-api-wrappers/portfile.cmake index 2d37219748f824..05e77927dcd2df 100644 --- a/ports/cuda-api-wrappers/portfile.cmake +++ b/ports/cuda-api-wrappers/portfile.cmake @@ -14,6 +14,7 @@ vcpkg_cmake_configure( OPTIONS -DCAW_BUILD_EXAMPLES=OFF --trace-expand + --debug-find ) vcpkg_cmake_install() From eaa5edd793b335fa63ecf55d996b6ec3d07e0b4c Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Wed, 6 Dec 2023 08:30:02 +0100 Subject: [PATCH 26/43] fix env lookup and wrapper --- ports/cuda/portfile.cmake | 2 +- ports/cuda/vcpkg-port-config.cmake | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ports/cuda/portfile.cmake b/ports/cuda/portfile.cmake index 73136e2991613a..3b07d66b4f6502 100644 --- a/ports/cuda/portfile.cmake +++ b/ports/cuda/portfile.cmake @@ -279,7 +279,7 @@ vcpkg_install_copyright(FILE_LIST ${licenses}) file(COPY "${CMAKE_CURRENT_LIST_DIR}/vcpkg-port-config.cmake" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}") configure_file("${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake" "${CURRENT_PACKAGES_DIR}/share/${PORT}/vcpkg-cmake-wrapper.cmake" @ONLY) -configure_file("${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake" "${CURRENT_PACKAGES_DIR}/share/CUDAToolkit/vcpkg-cmake-wrapper.cmake" @ONLY) +configure_file("${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake" "${CURRENT_PACKAGES_DIR}/share/cudatoolkit/vcpkg-cmake-wrapper.cmake" @ONLY) configure_file("${CMAKE_CURRENT_LIST_DIR}/vcpkg_find_cuda.cmake" "${CURRENT_PACKAGES_DIR}/share/${PORT}/vcpkg_find_cuda.cmake" @ONLY) vcpkg_fixup_pkgconfig() diff --git a/ports/cuda/vcpkg-port-config.cmake b/ports/cuda/vcpkg-port-config.cmake index 01b5062af9e71a..f84cde8966acf6 100644 --- a/ports/cuda/vcpkg-port-config.cmake +++ b/ports/cuda/vcpkg-port-config.cmake @@ -1,4 +1,4 @@ include("${CMAKE_CURRENT_LIST_DIR}/vcpkg_find_cuda.cmake") -set(ENV{CUDA_PATH} "${CURRENT_INSTALLED_DIR}") +set(ENV{CUDA_PATH} "${CURRENT_INSTALLED_DIR}/tools/cuda") vcpkg_add_to_path(PREPEND "${CURRENT_INSTALLED_DIR}/tools/cuda/bin") \ No newline at end of file From 468d281d1e860d617a27f28481e3fc943445f31c Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Wed, 6 Dec 2023 09:25:14 +0100 Subject: [PATCH 27/43] remove debug details --- ports/cuda-api-wrappers/portfile.cmake | 2 -- 1 file changed, 2 deletions(-) diff --git a/ports/cuda-api-wrappers/portfile.cmake b/ports/cuda-api-wrappers/portfile.cmake index 05e77927dcd2df..a4d16c0d536006 100644 --- a/ports/cuda-api-wrappers/portfile.cmake +++ b/ports/cuda-api-wrappers/portfile.cmake @@ -13,8 +13,6 @@ vcpkg_cmake_configure( SOURCE_PATH "${SOURCE_PATH}" OPTIONS -DCAW_BUILD_EXAMPLES=OFF - --trace-expand - --debug-find ) vcpkg_cmake_install() From 1bdb2feaa13678cc431ca39623dcfda278287203 Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Wed, 6 Dec 2023 09:26:22 +0100 Subject: [PATCH 28/43] bump port version --- ports/cuda-api-wrappers/vcpkg.json | 1 + 1 file changed, 1 insertion(+) diff --git a/ports/cuda-api-wrappers/vcpkg.json b/ports/cuda-api-wrappers/vcpkg.json index 78ad5bf9c93e36..8e108e1f89409a 100644 --- a/ports/cuda-api-wrappers/vcpkg.json +++ b/ports/cuda-api-wrappers/vcpkg.json @@ -1,6 +1,7 @@ { "name": "cuda-api-wrappers", "version": "0.6.6", + "port-version": 1, "description": "header-only library of integrated wrappers around the core parts of NVIDIA's CUDA execution ecosystem", "license": "BSD-3-Clause", "dependencies": [ From 09be92c5afa82f2afb671954c9461910334208cc Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Wed, 6 Dec 2023 09:26:36 +0100 Subject: [PATCH 29/43] v db --- versions/baseline.json | 4 ++-- versions/c-/cuda-api-wrappers.json | 5 +++++ versions/c-/cuda.json | 2 +- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/versions/baseline.json b/versions/baseline.json index eed7dee14ba5cb..33189d02449935 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -2024,9 +2024,9 @@ "baseline": "12.3.1", "port-version": 0 }, - "cuda-api-wrappers" : { + "cuda-api-wrappers": { "baseline": "0.6.6", - "port-version": 0 + "port-version": 1 }, "cudnn": { "baseline": "8.9.6.50", diff --git a/versions/c-/cuda-api-wrappers.json b/versions/c-/cuda-api-wrappers.json index adccf36c244b6a..568c989faeb80a 100644 --- a/versions/c-/cuda-api-wrappers.json +++ b/versions/c-/cuda-api-wrappers.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "d1ca0ca3cf5e9ee924056b0b0a59192ff1aa66bf", + "version": "0.6.6", + "port-version": 1 + }, { "git-tree": "f31ca06768d00b72f8387dce98f3a8d2d867cfcb", "version": "0.6.6", diff --git a/versions/c-/cuda.json b/versions/c-/cuda.json index 793af683321dba..91deae174cf3d3 100644 --- a/versions/c-/cuda.json +++ b/versions/c-/cuda.json @@ -1,7 +1,7 @@ { "versions": [ { - "git-tree": "c874bc15bedc45e1f4a14e900b0f57b1934333d4", + "git-tree": "9d27f008ab9ff192767f2ee1a61cabca02f5c5dd", "version": "12.3.1", "port-version": 0 }, From 167ec5292215430cc6291c1b0c87da181baa7007 Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Wed, 6 Dec 2023 09:42:34 +0100 Subject: [PATCH 30/43] v db --- versions/baseline.json | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/versions/baseline.json b/versions/baseline.json index 9b6ba5df7648a9..3bba74935e74ed 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -2021,16 +2021,16 @@ "port-version": 1 }, "cuda": { - "baseline": "10.1", - "port-version": 13 + "baseline": "12.3.1", + "port-version": 0 }, "cuda-api-wrappers": { "baseline": "0.6.6", - "port-version": 0 + "port-version": 1 }, "cudnn": { - "baseline": "7.6.5", - "port-version": 10 + "baseline": "8.9.6.50", + "port-version": 0 }, "cunit": { "baseline": "2.1.3", @@ -2044,6 +2044,10 @@ "baseline": "2018-06-15", "port-version": 9 }, + "cusparselt": { + "baseline": "0.5.0.1", + "port-version": 0 + }, "cute-headers": { "baseline": "2019-09-20", "port-version": 2 @@ -5889,8 +5893,8 @@ "port-version": 1 }, "nccl": { - "baseline": "2.4.6", - "port-version": 2 + "baseline": "2.19.4", + "port-version": 0 }, "ncnn": { "baseline": "20231027", From fc2769c57f391debb4e59de7f5762737f9eb23c5 Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Tue, 5 Mar 2024 10:36:19 +0100 Subject: [PATCH 31/43] v db --- versions/baseline.json | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/versions/baseline.json b/versions/baseline.json index 7eb566e7ae3978..31b0bbf3786251 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -2045,16 +2045,16 @@ "port-version": 1 }, "cuda": { - "baseline": "10.1", - "port-version": 13 + "baseline": "12.3.1", + "port-version": 0 }, "cuda-api-wrappers": { "baseline": "0.6.7", "port-version": 0 }, "cudnn": { - "baseline": "7.6.5", - "port-version": 10 + "baseline": "8.9.6.50", + "port-version": 0 }, "cunit": { "baseline": "2.1.3", @@ -2068,6 +2068,10 @@ "baseline": "2018-06-15", "port-version": 9 }, + "cusparselt": { + "baseline": "0.5.0.1", + "port-version": 0 + }, "cute-headers": { "baseline": "2019-09-20", "port-version": 2 @@ -5993,8 +5997,8 @@ "port-version": 1 }, "nccl": { - "baseline": "2.4.6", - "port-version": 2 + "baseline": "2.19.4", + "port-version": 0 }, "ncnn": { "baseline": "20240102", From 372f938924d5fb8a91e196a55a418bbefeccb41a Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Thu, 14 Mar 2024 19:56:42 +0100 Subject: [PATCH 32/43] make CUDA_TOOLKIT_ROOT_DIR a cache variable --- ports/cuda/vcpkg-cmake-wrapper.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ports/cuda/vcpkg-cmake-wrapper.cmake b/ports/cuda/vcpkg-cmake-wrapper.cmake index c19d1e49575407..01f1229080bd6c 100644 --- a/ports/cuda/vcpkg-cmake-wrapper.cmake +++ b/ports/cuda/vcpkg-cmake-wrapper.cmake @@ -1,4 +1,4 @@ -set(CUDA_TOOLKIT_ROOT_DIR "${CMAKE_CURRENT_LIST_DIR}/../../tools/cuda") +set(CUDA_TOOLKIT_ROOT_DIR "${CMAKE_CURRENT_LIST_DIR}/../../tools/cuda" CACHE "FILEPATH" "" FORCE) set(CUDAToolkit_ROOT "${CMAKE_CURRENT_LIST_DIR}/../../tools/cuda") set(ENV{CUDA_PATH} "${CMAKE_CURRENT_LIST_DIR}/../../tools/cuda") From 6573e17f556476e9b2fa8231ac01974be01d2daa Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Thu, 14 Mar 2024 20:32:47 +0100 Subject: [PATCH 33/43] bit of cleanup and add more comments as requested --- ports/cuda/portfile.cmake | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/ports/cuda/portfile.cmake b/ports/cuda/portfile.cmake index 3b07d66b4f6502..f1eb6afc6ad3a3 100644 --- a/ports/cuda/portfile.cmake +++ b/ports/cuda/portfile.cmake @@ -48,21 +48,20 @@ set(util ) set(tools - cuobjdump - cupti + cuobjdump + cupti cuxxfilt # has some extra API nvcc nvdisasm nvprof #nvprune - #nvvp ) if(VCPKG_TARGET_IS_WINDOWS) - list(APPEND util + #list(APPEND util #nsight_vse - ) + #) endif() if(VCPKG_TARGET_IS_LINUX) @@ -162,11 +161,16 @@ foreach(comp IN LISTS components libs util tools) comp-src ARCHIVE ${${comp}} SOURCE_BASE "${comp}" - #BASE_DIRECTORY "CUDA" WORKING_DIRECTORY "${CURRENT_PACKAGES_DIR}/tools" ) + # The following code copies the extracted archives verbatim to tools/cuda. + # The layout should match what CUDA normally installs minus stuff irrelevant + # for vcpkg (examples/docs etc.). The layout needs to match due to implicit + # search dirs of nvcc expecting stuff to in a defined layout. + if("${comp}" IN_LIST components OR "${comp}" IN_LIST libs) + # Also copy lb/dll/so files into lib/bin file(COPY "${comp-src}/" DESTINATION "${CURRENT_PACKAGES_DIR}" PATTERN "/bin/*.dll" PATTERN "/lib/*.lib" @@ -233,7 +237,7 @@ if(VCPKG_TARGET_IS_WINDOWS) file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/lib") file(RENAME "${CURRENT_PACKAGES_DIR}/lib-tmp" "${CURRENT_PACKAGES_DIR}/lib") elseif(VCPKG_TARGET_IS_LINUX) - # Don't really know why this renaming is required. + # Don't really know why this renaming is required. file(RENAME "${CURRENT_PACKAGES_DIR}/tools/cuda/lib" "${CURRENT_PACKAGES_DIR}/tools/cuda/lib64") endif() @@ -284,9 +288,8 @@ configure_file("${CMAKE_CURRENT_LIST_DIR}/vcpkg_find_cuda.cmake" "${CURRENT_PACK vcpkg_fixup_pkgconfig() -set(VCPKG_POLICY_SKIP_DUMPBIN_CHECKS enabled) set(VCPKG_POLICY_DLLS_IN_STATIC_LIBRARY enabled) set(VCPKG_POLICY_SKIP_ARCHITECTURE_CHECK enabled) set(VCPKG_POLICY_ONLY_RELEASE_CRT enabled) -set(VCPKG_POLICY_EMPTY_INCLUDE_FOLDER enabled) +set(VCPKG_POLICY_EMPTY_INCLUDE_FOLDER enabled) # includes are located in a subfolder of tools/cuda From 0ac4a8bec7b1f1c48b19ca4590051396085deefa Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Thu, 14 Mar 2024 20:33:39 +0100 Subject: [PATCH 34/43] v db --- versions/c-/cuda.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/versions/c-/cuda.json b/versions/c-/cuda.json index 91deae174cf3d3..a72493ae428b89 100644 --- a/versions/c-/cuda.json +++ b/versions/c-/cuda.json @@ -1,7 +1,7 @@ { "versions": [ { - "git-tree": "9d27f008ab9ff192767f2ee1a61cabca02f5c5dd", + "git-tree": "6e6cfebeb4d2fd80dca324b49bc654860767db20", "version": "12.3.1", "port-version": 0 }, From 261570a349a590a80397f22eacd92f6c2fa2f9f9 Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Thu, 14 Mar 2024 21:35:57 +0100 Subject: [PATCH 35/43] v db --- versions/c-/cuda.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/versions/c-/cuda.json b/versions/c-/cuda.json index a72493ae428b89..f238f81bb5a757 100644 --- a/versions/c-/cuda.json +++ b/versions/c-/cuda.json @@ -1,7 +1,7 @@ { "versions": [ { - "git-tree": "6e6cfebeb4d2fd80dca324b49bc654860767db20", + "git-tree": "52486f8c1b6f5377588a253407bdc0b19b4d9f0c", "version": "12.3.1", "port-version": 0 }, From cb1fddffc7afe277ee786119324ad2bba86379f2 Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Wed, 19 Jun 2024 21:32:45 +0200 Subject: [PATCH 36/43] Update cuda and cudnn --- ports/cuda/hash-linux-ppc64le.cmake | 56 ------------- ports/cuda/hash-linux-sbsa.cmake | 107 +++++++++++-------------- ports/cuda/hash-linux-x86_64.cmake | 115 ++++++++++++--------------- ports/cuda/hash-windows-x86_64.cmake | 95 ++++++++++------------ ports/cuda/portfile.cmake | 79 +++++++----------- ports/cudnn/portfile.cmake | 12 +-- ports/cudnn/vcpkg.json | 2 +- 7 files changed, 174 insertions(+), 292 deletions(-) delete mode 100644 ports/cuda/hash-linux-ppc64le.cmake diff --git a/ports/cuda/hash-linux-ppc64le.cmake b/ports/cuda/hash-linux-ppc64le.cmake deleted file mode 100644 index 5f25ed0c3b13a3..00000000000000 --- a/ports/cuda/hash-linux-ppc64le.cmake +++ /dev/null @@ -1,56 +0,0 @@ -set(cuda-json_HASH "e248bc28c51ea77b7ecc4ca4c0f1590115837a53f22f254c05955a55448e811a2419e811fad009b234f85d1de6fec641512c50f52af8dddc39ca93ca4468ddb4") -set(lic_cuda_cccl_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_cccl_HASH "6f4b2dc3d6fdd772104684ecedfa3ec247e16097042000cf7f9c105f7da8e0cf5ac423fb33666dd7cb15ebdab0a8a029d11a94a929ee632cb08510f71f6aee3d") -set(lic_cuda_cudart_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_cudart_HASH "4d5cced21cc5d92453077e41075df2bc9fdedaa2bfe4e569f4e2a7a5867a73b53f0a032905191fa57cc15b975446e80e92b0e2edfadaffb62ade6da912fd3593") -set(lic_cuda_nvml_dev_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_nvml_dev_HASH "e40ded85dd87c390a12ec417e6089b75dc3029822460ced10d24a343656851f60ff9aa7973bf303898370dd5951738ef7c277d1824df880caf80f35f4705e291") -set(lic_cuda_nvrtc_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_nvrtc_HASH "6931631d13f30fee139e97d2410e352b4951b002127a7cd6e23dfc79dcd345fe18c7771c422a08d2b85c31c62e61b38e4985981212213d467b7322b437342e50") -set(lic_cuda_profiler_api_HASH "9330644686d6f1130f3c011690dbfeb3b52eec7043a2c16d25cebf15e85dac832489614883db9cf78353669e66ae8f907176e5940b59be1351acb04c598f6069") -set(cuda_profiler_api_HASH "594a2ce2ac34430b9913863c17e92bf36fbb5fbed400c40f9e42ededc9a9194e7ddcbf01cc002893cd11b246aa741499fad6e0536f8514cd2a8df5d0a967e053") -set(lic_cuda_sanitizer_api_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_sanitizer_api_HASH "9af8a4c873fff42dccc1117d5c749a48e62e9a90eda7f699efa07cfb321f75a89986eeac11d62a6ee1fbcb14a143e73ced0d28b5ef75ce1d2de4c186b28df961") -set(lic_libcublas_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(libcublas_HASH "fda0677b18cf6cc5b4d265c01451f78bf326eb61d08dd07587ce07a9bc5658a2927f11ff5cd16536fb9e67eeb47a11fa9645281a3dd247d96518cef4fdf2c61c") -set(lic_libcufft_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(libcufft_HASH "c29c49e92928b194976cd836722871cbd50429eed07e837434d73172726e1c6e86d1f0faed09af3f18979b165241e735db0620a5e814ad55d6f875b2bffb912a") -set(lic_libcurand_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(libcurand_HASH "762d3700ce1456b5af3a71708be31aff8a3657f4a27f619d881f7fc7e229f73599c1fb14d1c9c1544457be22404aecd3c1c6142fca06db095b5aba124e70ee98") -set(lic_libcusolver_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(libcusolver_HASH "72588d5a2038884a17213555e480415e19fcda85f27f2cb2b8627a15f4bd96f7f146594389d72d1c5bcbcd226996433e8fb38ab037f0fe8430b156ed30b98431") -set(lic_libcusparse_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(libcusparse_HASH "c25e8817a26f4d9612aa11ffb01fc395e375fa75114802f4b889e02dce275bd4643f179f0e34db02b3f8c15a5b5f687e2ad713906c11b49dab0b16281311dc94") -set(lic_libnpp_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(libnpp_HASH "21d08f6d03c92910c0ddb7b9f3eb2535d47473adf8ca9dbfe528176fbb031d7f2980b9be1bf51261e2e0b727a84157f5ce3057e825d889c7ef90c65e8f086f3e") -set(lic_libnvjitlink_HASH "9330644686d6f1130f3c011690dbfeb3b52eec7043a2c16d25cebf15e85dac832489614883db9cf78353669e66ae8f907176e5940b59be1351acb04c598f6069") -set(libnvjitlink_HASH "fff1125e6dbef20ee61b83fc9fb42f2d1842760a739633c60d90b4931709340ff3d5cec7c3927a8a2a9c02a483a7873f8e1f00bd9799a482fe95184e06724f2a") -set(lic_libnvjpeg_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(libnvjpeg_HASH "1606da8cddcda76961da9c994a0fe1ee63f23aefea2c67b5ab514e48538f561ceafe5f22a503ddbea8b01f333e448b5dc29d57c9bbc8978550d8e5a33aaff999") -set(lic_nvidia_driver_HASH "2a28ca80789f705e0c9d14c1b1c11304fa42ad31741a9fc339a295a0e307aaf05cb58cb4199e966ead799ae5232d68d0e54cb002212c1eab32bd9e288a030316") -set(nvidia_driver_HASH "9ed525921153d2d897dce23e6aa0c05f59c1e983d12615093dc863ebcc5e8ab12ab2e51fbe4dfbd82b97d69ec3aaa492802ba47af72d1dc95a33bb2ef4506be8") -set(lic_nsight_compute_HASH "b9fcf702602703edeae6dbda86d53734343b6b42fcc8d1294783a4220d36e0d283167cdc5dd4ad5fba7ee4ce5774f264251660fbbed20a00a18e86aada6b95f5") -set(nsight_compute_HASH "273bca2cf8d253b6d660dd5d24295bebf903979d9227c09e4c38bcb744b97591a15853e211f550a9e4ff4653a945475d9eda2046daa2d9270b86d2fc083aa950") -set(lic_nsight_systems_HASH "b9fcf702602703edeae6dbda86d53734343b6b42fcc8d1294783a4220d36e0d283167cdc5dd4ad5fba7ee4ce5774f264251660fbbed20a00a18e86aada6b95f5") -set(nsight_systems_HASH "aa308edcd6fdc7ac35d4c70b01e6a0f2a3c781b9f734ff892df33228b6e00d0ec6586540a6ede2320d2a107ad9513233496f3fdf66430609e06b37cedd4e1ee5") -set(lic_cuda_gdb_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_gdb_HASH "0c77357ee1718b2ff82dd58d295c847c5c9c94543e49b4f554c9220de3758963fe82069337ddf196e666279b4367a9c8177a802cc245f7dbbe1115247128e782") -set(lic_cuda_cuobjdump_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_cuobjdump_HASH "ce895cfb3d417f89dfe61544bbbc862cf71dab7212798fe2e6dd15acfc567d6fcfc0b38a79bdf7a6e12d09734329237a46a3b87d6bbc129b7401268d7e2482ae") -set(lic_cuda_cupti_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_cupti_HASH "1a509629f6a81184dd590ff8974b72ecfa133e2e39e7b3dfad60b37c183db6cbfe2850b0d85c3f75eef4bf67fb4a0fe432872ac38106e6f83baffa6896f5aaa6") -set(lic_cuda_cuxxfilt_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_cuxxfilt_HASH "7a88d66f8d02a719791da45c3c5c63d16d17bb4b6389862cafdbc75e81599551386e13a453db2c9f8f552862a848eb85e8334424251d03e07b521562ef1128eb") -set(lic_cuda_nvcc_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_nvcc_HASH "0eb53d84040ca76ec599d4705d583cba6b047ff5f6f0f4f8da29b7315934cbbe9bacdd4c7dd61a65b8f99c55d7a41daecbd1b17722f3f24794c6523d278f8a6e") -set(lic_cuda_nvdisasm_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_nvdisasm_HASH "0b75cf794575b8c3109198d9c42f853ccd92c644223e6fcb85d15f446a67e880ed1c4d82d7ccaa91cf2d2cee3b82e4fec583d3cfeefb1e28463b167a978b4a50") -set(lic_cuda_nvprof_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_nvprof_HASH "76c338f8d27b0759a8bb9d0bdf961d426005da8cc12cf3a2944f717ab726f9e736319cf5d94287810e891d09d17ba2981f28dcfcf03d4fd9c05a8e4aaf021b33") -set(lic_cuda_nvprune_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_nvprune_HASH "e2167850893802273ccf8e39d07b8cfdd79fe9e7262c310d1923edc12b6eed6c765d831f75785f868d0cf96b738aed49e5fe12b623fc2f2745c43f821870d1b5") -set(lic_cuda_nvtx_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_nvtx_HASH "7d7358fba8170df09bc7759f93c3f6c4f5296f88ee06f9ea1f2a854502537b4ac2850a0b8c7d93a659b59cdf1f671ec06651ca0b9a9106f571db642bf20a26c7") -set(lic_cuda_nvvp_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_nvvp_HASH "5064f5529db33d9fabd5167da98579859ac1c14ba688d339020fed43e2294b34800fab2bd43d1597fd9eab5a5abab547c391be9f039e19306bfba4415a3f82c7") - diff --git a/ports/cuda/hash-linux-sbsa.cmake b/ports/cuda/hash-linux-sbsa.cmake index a317c5ba8e70fc..fcba502a4927e6 100644 --- a/ports/cuda/hash-linux-sbsa.cmake +++ b/ports/cuda/hash-linux-sbsa.cmake @@ -1,60 +1,49 @@ -set(cuda-json_HASH "e248bc28c51ea77b7ecc4ca4c0f1590115837a53f22f254c05955a55448e811a2419e811fad009b234f85d1de6fec641512c50f52af8dddc39ca93ca4468ddb4") -set(lic_cuda_cccl_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_cccl_HASH "5fee8a88af6be381756ad6b66d0854dc20678ad8ca9a3da7bfe245e0469c5ecf350d803f348912a1278ec050adb2435a568ea0c04831e424e94a69e00fb4361f") -set(lic_cuda_cudart_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_cudart_HASH "58cfd0fc290a0991f4d0bcc9e3d683cd9d0818dd0be454057fdfbc4d3da275b2d9e07b05a38d1474744775cf2ec80c6cd53f72ea768570c0684c371d9368bca4") -set(lic_cuda_nvml_dev_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_nvml_dev_HASH "a546bcf5d2ce5d59bea8d4eef1ed5520d6e0f082159ec18fb302b41327c8a5f151149ee981fe0d03de181fb36d9a1d6208d445a718f669a9ce6eda8365e7c80a") -set(lic_cuda_nvrtc_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_nvrtc_HASH "6a6a04e68b5eb17a28320e50e673fa1d9410019b2ca30ca77777f92f12c4bf6f03b46ba7033ef2c5ef6f5640a9b11f8a317df512313f9c115422cdfb131594a7") -set(lic_cuda_profiler_api_HASH "9330644686d6f1130f3c011690dbfeb3b52eec7043a2c16d25cebf15e85dac832489614883db9cf78353669e66ae8f907176e5940b59be1351acb04c598f6069") -set(cuda_profiler_api_HASH "87b856e6491b6115dd2901d2607a9752704f65a49ca99e086fbbaf0b186b84709a99f71443eb55e970bc46cb4633b9c15ad6491f425eccc6e9020fdef4e8bb6c") -set(lic_cuda_sanitizer_api_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_sanitizer_api_HASH "a8aa0d55dbc3d228fc46fa4ae06d6cda6a438f14d7845a9bb0ab45cdd6b24eafaf64645983f45db221e4b9ddcbfea5031c2277a87132694efaa62a9efc53bea4") -set(lic_libcublas_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(libcublas_HASH "3ea59656ad5c5f7b9fcd1cd016ce202b5aedb198a4b768f29ac78b48a480bd24d835f94c77bf922944b144000c5a0172e0edb31bbd48c361ec269b186387d578") -set(lic_libcufft_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(libcufft_HASH "4afb80dae78a18136f5afde0f19e8484522931fa6b835b1ad04bc4e8de3826b8fb48f2e27d352dcfc6ae14f7e8b76c35a73a8abd41adb69367a5099fc091f1b2") -set(lic_libcurand_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(libcurand_HASH "edfacf9391bc7aa26d8e7b4557bcdd738155f044a496d08c21797cf7447ae7335d013698b8394bd1d0ba17352fd8129b545f51bfaffb9d3642c5efbb9d9eff8f") -set(lic_libcusolver_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(libcusolver_HASH "3cb0328c21b7619e415ddbd816511c5fad39afb62efcdad741ade154ca350290dc898a352f7eda233ceecef6e7ed72d9ec057296ba7beb03f8a1feafe62ff3e8") -set(lic_libcusparse_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(libcusparse_HASH "f3461cbb441a67f89b7b65f95902a84a2af2ec9c3de9bca3fce7daac3a85b6b9ed923b3c2032eb36ad2f8fcdcfa32fe1c94a25be5195dbedcc83763536c8033e") -set(lic_libnpp_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(libnpp_HASH "e51f80042aa3e103dd4907900bcb7a32353231f041b0cfe0af119bbd3b0d57507b5aea927baaaa62a6d8aac9af25acbc5a30a87e0b9491211034050c44887337") -set(lic_libnvjitlink_HASH "9330644686d6f1130f3c011690dbfeb3b52eec7043a2c16d25cebf15e85dac832489614883db9cf78353669e66ae8f907176e5940b59be1351acb04c598f6069") -set(libnvjitlink_HASH "751cd5aac717ee5ca79ed5978612aad08024cd281e8e23474cdf18696b4cd6c19d754559fdc799a084d7c6411440c86a14f3b5df48f589c82f9a9665dd4b37cb") -set(lic_libnvjpeg_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(libnvjpeg_HASH "3b5d947103ca53d5e9062b3ccf38310b52c30f33b632a4780ad31d898fbe4979f07b0705d141e698d8eebd540a665a609bf3d63cf8a2ad8d5a6d129f500b183b") -set(lic_fabricmanager_HASH "2a28ca80789f705e0c9d14c1b1c11304fa42ad31741a9fc339a295a0e307aaf05cb58cb4199e966ead799ae5232d68d0e54cb002212c1eab32bd9e288a030316") -set(fabricmanager_HASH "e078d6c8e446810620bc1a9fdf40ee7730cc3ea6171b9ff7241b6f76efce2634cf35b170dc2878780eb196f6daafd52811e5e5ae291d25753005ab6ecd8deba0") -set(lic_libnvidia_nscq_HASH "2a28ca80789f705e0c9d14c1b1c11304fa42ad31741a9fc339a295a0e307aaf05cb58cb4199e966ead799ae5232d68d0e54cb002212c1eab32bd9e288a030316") -set(libnvidia_nscq_HASH "630d810d4ee8838a5797050477f560142154f20e27bd10abf6a850b18162f88f0fccdfb126d87f8f1619696d3227da4010239ccb3edf10cd1c88166ec4aedf80") -set(lic_nvidia_driver_HASH "2a28ca80789f705e0c9d14c1b1c11304fa42ad31741a9fc339a295a0e307aaf05cb58cb4199e966ead799ae5232d68d0e54cb002212c1eab32bd9e288a030316") -set(nvidia_driver_HASH "8f1b345d601fe5ae5f1c14dcad6affd7f03f4aa1c0cdd81def760c8cdfd97e712524d547027b0d22ba0878009ccfaaf39c1dcfe1348613b4eb06a4d34acca5e9") -set(lic_libcufile_HASH "a7db5621e13d42e03388e3484fc01703fb83b1aafc33f3f7dfc3066e327ef5b0a81fd9d413405e9921dbea253bff24f0325bf8a7e5c44e050561efe5e60f9f95") -set(libcufile_HASH "38b3665889f746992cd257d705076e29d58678cd193b10088ef2821cb8ca349b0e1ba070fd4773ac8be8784a6a4ad55c5d8b3876393edc9fac4c37a859848e4d") -set(lic_nsight_compute_HASH "b9fcf702602703edeae6dbda86d53734343b6b42fcc8d1294783a4220d36e0d283167cdc5dd4ad5fba7ee4ce5774f264251660fbbed20a00a18e86aada6b95f5") -set(nsight_compute_HASH "1fbfe8d4e2b6c7f98c7645be299d44c9f77de07a5fbfa1474e08eeb2deeb7bf4370c1cf67a70e128373ebe7d183465deb3069f84e136987fbf44308ffea5c4e6") -set(lic_nsight_systems_HASH "b9fcf702602703edeae6dbda86d53734343b6b42fcc8d1294783a4220d36e0d283167cdc5dd4ad5fba7ee4ce5774f264251660fbbed20a00a18e86aada6b95f5") -set(nsight_systems_HASH "f0b00fbb508ded1024a38aea42edefedd7904f805c812f8e118021efaca89607d4e5e960508bbd72d28cbf253979e9f9441b1751a745ac77bf3a294dc61105ff") -set(lic_nvidia_fs_HASH "a7db5621e13d42e03388e3484fc01703fb83b1aafc33f3f7dfc3066e327ef5b0a81fd9d413405e9921dbea253bff24f0325bf8a7e5c44e050561efe5e60f9f95") -set(nvidia_fs_HASH "41bab92111127f6ceedc589db8a5d1c050e822dc51f558454b8967a3ccdf5c650b5060bcd057ff966364b8415acbc6411634061ba043c64a7cb533d2b5dc88fd") -set(lic_cuda_gdb_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_gdb_HASH "aa0aadb9b5bf8f749db1c0515bf0dfe4c0b367927d050f96921392079eca1534b034c91e3475918355b9f667eb9db3e7ede2edce4bc001db3ec24a8d1173b4cf") -set(lic_cuda_cuobjdump_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_cuobjdump_HASH "a7a4fb98411a3de06b6d8466d4d869d5701c33a0a6b6e80f82be4c20e4dac3c32d97468f44ac3faad0083500fdaebfea3ff99c3e11d0042f21d954a5727632e5") -set(lic_cuda_cupti_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_cupti_HASH "96d7119d13bfbb68a3119d7685133406837dd9dd138f5882adadad753495b13b8385ee15bd71a942513681a73d893638662b18119fa03be717a3b83fb72ff1de") -set(lic_cuda_cuxxfilt_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_cuxxfilt_HASH "71800cd7737b023da87b0741cc634028493c42aa46f347c70ca88efde09155de47e0b1cf1dd6b3e92af5903b762d96ffcf7180e3f56b4b2f8312bf0f55531e9a") -set(lic_cuda_nvcc_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_nvcc_HASH "d28475f4ca0f7fa35e4a43e3dfe49302d1126d3496e20aac5d87ab56de06b1860e8652e40256751207008c8c58b8b1c516652f7018112ea9fcb1efaf2418c4f5") -set(lic_cuda_nvdisasm_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_nvdisasm_HASH "9026088b518ff631fa70a9a5bfb6c029210722530c763d2d6da76cd628c038362e4422e6c50c0a37b5f01c615036b4d9e9b153eb420288a495cb0a0f31a3a9b7") -set(lic_cuda_nvprune_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_nvprune_HASH "f8fb5255d1b48c0115d9ec948300949c42a36bc0dbc2216e432d55658fa7149d716de4981adfd157f9a45e85f72a6869edd2552e9fde4b3780713a1db743cd95") -set(lic_cuda_nvtx_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_nvtx_HASH "95b6b3d206891b64c63290f1064068af2dfbc349d39dfb5e1c9f1de641a8d506494ba11057458f2dc5590360f2707030833991b47c93238f59012983318332a2") +set(cuda_cccl_HASH "2365047bb04d84f9cb2dba54ca23ca847cd58896114be7e4ac702c4aaf100548d84904745c28d08a4446f2952bc44fc8918bcc82d76ad6eb0e7fda1697800ec6") +set(cuda_cccl_URL "cuda_cccl/linux-sbsa/cuda_cccl-linux-sbsa-12.5.39-archive.tar.xz") +set(cuda_cudart_HASH "82e4ba7d7ea13f32e3731d5a8b5d870f834b937cad7566b71a4aa478bd4badc5a84707e345ee2d8419069c2f3d4de042a63aa1e83ea64dd7bf1cc50185626523") +set(cuda_cudart_URL "cuda_cudart/linux-sbsa/cuda_cudart-linux-sbsa-12.5.39-archive.tar.xz") +set(cuda_nvtx_HASH "8d4bc5a2109306e40a6eeb9c69207d9fa37bc9a53801a12365408638440097e08edb788eef704e03e2637a8823e1355fb79273d184bdcfdcff46bb2f54391e5a") +set(cuda_nvtx_URL "cuda_nvtx/linux-sbsa/cuda_nvtx-linux-sbsa-12.5.39-archive.tar.xz") +set(cuda_nvml_dev_HASH "516d50fd6ee69813e59fbb2fd8122df17f288d13a1c617bb6653005f648fdb7a67fe851a22238efdad22e44e1f0918280a0ff72e148d9ab83db2b46e0e646cf0") +set(cuda_nvml_dev_URL "cuda_nvml_dev/linux-sbsa/cuda_nvml_dev-linux-sbsa-12.5.39-archive.tar.xz") +set(cuda_nvrtc_HASH "3e11ce981074765f8845706c05f1af23a9183a21d8bdc77d869cdbf750deb750a6429efbd6de6ccb9eef480e078e5774e908e25f553b0b4906b322b829b05fab") +set(cuda_nvrtc_URL "cuda_nvrtc/linux-sbsa/cuda_nvrtc-linux-sbsa-12.5.40-archive.tar.xz") +set(cuda_profiler_api_HASH "b9402e4bb889c732c5b5671014057cc6f6880672e3da31e5c4fdbe1f3fce85199b4327b4a32dd74506316842b5976c4b682eb964c8edccaa1a21ecf5cc7db75b") +set(cuda_profiler_api_URL "cuda_profiler_api/linux-sbsa/cuda_profiler_api-linux-sbsa-12.5.39-archive.tar.xz") +set(libcublas_HASH "d511f52606f243cdc9fa70d9de65af1d9a520140662ae8175eb201eb5851fe4e52b19f43c14e269e5feab6dc6269b1d72b36cd6193dd94a4b25a643c94ee18d2") +set(libcublas_URL "libcublas/linux-sbsa/libcublas-linux-sbsa-12.5.2.13-archive.tar.xz") +set(libcufft_HASH "de294d8dd5fd26596e2831071356dba9b59f7387e402702fdfe655da2e48c275573f1b2d7646aaa59327e133917dd4f1d86006bc7fac968f5c0ad6e0383a5369") +set(libcufft_URL "libcufft/linux-sbsa/libcufft-linux-sbsa-11.2.3.18-archive.tar.xz") +set(libcurand_HASH "428330f3eeb6c559d48fdeacb61f6814238b2e37698d2ef1504886400c951dd4b7dc1af51da6aa953b19785f68b1c46f450e881c3010ad0c078ed3def15eda0e") +set(libcurand_URL "libcurand/linux-sbsa/libcurand-linux-sbsa-10.3.6.39-archive.tar.xz") +set(libcusolver_HASH "4c8ead100dca3848782065cb892b82e01fa088529527293b59cf904ef62119f46f8619695cbc359414b774aa03b2948cfcc03ce8487bc12ebbf4085441e70f87") +set(libcusolver_URL "libcusolver/linux-sbsa/libcusolver-linux-sbsa-11.6.2.40-archive.tar.xz") +set(libcusparse_HASH "3e937b9f1c8a738a41305551ff163a480d62fe65d7c218671af5bbc7a53bedaa1650022c40e58cb93332c3ab605fe47a7628a36de6e4d7b65f877f0aabb4195d") +set(libcusparse_URL "libcusparse/linux-sbsa/libcusparse-linux-sbsa-12.4.1.24-archive.tar.xz") +set(libnpp_HASH "0ecb788458414c0cb5193a1f7fddbb554bc021b5486f3d45fd965f3701ff2a089f8bb6132a97227099aa33cfa8a0ba505b1468a5ec37b65339cfeb2a1ca9d4fa") +set(libnpp_URL "libnpp/linux-sbsa/libnpp-linux-sbsa-12.3.0.116-archive.tar.xz") +set(libnvjitlink_HASH "38fe567e60291234b40e3ae9ef446cb6fa2a77b3c716353ba80f935945f477055793fadf6b7d3faf81361dd47b11aab8bf9f1f76621df9e4ed637600a36cd68f") +set(libnvjitlink_URL "libnvjitlink/linux-sbsa/libnvjitlink-linux-sbsa-12.5.40-archive.tar.xz") +set(libnvjpeg_HASH "d2d72f8df6b5d3c4058149715a8d88d1464da572443b9e70f3af3598abd5c985e2d84bfb6e8996aefe8a3d5d76cb0ef981063ce9b7cb8f10819d0231b02dd218") +set(libnvjpeg_URL "libnvjpeg/linux-sbsa/libnvjpeg-linux-sbsa-12.3.2.38-archive.tar.xz") +set(fabricmanager_HASH "3659ebd090786834b2e028798f4ab73b0e309fd19d51d773d46250b3d9cc5a145fca5bf6b12fe7c644582d62512355762931b004cb9f39ed1250f9f109bffc2d") +set(fabricmanager_URL "fabricmanager/linux-sbsa/fabricmanager-linux-sbsa-555.42.02-archive.tar.xz") +set(libnvidia_nscq_HASH "c2dfc0698925a7dcc3996134b02519ee887a2c4aee7ce3968e608df5bc8ce9c7be3b8bdba8bb09e8e865e4b609758773348cb142ba4b19f99e94d6d1143c9cae") +set(libnvidia_nscq_URL "libnvidia_nscq/linux-sbsa/libnvidia_nscq-linux-sbsa-555.42.02-archive.tar.xz") +set(libcufile_HASH "d06b76a0cedec661cdde567b2b8bfde6f0201ac7a5a368338200c5ca7a2a2a9284fea75a1db08398c57be467eb136b6cde34f6def36dd742d58cb544410c356e") +set(libcufile_URL "libcufile/linux-sbsa/libcufile-linux-sbsa-1.10.0.4-archive.tar.xz") +set(nvidia_fs_HASH "e6b0eb589479eb5a59d6ffaaf248902a6607a380299cf953cf0aaec2605b1af1402a26371d38cd9c2796bff9d2c8e6280f71fafe93dafbbfc56e015ccc96ae89") +set(nvidia_fs_URL "nvidia_fs/linux-sbsa/nvidia_fs-linux-sbsa-2.20.5-archive.tar.xz") +set(cuda_gdb_HASH "0a18f6e4469cf34fad384ceed8433eca4bff1731cf7bf3856b91839cba3f1106cec8f1fb580e941a7adbced7e481035e704b7626653aa0a8fc0777763ad4e33a") +set(cuda_gdb_URL "cuda_gdb/linux-sbsa/cuda_gdb-linux-sbsa-12.5.39-archive.tar.xz") +set(cuda_cuobjdump_HASH "22668a0196b68af86659be1d2f230dc9f67dff26b07550bbdff3e42e1b2cf04bac017507f8094f5f438f4fd1eb4866d052e0c359877b2f527d86ca56c2514186") +set(cuda_cuobjdump_URL "cuda_cuobjdump/linux-sbsa/cuda_cuobjdump-linux-sbsa-12.5.39-archive.tar.xz") +set(cuda_cupti_HASH "250e68c45cdb7dba19927bf6914c8c5b558d3e052acec8aae2851b619b74fcc07e15c63df98d5b8207d32c876b1bb45a81d09658f165d57d8c9e11922c0e0f90") +set(cuda_cupti_URL "cuda_cupti/linux-sbsa/cuda_cupti-linux-sbsa-12.5.39-archive.tar.xz") +set(cuda_cuxxfilt_HASH "23e93ce626527e89ae6ab2248d43fec14e019b9e819598dd5bd6380673aa0498b352af79d619397d9e16d42752922d8e21a38d66999dea62603b39f9a79c385a") +set(cuda_cuxxfilt_URL "cuda_cuxxfilt/linux-sbsa/cuda_cuxxfilt-linux-sbsa-12.5.39-archive.tar.xz") +set(cuda_nvcc_HASH "508f920858c89070c03ae1363ff16ef05f738464098844c4bf1f3a8af527952886a150619fae5c6533080a4f921b6ac0e9b9b8d1fe271e7eb1e856ad1b52c49d") +set(cuda_nvcc_URL "cuda_nvcc/linux-sbsa/cuda_nvcc-linux-sbsa-12.5.40-archive.tar.xz") +set(cuda_nvdisasm_HASH "4cb91263fbad064f9683ac88f95fc058b69dd4bd1a1275f20d26b7069a82ca81675e54872e8b211ba45e78d019fff8e40d91888f3ca080a61adf1f32e13d2926") +set(cuda_nvdisasm_URL "cuda_nvdisasm/linux-sbsa/cuda_nvdisasm-linux-sbsa-12.5.39-archive.tar.xz") diff --git a/ports/cuda/hash-linux-x86_64.cmake b/ports/cuda/hash-linux-x86_64.cmake index ddd666c378223b..a4ee4635198c82 100644 --- a/ports/cuda/hash-linux-x86_64.cmake +++ b/ports/cuda/hash-linux-x86_64.cmake @@ -1,66 +1,51 @@ -set(cuda-json_HASH "e248bc28c51ea77b7ecc4ca4c0f1590115837a53f22f254c05955a55448e811a2419e811fad009b234f85d1de6fec641512c50f52af8dddc39ca93ca4468ddb4") -set(lic_cuda_cccl_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_cccl_HASH "b7dd0a25ca2746e64ff692c5400a1f056fb5d6cdd15b38f8a061414bc5be7e6bffff71e1c30951fe6f22721f1e977162d884a653d1b86548ef265e47482d0032") -set(lic_cuda_cudart_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_cudart_HASH "62d0790f04bc1af432863e58c90d0c5e3ea34d718f27305a34a5a11bff901b15c305ab4cc312a61881a80faf75fd9c5ea1af829264dc922dd0b4b2df4351f67a") -set(lic_cuda_nvml_dev_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_nvml_dev_HASH "90bdbc30f651fbcbf43ebae93df0c736850ee15a0f937b1dccec69046c2cfc1899443707696b923f14a31f7b36cf3d1a043920d45f648db6b13332414bdc31f4") -set(lic_cuda_nvrtc_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_nvrtc_HASH "e2dfa11a6cd02379ebb9381001438cd970f0a22234ddd366139683df30bd5641eed92403ee6f8d82e77506ecd8a42ad355e864035cc359b2b4f0342423910ffe") -set(lic_cuda_opencl_HASH "9330644686d6f1130f3c011690dbfeb3b52eec7043a2c16d25cebf15e85dac832489614883db9cf78353669e66ae8f907176e5940b59be1351acb04c598f6069") -set(cuda_opencl_HASH "20bb15bd4337d319624102b1a228612fdbce0324ce45426997fb4c04d69e2e8550cfee11b52e8d339a1c2973535359445ed260460b37d3d0486bcb193ac2ce0e") -set(lic_cuda_profiler_api_HASH "9330644686d6f1130f3c011690dbfeb3b52eec7043a2c16d25cebf15e85dac832489614883db9cf78353669e66ae8f907176e5940b59be1351acb04c598f6069") -set(cuda_profiler_api_HASH "a103e4a2cd8ed93e323a0dea5fe459ba9a9e4116a95b321dd44dab2d724c4ba93a8206da38cc4f1b793e81fb13c6d77438b9dfd788a0bbd3bde2a4d2234dac7c") -set(lic_cuda_sanitizer_api_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_sanitizer_api_HASH "ed5144da24f1c9caa91295d612c9c2ba66923a63f6365b3bf4d1fb452b12f5e2910b6da709cd0a3b5f696fd8ccf6f08321e237bd8e5000bf2c74ca76911556d6") -set(lic_libcublas_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(libcublas_HASH "0c8635d28ac2746f51e158667d68d9934ee6fc838473e8f789905d635bbd29b39d42c9782b63ff7cd065b67877ac664ab46a0220b59a1d182debb1d5b4bbf9d9") -set(lic_libcufft_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(libcufft_HASH "f23910dbae1d64b594e5b8d0cb3ebc36490d438bcd3e8d906b5b03492e39b295e9737db6406b0269724fded09aab85e6a5fd954289e242904273328890b8e097") -set(lic_libcurand_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(libcurand_HASH "09ff1713efc3a554d39c353520f82e42bc903d868c8f19835036fec9df12d0417ff9992291d3bcf98dac49866f9b7ddd7a050253d54c2131421f8317e41b876a") -set(lic_libcusolver_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(libcusolver_HASH "bdc0cdab1be95e9044ce797e05fbcee9d59dc4f3f6490c35cb7fcddc7729f81e3371475b2573a06483a75d13b813f9d63b9cde2f93bf434110a0733cf01aed4c") -set(lic_libcusparse_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(libcusparse_HASH "c1bb222ef9881c25936d4d8ae1fdf4a463924e3db66a1311ac5d070bd6ac8c5e3c3faf1958ad83976102f57939bf9ba8a1ad87b93af36d82d2481bbec4692582") -set(lic_libnpp_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(libnpp_HASH "999719b97649461a6c207f7c1e2069d1ca678a3b9bb9a56b708338d2de4c653332b877a82d80bd0689a8303ebc223ffe4412115de39c83d6eecaf29a129de180") -set(lic_libnvjitlink_HASH "9330644686d6f1130f3c011690dbfeb3b52eec7043a2c16d25cebf15e85dac832489614883db9cf78353669e66ae8f907176e5940b59be1351acb04c598f6069") -set(libnvjitlink_HASH "54252cb76f67338f9c036ce4a0b4143878c7bfafcb498ab2657a60ead3f83a18983c19b74907146f28fbab444c85b337bc14bbeab802f740e77c081fdcffa43a") -set(lic_libnvjpeg_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(libnvjpeg_HASH "93d2cd56cc998ff40b89a89e8815a515401756466e9c284892febdb8bd7d2c27526a48ebe210885ecbaef791c818c6ee49f6526626e7986d8bb1b409a345ff4f") -set(lic_fabricmanager_HASH "2a28ca80789f705e0c9d14c1b1c11304fa42ad31741a9fc339a295a0e307aaf05cb58cb4199e966ead799ae5232d68d0e54cb002212c1eab32bd9e288a030316") -set(fabricmanager_HASH "974570b27bcb75e448c332fb1ab9f8c905df7ef0c6acee4caa5665ae25a0d7f33296fd78c1adc5f50bf556fd31cba3ab59254ad311055ea632234bda6dea3a65") -set(lic_libnvidia_nscq_HASH "2a28ca80789f705e0c9d14c1b1c11304fa42ad31741a9fc339a295a0e307aaf05cb58cb4199e966ead799ae5232d68d0e54cb002212c1eab32bd9e288a030316") -set(libnvidia_nscq_HASH "c4d712f862f6296cd004dfe4f8f5d52c6476db451c1ae6dde199331e3222ec46bae5ed98114159ed7689b129d7006fea8d8cba9e3eda095d58b2eb7577a55ebb") -set(lic_nvidia_driver_HASH "2a28ca80789f705e0c9d14c1b1c11304fa42ad31741a9fc339a295a0e307aaf05cb58cb4199e966ead799ae5232d68d0e54cb002212c1eab32bd9e288a030316") -set(nvidia_driver_HASH "a3af20f23d0fcf340c65b92b43b2ae230e9e4d51602c566a5657954a5cc424ea424b806ca518d795061285df107f83a8af30241dc20eb98301ba012854c2174b") -set(lic_libcufile_HASH "a7db5621e13d42e03388e3484fc01703fb83b1aafc33f3f7dfc3066e327ef5b0a81fd9d413405e9921dbea253bff24f0325bf8a7e5c44e050561efe5e60f9f95") -set(libcufile_HASH "cd57e96d7cd17a7aad2cd798c23316dfc09239a1604c2a1866695be42e8b01daf87fe3e95928a50e164f982b8e7e250a22129b61b0aef17c757e0e293ad27aaa") -set(lic_nsight_compute_HASH "b9fcf702602703edeae6dbda86d53734343b6b42fcc8d1294783a4220d36e0d283167cdc5dd4ad5fba7ee4ce5774f264251660fbbed20a00a18e86aada6b95f5") -set(nsight_compute_HASH "9a2de386927b7dd6b115f435dbd061ec7e8a9d77c2a691856290302a3d96c82c20b8e161b27e4232dec72016149cb83bc76fd388b6d2d84dd16fb3e22606ab26") -set(lic_nsight_systems_HASH "b9fcf702602703edeae6dbda86d53734343b6b42fcc8d1294783a4220d36e0d283167cdc5dd4ad5fba7ee4ce5774f264251660fbbed20a00a18e86aada6b95f5") -set(nsight_systems_HASH "8a78968ae1ff73c5965cf6540b5e3a27961075f1523ad1211ce95a3b577e2c25709a241370b818b1012133dd3bd4ced2071bc5ea7b94903b3faf141673b9db0c") -set(lic_nvidia_fs_HASH "a7db5621e13d42e03388e3484fc01703fb83b1aafc33f3f7dfc3066e327ef5b0a81fd9d413405e9921dbea253bff24f0325bf8a7e5c44e050561efe5e60f9f95") -set(nvidia_fs_HASH "75b16f3ef241cbe089890fb63582871a521a9798e56fa43644b089177d27d716741f1cdb657f6770e0fe4d954555caf22288b626d5c2a44394d11d07116f6596") -set(lic_cuda_gdb_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_gdb_HASH "05b7971a779618344eb760124942a5595de486c5272b8a68fd4878844cadc016889c92a0e930cbdcb551fda65fc73dfbbba80004fb9b508e2d7004cbfc49b214") -set(lic_cuda_cuobjdump_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_cuobjdump_HASH "877b64a8a5d196de970e180c0dfc9bbab8ef20ec4c024e2c5040109beb10ed93a9b8f8d3db221015154d7b3b64fee9d2fa0cd0a7c611a221ba307a59a98f1bcf") -set(lic_cuda_cupti_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_cupti_HASH "14116425d077f2bd645b99dcd9e1b270fd03dbf45dff47d199360a97b91f741625ac8ecfe5408e98732b71e801a9164f391232eba8dd35cb47f5626042754cc0") -set(lic_cuda_cuxxfilt_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_cuxxfilt_HASH "f386846d6daa4754b91bb9f91e98a686dcffa5ec2bba6b0bd4d0c57671c7851764a27ba0ac83cb449a06085cdff7d340c113ffa345bedad3dbb0161bc10f62e7") -set(lic_cuda_nvcc_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_nvcc_HASH "f72401c6230d101ae4ae1f4810b84bf415406d4d64f557b98da76909f11b6d124537a4ee260a51a46791a4d46aa6802480d52b291bcb3bf672d863249fd2bbed") -set(lic_cuda_nvdisasm_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_nvdisasm_HASH "5f26bb5f9205f6f1024765e0101296b7f5a8250a542d8bf5a5427952ac261d2fae1b3ec7622252da3cd2508bf6ccb9f22c271945b711c16a2df55eb64116a503") -set(lic_cuda_nvprof_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_nvprof_HASH "7d119f9c832c20ef5eeff87a4288bbad8ab2e6bb143791311fdca1ba83b5b65b288474ccda51825cadc653b7228be9cd47b9f3a670f5c2ba147543adea71a36a") -set(lic_cuda_nvprune_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_nvprune_HASH "674aea2c0a2f8266d398848e3b14f82a78149e20859456b6a4da5491d69439403b2c3299f345602d2b64072802005ff8bf8db69906291f2cbe495ca962fdfe8d") -set(lic_cuda_nvtx_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_nvtx_HASH "bcf9515dcee56449b87e13b97d3c60722850e8a31b1402c72215c918c8ba602274966a684818a4c247a8ca21f3211492a675d688dc8ec5e6aaf2f3f3874d3d49") -set(lic_cuda_nvvp_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_nvvp_HASH "fd3c49b0c7d2498ee3d513e028414a5756247f4c78c064a302388b49e5c84a341a82821c423d48e0d49b112b69bc75f5331954a8ea4253dc09f764202e337dbc") +set(cuda_cccl_HASH "e92d6fb3dc81699850db8f1be963359b9339e76ab12037df9ca6f98edf6b11477b2abf71644502be6d39fac4be34090c0178da4970bdf2c734e7e5fccc0a399b") +set(cuda_cccl_URL "cuda_cccl/linux-x86_64/cuda_cccl-linux-x86_64-12.5.39-archive.tar.xz") +set(cuda_cudart_HASH "e225ff867ceb0eea96456862977afdda174e0215ccfc94b65b14b6a935ea607162d21271954e5c6243da698d22918d32b8fb7ea46149c76160a08ca5809494e2") +set(cuda_cudart_URL "cuda_cudart/linux-x86_64/cuda_cudart-linux-x86_64-12.5.39-archive.tar.xz") +set(cuda_nvtx_HASH "dac24168fdc4b7541b944d322afc8b25d64d942b719ab4e0cbd4d1f44b386ccf189c901770d1bb96fb676bfd93c4eec435eccc06ae82496816c8af891a7480a2") +set(cuda_nvtx_URL "cuda_nvtx/linux-x86_64/cuda_nvtx-linux-x86_64-12.5.39-archive.tar.xz") +set(cuda_nvml_dev_HASH "cd7c87beada066d80160249d51fb71a2b12c3b641b85c81653a42549330bd3663fcfcdd5fe3748b5599107fb33233fd43bb9114ad4138ff5702796289a9214e7") +set(cuda_nvml_dev_URL "cuda_nvml_dev/linux-x86_64/cuda_nvml_dev-linux-x86_64-12.5.39-archive.tar.xz") +set(cuda_nvrtc_HASH "31071f8eac3138ae7a3dc19bcaab92b80469849de46b66b812efa04264d02e19ef74a6291e7c34bcbd2860b04e22300ef0e2cbb055ad11264c543dd06c9f4f4e") +set(cuda_nvrtc_URL "cuda_nvrtc/linux-x86_64/cuda_nvrtc-linux-x86_64-12.5.40-archive.tar.xz") +set(cuda_profiler_api_HASH "86c8179b80b18a64768ea31ee66896de113d7366a05ef2dc5afda548dab719921dfe1bbc3df63c142cd842f9ffd5aec0941aeddc3865a1ef723d37920d9cf0d3") +set(cuda_profiler_api_URL "cuda_profiler_api/linux-x86_64/cuda_profiler_api-linux-x86_64-12.5.39-archive.tar.xz") +set(libcublas_HASH "0f9ac1ced74d82727024949f6bc96c9a48e44b6fb71ef827357f11bf7c4a7b8d9c79a76f4badd2be455a17343a075469307670750dbf3c1c5c85bdaecd5ea086") +set(libcublas_URL "libcublas/linux-x86_64/libcublas-linux-x86_64-12.5.2.13-archive.tar.xz") +set(libcufft_HASH "9113c0daab687ae6cd99992895bdbb8c5eb368a3b5f7b361f1af71ebea9eaafd36b517a886e24b600a464e83bd76b7bc54b42da8a662382e5291dcd01d970b23") +set(libcufft_URL "libcufft/linux-x86_64/libcufft-linux-x86_64-11.2.3.18-archive.tar.xz") +set(libcurand_HASH "70f14d86a4151a312b665477eceea4074ae57f21bb37b420cb6cc95b8d3dd0ceef6334d1002e8b7cd74eb2331cb628246be280bd0e1f10b9a5bf64b3688694d2") +set(libcurand_URL "libcurand/linux-x86_64/libcurand-linux-x86_64-10.3.6.39-archive.tar.xz") +set(libcusolver_HASH "79d01c0f96db00e967c4e106d951534e73c3d62a00aa6379fd1be18b90ccf54abc63c0e4f70948b671753d8206cb332eb4387f71ff4f978570f6a43747fede4e") +set(libcusolver_URL "libcusolver/linux-x86_64/libcusolver-linux-x86_64-11.6.2.40-archive.tar.xz") +set(libcusparse_HASH "5b3f003e9db923fe3165803b6039bb2f32bb450eb87ea6798ec2e2daf68bc6b35d79275c0208f440922058d7fdc873e5718a8160fd80132c33e085901cfd030f") +set(libcusparse_URL "libcusparse/linux-x86_64/libcusparse-linux-x86_64-12.4.1.24-archive.tar.xz") +set(libnpp_HASH "eb427ebd917b9d4b959d4f32a95d653670e3b07a8a85e2363eed83fefe187e044f69f7169d26ed3d2fdeeb0e68d87903cd7367ddf3414db337bc107b221e25a6") +set(libnpp_URL "libnpp/linux-x86_64/libnpp-linux-x86_64-12.3.0.116-archive.tar.xz") +set(libnvjitlink_HASH "fb58a1bce1a5486f71b0504887d0cc4c242bf539f2e5cdfcefd22369fd040d238d9bed457a32493456773e6359be60e8d94448df1e6afd8d688d1739278c5c22") +set(libnvjitlink_URL "libnvjitlink/linux-x86_64/libnvjitlink-linux-x86_64-12.5.40-archive.tar.xz") +set(libnvjpeg_HASH "2b52fb86996010b40843ad1aa3b65f4f4d50f3c20cff5bb5b4d1d729f842d227124c687fe00c73a2ad371057a495a5df53d73cc1b5164fb7903fdf61129ed8ab") +set(libnvjpeg_URL "libnvjpeg/linux-x86_64/libnvjpeg-linux-x86_64-12.3.2.38-archive.tar.xz") +set(fabricmanager_HASH "af8432458730273f9bdbf085f1817cd1db4dc7516de1a30c0aa77197fbc678e2e6a8da38a6a3a8a01145fd548f42e93cac29c390dbcf41c4f318e5f94ddf7461") +set(fabricmanager_URL "fabricmanager/linux-x86_64/fabricmanager-linux-x86_64-555.42.02-archive.tar.xz") +set(libnvidia_nscq_HASH "70444fc2130440b5f6ac5b1c46bcc3d9c01b4a948e8141eb2c6af3abf0e48724cc5feec5bc5a51aa8a9be839558b87600c9c2be84e8d2515df20ec36186fa11d") +set(libnvidia_nscq_URL "libnvidia_nscq/linux-x86_64/libnvidia_nscq-linux-x86_64-555.42.02-archive.tar.xz") +set(libcufile_HASH "45158e5a20560f4f7660a05d9bb8394933612d8fd8131a5ae0dd7086d024ea632e0cb5ae883ccc5b7eafbcd28da5c033c9118b71856c0d6db68d76fe9d0799b6") +set(libcufile_URL "libcufile/linux-x86_64/libcufile-linux-x86_64-1.10.0.4-archive.tar.xz") +set(nvidia_fs_HASH "bc21d4d6de7c2deb8f2bdd5441f1d0e0a4731c3030b9e5a5243996805b02c9c394818d9ab91f234a4c1bdda1a6e74e5212db61feaea15a08dafad0fd8e950d41") +set(nvidia_fs_URL "nvidia_fs/linux-x86_64/nvidia_fs-linux-x86_64-2.20.5-archive.tar.xz") +set(cuda_gdb_HASH "a827b17846a524643596983c904fffe2dd6d23023f0a9b6c87e1ba6ab15d10b970227ec36323645b64c819963bf1eee52636b0ecf6de2a47d69f157ccd4ed969") +set(cuda_gdb_URL "cuda_gdb/linux-x86_64/cuda_gdb-linux-x86_64-12.5.39-archive.tar.xz") +set(cuda_cuobjdump_HASH "a600a9eb2a2f1fa0ee02d28506f76b9556dfb9320c8155094e67ca25303665b81688eff4ce1172ce4b2db7154a91edb0802447feb18e53b233fb25767fe26443") +set(cuda_cuobjdump_URL "cuda_cuobjdump/linux-x86_64/cuda_cuobjdump-linux-x86_64-12.5.39-archive.tar.xz") +set(cuda_cupti_HASH "a292fa593b77e278efd3f9e15f25f8cf80d7fd5c20c9403608f5f2de57886434f3dec4b546203a51543a5c8ceb0c0554e5486609a1dfcde4d9ef5544ed0f3521") +set(cuda_cupti_URL "cuda_cupti/linux-x86_64/cuda_cupti-linux-x86_64-12.5.39-archive.tar.xz") +set(cuda_cuxxfilt_HASH "378e3c4ef1b93134a2091ac69662d93b39012001f2cf3097bfed5c57dbb0e94b560aaf2f6dde24c92bc3d75632e1de5a7ebe16e3ca48bd6392cedd7c31585c48") +set(cuda_cuxxfilt_URL "cuda_cuxxfilt/linux-x86_64/cuda_cuxxfilt-linux-x86_64-12.5.39-archive.tar.xz") +set(cuda_nvcc_HASH "f3542882b3b6d644a376d2ea983a7ace2aa064e97d001167a94bc42330fe455a67b9f62ded6a3b90504e6415baf0a8739bfbaa1125a1c83c4f96284676b2cbc6") +set(cuda_nvcc_URL "cuda_nvcc/linux-x86_64/cuda_nvcc-linux-x86_64-12.5.40-archive.tar.xz") +set(cuda_nvdisasm_HASH "7b8fba192dc54b858af6c918b8c9833e8f640ed32f51215fe749da4f2120fba89e9e2bbaff4e6cccc566ca59f9d2594b489c4238b1442f8f92342f75adfaf6ea") +set(cuda_nvdisasm_URL "cuda_nvdisasm/linux-x86_64/cuda_nvdisasm-linux-x86_64-12.5.39-archive.tar.xz") +set(cuda_nvprof_HASH "5f6bf518f2349a8bbb2fbcdf655808a089a332fceb46b65cb6ba266b77e2d038851d5ecc953be0c5f98067a3745cbad68c75f2484fe660947af763d2222889a0") +set(cuda_nvprof_URL "cuda_nvprof/linux-x86_64/cuda_nvprof-linux-x86_64-12.5.39-archive.tar.xz") diff --git a/ports/cuda/hash-windows-x86_64.cmake b/ports/cuda/hash-windows-x86_64.cmake index 66e7dd13beb11e..22a0bbb678f393 100644 --- a/ports/cuda/hash-windows-x86_64.cmake +++ b/ports/cuda/hash-windows-x86_64.cmake @@ -1,56 +1,41 @@ -set(cuda-json_HASH "e248bc28c51ea77b7ecc4ca4c0f1590115837a53f22f254c05955a55448e811a2419e811fad009b234f85d1de6fec641512c50f52af8dddc39ca93ca4468ddb4") -set(lic_cuda_cccl_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_cccl_HASH "64b74abd339aa2184d357322a80ae59998cc72e30ce811f0edbc33bf792b3bd29ef6bbb02488d82bad89578c0df15bcad75628b66ffb670508040a056a5df667") -set(lic_cuda_cudart_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_cudart_HASH "9a3e7ac9f09caf979af7f033af71d02ea44d2847fa5ebd385a22bbb99a4dff6eec90ad87ceb9bf54ef81cb476375b57bc09a6555825842a42be94e1486ab14b8") -set(lic_cuda_nvml_dev_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_nvml_dev_HASH "1dc2548e78fbc4caf2cda9064151ca198b0954c3ab22da752e66e5f50d3d6d544761b562a64932253ccd43ccdb0f3808588d48819210a9515046d314b73cb0be") -set(lic_cuda_nvrtc_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_nvrtc_HASH "9130e10242ad1d1ea0662d07353b363c7bfcc74c0fffc114a387bfc718d39308441305dae61c0b07a3c1a8fdaeb721ac9b548489c5e9b4674365bd1195a753a1") -set(lic_cuda_opencl_HASH "9330644686d6f1130f3c011690dbfeb3b52eec7043a2c16d25cebf15e85dac832489614883db9cf78353669e66ae8f907176e5940b59be1351acb04c598f6069") -set(cuda_opencl_HASH "a71d0fbe4a474b3d0c0bba87fdf633b784af43cb0679985b30f600fd4416f32a21aeac28b46c8f09804d1bd050b0890522eae6e78bc89404a2a9147964afb1c0") -set(lic_cuda_profiler_api_HASH "9330644686d6f1130f3c011690dbfeb3b52eec7043a2c16d25cebf15e85dac832489614883db9cf78353669e66ae8f907176e5940b59be1351acb04c598f6069") -set(cuda_profiler_api_HASH "e8a5ed55b2f50ccd8897287f2cd4cdd3377375670587d2e4d9e14c4be52173d69dcb2d0c90b85a06ed9c637fa5cc93d5a037af8a1d70b8ee3bac2f257e4f61c5") -set(lic_cuda_sanitizer_api_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_sanitizer_api_HASH "4fa674404ed8a18a6eb4073ba96fad9e64aef2ab29b6aa21ed0dd95b209aff39ce6684b267acb9aa59e060efdcc87f2d93b4a59a97dba30a3bfb93744412f8e4") -set(lic_libcublas_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(libcublas_HASH "4a48e5c02084f920f4acf8ad29d71339c51278751414cefad6d222e6c66d00ee6b2f63436bbdeb3455e6da45b50a2d9b79c3bf3e8d74bd4b82f9a85c2bf82722") -set(lic_libcufft_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(libcufft_HASH "993be593f89616d3dd4eda0cd5e54a2877c0b10f86ce3511b6f3aeeadfaa2013e020616f8d2429038ea1b92746e1c3df70ca8775a2614787dfa794e20e764f98") -set(lic_libcurand_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(libcurand_HASH "b283f63f011b7c8d7076bdf52bd3013bdfb32423a17713010172525d8f17020eac2f4e8cd5c50cd67793325af5d33bd1f067861318decb265085efe124de05ed") -set(lic_libcusolver_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(libcusolver_HASH "c6366b3b37105793856b98db8e53d2308b09dd502ab2face6fe10a55582395a4bc949a759829efb4ae733a2b5ec64813b33fc2685a6a4f83d9358cb29ca7fa08") -set(lic_libcusparse_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(libcusparse_HASH "594c2b7c3c889192be44c43778c4efb409cf5e77ca838b859d3f7f222db2d9059f32500b77fd1821948213b3d686041fe2b956bc3e87780bad246c4e8b6bc3a5") -set(lic_libnpp_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(libnpp_HASH "dff57624041ecc838f4425fc55b65aa6268bb569ac17820272c0abaf02f5c2645a6a1d3b554e0170f6887571e2f6b9c0c006a2458696af5586dfdb3e00b91d2b") -set(lic_libnvjitlink_HASH "9330644686d6f1130f3c011690dbfeb3b52eec7043a2c16d25cebf15e85dac832489614883db9cf78353669e66ae8f907176e5940b59be1351acb04c598f6069") -set(libnvjitlink_HASH "9c3a61c35e1fd93fbba93db37d38b5f52fb883e9e2865c3f01074b2e1e9f9d1c8c91d8441fca7afeff4f081093497dacf8a16b75b36ef138064c7f040ae4140b") -set(lic_libnvjpeg_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(libnvjpeg_HASH "ed11629005e2cefce1f963cdb196b76423b7b46d7e69837687c4ce8145036a0030ce049d31b92520e953c89902e0d6472b10bdfa528cc6e964ac9b2ab117adca") -set(lic_nsight_compute_HASH "b9fcf702602703edeae6dbda86d53734343b6b42fcc8d1294783a4220d36e0d283167cdc5dd4ad5fba7ee4ce5774f264251660fbbed20a00a18e86aada6b95f5") -set(nsight_compute_HASH "d652194b34a024de333c9a93108d8978ad4788f3a246d2e5276fff9eb0b9f09a51dbf994a1417acee04ec19b1bbbfd24e25ff3abe4054326faf788c4dcb29611") -set(lic_nsight_systems_HASH "b9fcf702602703edeae6dbda86d53734343b6b42fcc8d1294783a4220d36e0d283167cdc5dd4ad5fba7ee4ce5774f264251660fbbed20a00a18e86aada6b95f5") -set(nsight_systems_HASH "896b903bad64a1a43ddcb8be5339b5be7b2b2defc8b89f5c3ba75bb9fc0586280170dbfc8db686d19a3fe6df5d7739d282ab3c6d7f49877270c008b7df08677c") -set(lic_nsight_vse_HASH "b9fcf702602703edeae6dbda86d53734343b6b42fcc8d1294783a4220d36e0d283167cdc5dd4ad5fba7ee4ce5774f264251660fbbed20a00a18e86aada6b95f5") -set(nsight_vse_HASH "c0f55f4d36e3fd4d86781bafbb13298d1c8267e572025deb09806de97d6a22b012a3ba8866f6f7f3434be0a6f7119cab0c08f8f6853351d13f364809a933dafa") -set(lic_cuda_cuobjdump_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_cuobjdump_HASH "d1e6569237bf36c29a767b70ff8629987ea348011689101a5a22a08ee0d401cec5c2bd2557aac21f55b866d9b7c425a0310eb2c74838214418024c344f444a68") -set(lic_cuda_cupti_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_cupti_HASH "ad2fc3c3d3c385b45ac81e5513e6dfb7d8e415df64304fb11d7ebb2c75bad8f02404b6d435aa2b1725f80f47e09458605259097c345dd0bfd68a9e20d29f98eb") -set(lic_cuda_cuxxfilt_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_cuxxfilt_HASH "f3932361d662e28a7e49e2f0483522748f71322e39c98ae2abe48be4ec623d4485991d3da896dfa065e8bdf9fd18a65f8c8572065fa51b47292dc0a3c925e6a5") -set(lic_cuda_nvcc_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_nvcc_HASH "d8da6ea08e4602814440fa84ba6d92d8465af93a3229444262d4a186786a2fbbec108ba006b8de4f1adc7660b3be7a76a6930d5f7c2febd790b635b0b936df2e") -set(lic_cuda_nvdisasm_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_nvdisasm_HASH "984dbfe4a69993786d29a50e7228c07b034671040a3685b4433f7872826628a68a4d4d547ff9c5819596adc1a66b45888dde6f3d5f36292f5a56d7aad467f710") -set(lic_cuda_nvprof_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_nvprof_HASH "de911b13ba9f99a6a7f2756038839f6372379c09b3c3b0c5fa9bfeed970056a5ea65e8a94cf63a3796aecacd247ecae488a0ada2677f12120f3b201c773dccfa") -set(lic_cuda_nvprune_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_nvprune_HASH "e44c22d479bd2dfc4b7eda05c07170b3ef4847209ae0bb83b018fae3b84e1d3e7fc8a135f8bac035e3ef76918f61d384f57340bc7687b8ebada14fb697d7a24c") -set(lic_cuda_nvtx_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_nvtx_HASH "f9c5cb0f4e7f380cbe4591b01a95dcb518dbcb606ec05382de28068dc5ed0b240e7cd1a5bd51fe0c72f3fb5cfeeca0181f27847258982b4cc7f21b3e2b735f60") -set(lic_cuda_nvvp_HASH "60523bf7a4f4a6412f5bf45d1bcf08227fa8b27a88f95d9cb421c7e7aca96f4fcfea991a2eb7d5e6d7dd4c191f4aafed9d5586774f7c6c164394ec5bace9a021") -set(cuda_nvvp_HASH "ccee58926296e8c0ab2ba37baa6a407ff887fef8340ee9c8a2734d101757cc518c6b32d7e09e78fd75195bfea249cfbbaacc8887011a9157a676732fffd8c68f") +set(cuda_cccl_HASH "084199c3db13e6881ad9f14fb85e9ef30fa3ddfa1aa73d46b31f4c93d45ef5fa82a107593f85908291d4ede6d8ecb6c0443acde7b5aec37f6d7686720e326bcf") +set(cuda_cccl_URL "cuda_cccl/windows-x86_64/cuda_cccl-windows-x86_64-12.5.39-archive.zip") +set(cuda_cudart_HASH "507fe4b5c6894a879741ebb3291c0fbe395580d896d6057c236a5c3d485576e253c19c6ef61666c2a92ee949c2f6d470625ac3476acb9cb7a76c4c4c912f846e") +set(cuda_cudart_URL "cuda_cudart/windows-x86_64/cuda_cudart-windows-x86_64-12.5.39-archive.zip") +set(cuda_nvtx_HASH "ff4f9bead300ab7fe601e8d215831518dea40776de1a4b171c8da7510d3246e03167cc717f3d44c09901c8be540813db65f9d2cbd8babafae233436b76b1aa43") +set(cuda_nvtx_URL "cuda_nvtx/windows-x86_64/cuda_nvtx-windows-x86_64-12.5.39-archive.zip") +set(cuda_nvml_dev_HASH "bc9a8257a14c579b186eeb72dc165995cce1738679001d99508bb31b0f4651827f7590c8d8bd9875af3d9d0732487b30e8edaf7fb03e9e5f35473034e3b6e581") +set(cuda_nvml_dev_URL "cuda_nvml_dev/windows-x86_64/cuda_nvml_dev-windows-x86_64-12.5.39-archive.zip") +set(cuda_nvrtc_HASH "bc9e3b38724690538c013bc8579a5e6fa9a1c0d3169eb25ac79549b145f1ead49fcda350f1513bba61df6f85d560791aac32981bce7b4bdc1ac9c6fafb17a41e") +set(cuda_nvrtc_URL "cuda_nvrtc/windows-x86_64/cuda_nvrtc-windows-x86_64-12.5.40-archive.zip") +set(cuda_profiler_api_HASH "79735f962a548136e1280d3c5085ede2aeb790d8fddf88d0a12ff6e40b90b94d11de33ad7dfbbde0fe4b4b56322e6b25b766eb8946e4ce9d8eda91c3644ac261") +set(cuda_profiler_api_URL "cuda_profiler_api/windows-x86_64/cuda_profiler_api-windows-x86_64-12.5.39-archive.zip") +set(libcublas_HASH "ec74495abed9b2feb5c0875ef0a35093cb71497b617069fc532215db820337285ea1063497ccbeb8e5cb321f08b39897cb802f88427a88082fc71ae47d47e26a") +set(libcublas_URL "libcublas/windows-x86_64/libcublas-windows-x86_64-12.5.2.13-archive.zip") +set(libcufft_HASH "540a929b0e22719e8b048277a2ecbf4ff9276de97fc47898c4fbff8d0f558eb4e1dc9550c63e311814f9b9b048ded834ac2b2bf99155707a70fe5e0910e9432c") +set(libcufft_URL "libcufft/windows-x86_64/libcufft-windows-x86_64-11.2.3.18-archive.zip") +set(libcurand_HASH "d4dfe856ba974e65aaa23991df701cdd81ebce070871b445a49452e26b6ef1ff92b087f82fe3ba34931030a6368d53c5e3f3a08efb2ae62afa2c883473fea54b") +set(libcurand_URL "libcurand/windows-x86_64/libcurand-windows-x86_64-10.3.6.39-archive.zip") +set(libcusolver_HASH "27530293fca633a078078531e301b2b780c1ea81dd2daaecc79812c408a75f98e525ab71f2927c82f21d7b256a14bcd25f8c80fdf4c908c045d6060649615578") +set(libcusolver_URL "libcusolver/windows-x86_64/libcusolver-windows-x86_64-11.6.2.40-archive.zip") +set(libcusparse_HASH "cfb2451a02813d97573c16c25ed02846238131b793648ccb2af89a9c583c9a958580c05cf0e16ee10462382045cce65e6d373def06e6c4181ae886e6e720fe6e") +set(libcusparse_URL "libcusparse/windows-x86_64/libcusparse-windows-x86_64-12.4.1.24-archive.zip") +set(libnpp_HASH "352ff77f04333901b67a4e6ea841df173dc7127249d18a7181aefb50f6b4575655922d4606ffc701fd12fe804d01df2ba6235f5ce09b684e512ace95aa7863c9") +set(libnpp_URL "libnpp/windows-x86_64/libnpp-windows-x86_64-12.3.0.116-archive.zip") +set(libnvjitlink_HASH "0a16a9d0d8a1d5a1039afb225d7d5d1f34de826eb775e893c5289388eea41e7b31edda34eb66cca05f1a9d7e194be33c3cd49b574c8e3387e4269745113d14bc") +set(libnvjitlink_URL "libnvjitlink/windows-x86_64/libnvjitlink-windows-x86_64-12.5.40-archive.zip") +set(libnvjpeg_HASH "e936232195712bf944d176056638089a02a0a3675850df7120d9769bbdead8d5c07cc55b2d8357e0e249e69205d2a0cdeab29ecda3aa06521808ff91fcd6e031") +set(libnvjpeg_URL "libnvjpeg/windows-x86_64/libnvjpeg-windows-x86_64-12.3.2.38-archive.zip") +set(cuda_cuobjdump_HASH "c902c158154b395b43e962f16f07dfc8d3f2df6bdf5a5b25e2432c8137a0a11584953457fa060ced8fa2411270e7b2e5580a0e512743de13045ea182927b1ae5") +set(cuda_cuobjdump_URL "cuda_cuobjdump/windows-x86_64/cuda_cuobjdump-windows-x86_64-12.5.39-archive.zip") +set(cuda_cupti_HASH "4f897477727d0ad9a71c6728854fbd8fa447693adaad15959ab7fb2f2c09a024f0b2696bc3474ca8228dac554a30249104cf1dad6ac9eafa2213f1fc3c2ad2d7") +set(cuda_cupti_URL "cuda_cupti/windows-x86_64/cuda_cupti-windows-x86_64-12.5.39-archive.zip") +set(cuda_cuxxfilt_HASH "d11350e97ebfb2ffb10121953234d9eee652c3686cb98ed239572ff2b82db279a7750365adf87dfbbc37219e3c195d0a20446020a85e61532958de18588eb1a2") +set(cuda_cuxxfilt_URL "cuda_cuxxfilt/windows-x86_64/cuda_cuxxfilt-windows-x86_64-12.5.39-archive.zip") +set(cuda_nvcc_HASH "a971dfde49cd96bbdea056aa400db29676675f098a87d2b58e8d42a6b072608a3c05c6699051bb8cbbfff20b9a5eb22bfbb8a4187398f351ec6bf0092547e30d") +set(cuda_nvcc_URL "cuda_nvcc/windows-x86_64/cuda_nvcc-windows-x86_64-12.5.40-archive.zip") +set(cuda_nvdisasm_HASH "cfdedccd09e0cdcf437a87ba3e3601fe3b4753e423037a3ab8a4cb14a8a1afd2d4fd1bebdb9d3562725281c2ca50b28a0c0a541d2b817e3ba5c85a3439c9f202") +set(cuda_nvdisasm_URL "cuda_nvdisasm/windows-x86_64/cuda_nvdisasm-windows-x86_64-12.5.39-archive.zip") +set(cuda_nvprof_HASH "1a7a482c193aee3af78b399104e0ef1e1514213f1cbe317645708fba256e88dec207f1cbb67537cd9ea7187810be041ccf11a3ec914f25f33789ad6bb4648849") +set(cuda_nvprof_URL "cuda_nvprof/windows-x86_64/cuda_nvprof-windows-x86_64-12.5.39-archive.zip") diff --git a/ports/cuda/portfile.cmake b/ports/cuda/portfile.cmake index 94629712953611..3a370cabf4cb62 100644 --- a/ports/cuda/portfile.cmake +++ b/ports/cuda/portfile.cmake @@ -8,8 +8,6 @@ if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64") set(target x86_64) elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "arm64" AND VCPKG_TARGET_IS_LINUX) set(target sbsa) -elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "ppc64" AND VCPKG_TARGET_IS_LINUX) - set(target ppc64le) else() message(FATAL_ERROR "Unsupported architecture") endif() @@ -22,7 +20,6 @@ endif() set(components cccl # < contains cmake files - compat cudart nvtx nvml_dev @@ -67,7 +64,6 @@ endif() if(VCPKG_TARGET_IS_LINUX) list(APPEND libs - libcudla fabricmanager libnvidia_nscq #nvidia_driver @@ -84,78 +80,60 @@ endif() if(target STREQUAL "sbsa") list(REMOVE_ITEM components "opencl") list(REMOVE_ITEM tools "nvprof" "nvvp") -elseif(target STREQUAL "ppc64le") - list(REMOVE_ITEM components "opencl") - list(REMOVE_ITEM libs "fabricmanager" "libnvidia_nscq" "libcufile") - list(REMOVE_ITEM util "nvidia_fs") endif() list(TRANSFORM components PREPEND "cuda_") list(TRANSFORM tools PREPEND "cuda_") set(update_opt "") -set(cuda_updating 1) +#set(cuda_updating 1) if(cuda_updating) set(VCPKG_USE_HEAD_VERSION 1) set(update_opt SKIP_SHA512) - message(STATUS "Running ${PORT} in update mode!") else() include("${CURRENT_PORT_DIR}/hash-${platform}-${target}.cmake") endif() -vcpkg_download_distfile( - cuda_redist_json - URLS ${base_url}/redistrib_${VERSION}.json - FILENAME cuda-${VERSION}.json - SHA512 ${cuda-json_HASH} - ${update_opt} -) - if(cuda_updating) - file(SHA512 "${cuda_redist_json}" hash) - string(APPEND update_hash "set(cuda-json_HASH \"${hash}\")\n") + vcpkg_download_distfile( + cuda_redist_json + URLS ${base_url}/redistrib_${VERSION}.json + FILENAME cuda-${VERSION}.json + SHA512 ${cuda-json_HASH} + ${update_opt} + ) + file(READ "${cuda_redist_json}" cuda_json) endif() -file(READ "${cuda_redist_json}" cuda_json) - file(MAKE_DIRECTORY "${CURRENT_PACKAGES_DIR}/tools/cuda") set(licenses "") +set(dirs_to_remove "") foreach(comp IN LISTS components libs util tools) - string(JSON comp_json GET "${cuda_json}" "${comp}") - string(JSON lic_rel_url GET "${comp_json}" "license_path") - string(JSON comp_plat_json GET "${comp_json}" "${platform}-${target}") - string(JSON comp_plat_rel_url GET "${comp_plat_json}" "relative_path") - - set(lic_url "${base_url}/${lic_rel_url}") - set(comp_url "${base_url}/${comp_plat_rel_url}") - - # vcpkg_download_distfile( - # lic_${comp} - # URLS ${lic_url} - # FILENAME ${lic_rel_url} - # SHA512 ${lic_${comp}_HASH} - # ${update_opt} - # ) - # list(APPEND licenses "${lic_${comp}}") - # if(cuda_updating) - # file(SHA512 "${lic_${comp}}" hash) - # string(APPEND update_hash "set(lic_${comp}_HASH \"${hash}\")\n") - # endif() - - cmake_path(GET comp_plat_rel_url FILENAME comp_filename) + message(STATUS "Downloading: ${comp}") + + if(cuda_updating) + string(JSON comp_json GET "${cuda_json}" "${comp}") + string(JSON comp_plat_json GET "${comp_json}" "${platform}-${target}") + string(JSON comp_plat_rel_url GET "${comp_plat_json}" "relative_path") + set(${comp}_URL "${comp_plat_rel_url}") + endif() + + cmake_path(GET ${comp}_URL FILENAME comp_filename) vcpkg_download_distfile( ${comp} - URLS ${comp_url} + URLS "${base_url}/${${comp}_URL}" FILENAME ${comp_filename} SHA512 ${${comp}_HASH} ${update_opt} ) + if(cuda_updating) file(SHA512 "${${comp}}" hash) string(APPEND update_hash "set(${comp}_HASH \"${hash}\")\n") + string(APPEND update_hash "set(${comp}_URL \"${comp_plat_rel_url}\")\n") continue() endif() @@ -215,7 +193,9 @@ foreach(comp IN LISTS components libs util tools) PATTERN "LICENSE" EXCLUDE ) endif() - #file(REMOVE_RECURSE "${comp-src}") + file(GLOB_RECURSE com_lic_file "${comp-src}/*LICENSE") + list(APPEND licenses "${com_lic_file}") + list(APPEND dirs_to_remove "${comp-src}") endforeach() if(cuda_updating) @@ -256,13 +236,13 @@ if(EXISTS "${CURRENT_PACKAGES_DIR}/tools/cuda/pkg-config") endforeach() endif() - - if(NOT VCPKG_BUILD_TYPE) file(COPY "${CURRENT_PACKAGES_DIR}/bin/" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/bin") file(COPY "${CURRENT_PACKAGES_DIR}/lib/" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/lib") endif() +vcpkg_install_copyright(FILE_LIST ${licenses}) + file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/src" "${CURRENT_PACKAGES_DIR}/nvml" @@ -279,10 +259,9 @@ file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/README" "${CURRENT_PACKAGES_DIR}/LICENSE" "${CURRENT_PACKAGES_DIR}/CHANGELOG" + ${dirs_to_remove} ) -vcpkg_install_copyright(FILE_LIST ${licenses}) - file(COPY "${CMAKE_CURRENT_LIST_DIR}/vcpkg-port-config.cmake" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}") configure_file("${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake" "${CURRENT_PACKAGES_DIR}/share/${PORT}/vcpkg-cmake-wrapper.cmake" @ONLY) configure_file("${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake" "${CURRENT_PACKAGES_DIR}/share/cudatoolkit/vcpkg-cmake-wrapper.cmake" @ONLY) diff --git a/ports/cudnn/portfile.cmake b/ports/cudnn/portfile.cmake index 233536149ac2c3..9dea24842e025c 100644 --- a/ports/cudnn/portfile.cmake +++ b/ports/cudnn/portfile.cmake @@ -1,11 +1,12 @@ set(base_url "https://developer.download.nvidia.com/compute/cuda/redist") - + + +set(VCPKG_TARGET_IS_LINUX ON) +unset(VCPKG_TARGET_IS_WINDOWS) if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64") set(target x86_64) elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "arm64" AND VCPKG_TARGET_IS_LINUX) set(target sbsa) -elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "ppc64" AND VCPKG_TARGET_IS_LINUX) - set(target ppc64le) else() message(FATAL_ERROR "Unsupported architecture") endif() @@ -14,13 +15,12 @@ set(ext ".tar.xz") if(VCPKG_TARGET_IS_WINDOWS) set(platform windows) set(ext ".zip") - else() set(platform linux) endif() -set(cuDNN-windows-x86_64_HASH 55e7ddac92bbb1e7354ae7f1a2246da079c1147534357594419dcde740308a49854b79154e91b2970f8746c27f9564636cce955a21360cba003b93a786168e1d) -set(cuDNN-linux-x86_64_HASH d066f1c736fbc1106809fc6fd0eb27a333e9d70413f339f36074f7289f91982913166d69bda3c6e1a939d0ed7bad16574c95d80c1cff51678b8f13cb6e355f5c) +set(cuDNN-windows-x86_64_HASH fdb966ec9d44f90bc153e861f17b31e2cdba1339b7d9158b5106395b2468ee17b1dc21b83271aabfbb579f4ec0f3741cd193237aa8fbb75bd071c390aa6c1a0a) +set(cuDNN-linux-x86_64_HASH 918e460e08259562e2fc92bd72f7a9f16aed9ab75b58706f84ef5ee7757b37788dcc20c8ade92d0844994038afc10465d6dda0792b4794ff67d86a6c0a63865a) vcpkg_download_distfile( cudnn diff --git a/ports/cudnn/vcpkg.json b/ports/cudnn/vcpkg.json index 76574823fb8a8a..f8c58efbe4c9b0 100644 --- a/ports/cudnn/vcpkg.json +++ b/ports/cudnn/vcpkg.json @@ -1,6 +1,6 @@ { "name": "cudnn", - "version": "9.2.0", + "version": "9.2.0.82", "description": "NVIDIA cuDNN is a GPU-accelerated library of primitives for deep neural networks.", "homepage": "https://developer.nvidia.com/cudnn", "license": null, From cf4fd6f2913fcc2b166d90baf1a44c3382bdb039 Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Wed, 19 Jun 2024 21:47:28 +0200 Subject: [PATCH 37/43] v db --- versions/baseline.json | 16 ++++++++++------ versions/c-/cuda.json | 4 ++-- versions/c-/cudnn.json | 5 +++++ 3 files changed, 17 insertions(+), 8 deletions(-) diff --git a/versions/baseline.json b/versions/baseline.json index be734ff9846947..1c19122bc4a60e 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -2077,16 +2077,16 @@ "port-version": 1 }, "cuda": { - "baseline": "10.1", - "port-version": 13 + "baseline": "12.5.0", + "port-version": 0 }, "cuda-api-wrappers": { "baseline": "0.6.9", "port-version": 0 }, "cudnn": { - "baseline": "7.6.5", - "port-version": 12 + "baseline": "9.2.0.82", + "port-version": 0 }, "cunit": { "baseline": "2.1.3", @@ -2100,6 +2100,10 @@ "baseline": "2018-06-15", "port-version": 9 }, + "cusparselt": { + "baseline": "0.5.0.1", + "port-version": 0 + }, "cute-headers": { "baseline": "2019-09-20", "port-version": 2 @@ -6093,8 +6097,8 @@ "port-version": 1 }, "nccl": { - "baseline": "2.4.6", - "port-version": 2 + "baseline": "2.19.4", + "port-version": 0 }, "ncnn": { "baseline": "20240102", diff --git a/versions/c-/cuda.json b/versions/c-/cuda.json index f238f81bb5a757..461e01874ca9f8 100644 --- a/versions/c-/cuda.json +++ b/versions/c-/cuda.json @@ -1,8 +1,8 @@ { "versions": [ { - "git-tree": "52486f8c1b6f5377588a253407bdc0b19b4d9f0c", - "version": "12.3.1", + "git-tree": "4ddab96d01ca4636edec9e9a1cbc5a020324995c", + "version": "12.5.0", "port-version": 0 }, { diff --git a/versions/c-/cudnn.json b/versions/c-/cudnn.json index 112f84ef1c7d41..f9fe0c223396be 100644 --- a/versions/c-/cudnn.json +++ b/versions/c-/cudnn.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "4c41d7a4a7f4e9505439290e84697d5a000814e6", + "version": "9.2.0.82", + "port-version": 0 + }, { "git-tree": "a8687f7d446d544d2111cac62f5aa36681c2b223", "version": "7.6.5", From 9b8d604005c877bd44237174b1d602ee1e447d73 Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Thu, 20 Jun 2024 22:56:03 +0200 Subject: [PATCH 38/43] remove empty dir --- ports/cuda/portfile.cmake | 1 + 1 file changed, 1 insertion(+) diff --git a/ports/cuda/portfile.cmake b/ports/cuda/portfile.cmake index 3a370cabf4cb62..6b2aaf6c3ec889 100644 --- a/ports/cuda/portfile.cmake +++ b/ports/cuda/portfile.cmake @@ -248,6 +248,7 @@ file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/nvml" "${CURRENT_PACKAGES_DIR}/tools/cuda/nvml" "${CURRENT_PACKAGES_DIR}/share/cub" + "${CURRENT_PACKAGES_DIR}/tools/cuda/extras/Debugger/lib64" ) file(REMOVE_RECURSE From f5ef751a8bb57a87e32daa407a28b5a47adfecb2 Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Thu, 20 Jun 2024 22:56:25 +0200 Subject: [PATCH 39/43] v db --- versions/c-/cuda.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/versions/c-/cuda.json b/versions/c-/cuda.json index 461e01874ca9f8..6335ed0360bb3a 100644 --- a/versions/c-/cuda.json +++ b/versions/c-/cuda.json @@ -1,7 +1,7 @@ { "versions": [ { - "git-tree": "4ddab96d01ca4636edec9e9a1cbc5a020324995c", + "git-tree": "e9ee4bccca215179a51294aae7771d70fe9bf5c7", "version": "12.5.0", "port-version": 0 }, From d9655b3788c4fe835cae210649085d0c483c1719 Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Fri, 21 Jun 2024 09:22:14 +0200 Subject: [PATCH 40/43] remove problematic replace_string --- ports/cuda/portfile.cmake | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/ports/cuda/portfile.cmake b/ports/cuda/portfile.cmake index 6b2aaf6c3ec889..9aeed2e0664cc7 100644 --- a/ports/cuda/portfile.cmake +++ b/ports/cuda/portfile.cmake @@ -206,8 +206,7 @@ endif() file(COPY "${CURRENT_PACKAGES_DIR}/tools/cuda/lib/cmake/" DESTINATION "${CURRENT_PACKAGES_DIR}/share/" PATTERN "/share/cub/" EXCLUDE ) -#vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/share/cub/cub-header-search.cmake" "lib/cmake/cub" "share/cub") -vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/share/thrust/thrust-header-search.cmake" "lib/cmake/thrust" "share/thrust") + vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/share/thrust/thrust-header-search.cmake" "from_install_prefix}" "from_install_prefix}/tools/cuda/") vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/share/libcudacxx/libcudacxx-header-search.cmake" "../../../" "../../tools/cuda") From e7ac24897f85715a5b4220db8dc7356df3c4fef5 Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Fri, 21 Jun 2024 09:22:45 +0200 Subject: [PATCH 41/43] v db --- versions/c-/cuda.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/versions/c-/cuda.json b/versions/c-/cuda.json index 6335ed0360bb3a..c65929cd6d6763 100644 --- a/versions/c-/cuda.json +++ b/versions/c-/cuda.json @@ -1,7 +1,7 @@ { "versions": [ { - "git-tree": "e9ee4bccca215179a51294aae7771d70fe9bf5c7", + "git-tree": "3b7bb4e2353ca886d09be7f96388f087631dc7c9", "version": "12.5.0", "port-version": 0 }, From 5f4ecce1f545e7214a7e2f96f29f3e5cea051120 Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Sat, 22 Jun 2024 23:07:38 +0200 Subject: [PATCH 42/43] Remove code from updating linux from windows --- ports/cudnn/portfile.cmake | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/ports/cudnn/portfile.cmake b/ports/cudnn/portfile.cmake index 9dea24842e025c..cf15a96ab7853e 100644 --- a/ports/cudnn/portfile.cmake +++ b/ports/cudnn/portfile.cmake @@ -1,8 +1,6 @@ set(base_url "https://developer.download.nvidia.com/compute/cuda/redist") - - -set(VCPKG_TARGET_IS_LINUX ON) -unset(VCPKG_TARGET_IS_WINDOWS) + + if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64") set(target x86_64) elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "arm64" AND VCPKG_TARGET_IS_LINUX) @@ -62,4 +60,4 @@ set(VCPKG_POLICY_SKIP_DUMPBIN_CHECKS enabled) set(VCPKG_POLICY_DLLS_IN_STATIC_LIBRARY enabled) set(VCPKG_POLICY_SKIP_ARCHITECTURE_CHECK enabled) set(VCPKG_POLICY_ONLY_RELEASE_CRT enabled) - + From 7accff8428d3e4ca9b1c53fcff4d07e2fde6ef88 Mon Sep 17 00:00:00 2001 From: Alexander Neumann <30894796+Neumann-A@users.noreply.github.com> Date: Sat, 22 Jun 2024 23:08:38 +0200 Subject: [PATCH 43/43] v db --- versions/c-/cudnn.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/versions/c-/cudnn.json b/versions/c-/cudnn.json index f9fe0c223396be..af57881e38b71b 100644 --- a/versions/c-/cudnn.json +++ b/versions/c-/cudnn.json @@ -1,7 +1,7 @@ { "versions": [ { - "git-tree": "4c41d7a4a7f4e9505439290e84697d5a000814e6", + "git-tree": "92086f0c888a58c6f0237426262085acb05f130a", "version": "9.2.0.82", "port-version": 0 },