From 027dc9b3977cd14e0c7ae52e7bf9370c3919afa1 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sun, 31 Dec 2023 17:46:47 +0000 Subject: gentoo auto-resync : 31:12:2023 - 17:46:47 --- sci-libs/Manifest.gz | Bin 45145 -> 45139 bytes sci-libs/caffe2/Manifest | 6 +- sci-libs/caffe2/caffe2-2.1.2-r1.ebuild | 227 +++++++++++++++++++++ sci-libs/caffe2/caffe2-2.1.2.ebuild | 220 -------------------- .../files/caffe2-2.1.2-fix-openmp-link.patch | 15 ++ sci-libs/caffe2/files/caffe2-2.1.2-fix-rpath.patch | 12 ++ sci-libs/caffe2/metadata.xml | 1 + sci-libs/tensorpipe/Manifest | 3 +- .../files/tensorpipe-2022.05.13-musl.patch | 10 + .../tensorpipe/tensorpipe-2022.05.13-r1.ebuild | 5 +- 10 files changed, 275 insertions(+), 224 deletions(-) create mode 100644 sci-libs/caffe2/caffe2-2.1.2-r1.ebuild delete mode 100644 sci-libs/caffe2/caffe2-2.1.2.ebuild create mode 100644 sci-libs/caffe2/files/caffe2-2.1.2-fix-openmp-link.patch create mode 100644 sci-libs/caffe2/files/caffe2-2.1.2-fix-rpath.patch create mode 100644 sci-libs/tensorpipe/files/tensorpipe-2022.05.13-musl.patch (limited to 'sci-libs') diff --git a/sci-libs/Manifest.gz b/sci-libs/Manifest.gz index 9936408aacfc..be0b623e485d 100644 Binary files a/sci-libs/Manifest.gz and b/sci-libs/Manifest.gz differ diff --git a/sci-libs/caffe2/Manifest b/sci-libs/caffe2/Manifest index 5ddfe7e3af74..ec3737780b09 100644 --- a/sci-libs/caffe2/Manifest +++ b/sci-libs/caffe2/Manifest @@ -9,6 +9,8 @@ AUX caffe2-2.0.0-gentoo.patch 7081 BLAKE2B d2b8d411f6f2c19c5339053accd445606092d AUX caffe2-2.0.1-cudaExtra.patch 1294 BLAKE2B 2b7e43080d84ca47349274982f19b6b2eba456edeb78383cc56d0c0d8f409829e612c8e8e0afcece4155def7fe97f419ca08aed89fc3a77cc2a0f43ebf7d983a SHA512 6ad2466dc92c895098634b1016f4c7b3ce28b7bfac5fa0e122a0dfb979ec465e3849a6cf30a7909a382f9a98b3221a76e90ed0731cb5ab141a54fddfacaf5eea AUX caffe2-2.1.1-cudaExtra.patch 1336 BLAKE2B f12d29a624f9345452227076108b9ded4c6c60051f10645340e03694b53765cf1c892e9a8797748cfba1fc416d84782a265b961c9c5e7ab1b0f367192287c891 SHA512 9c394305f99e377c5eec6d271c9c80b3c45eb0ccaeb96ad21feba93bc13ae562843c0ae055d11ddee63b8e2b180dc2a0e7a44b9772b0044ac3cd94a0ee4c3d67 AUX caffe2-2.1.1-gentoo.patch 6329 BLAKE2B c002f1605888ac79bed292cf1967eedd4d177193947dbafea8443958e498b371865a8f7548cc7e2c572d7fff69418344286071d64f4742691e943e81b73d811c SHA512 8eb2b2f89de809ff93e0deaa4bd6116f73bed55642904e689ba97e5bf21ba5754935a8d0c1f632b1f262400f0c809398524056f7691f7787c154a5b7f6f1b7b2 +AUX caffe2-2.1.2-fix-openmp-link.patch 483 BLAKE2B dfe9ae0978b71449486d12f769c3c962001c138bc53b0605ed6f2215fe732356da90c5084488bc4d9f54c88aab2a426b8c935543f7ba0890783bb58da30a5cb4 SHA512 a9cee8ae2a8477a21e92bd4ef286af68efd90283593db7ed4641a826b19b4266bcab9c131c93be2b6c2f13d5cd545c766612791cf2e23cff9a731a03f3ad7648 +AUX caffe2-2.1.2-fix-rpath.patch 510 BLAKE2B 6585e8089acc6e7fe69713ad04a64263ab2e9d2d5cf6d3a844dbbc917383e4b7a0688ebdfb3142e3c42108c8c14a6435f48ae4ce3adee8db338286d60ed7b503 SHA512 ede770559b487fff736aded0cf4b077d8308c2b85c5cd139150b04bcb8b72a0d78af6a2b74fbb153b75acff71df0832d8f139231d1c18558f5b5479af348e6a0 DIST pytorch-1.13.1.tar.gz 108279745 BLAKE2B 75de03b74dfdaf8d8fb5ea743fcc0c1b0e408a714ad4160c487921220a7b1755e5fa6e587e6bbc8c9f34dd75e096d2e6dd69c80d24821835fff6c833314434d3 SHA512 f16f89d027efade11d057245cad5b69a390e88b458398310ae30de2dbff7c8fd7f1165be7b8da7ea989c81ac3f5a66c5cb9050610e441a97c83fb8aa28c0bd62 DIST pytorch-2.0.0.tar.gz 111327292 BLAKE2B 6d593a975c0ade714f0b189f7e3c4ff704b9a9a2377b5e441a9cefc202fa22779966d08948e63671912c6ea5a0eee124042155f4f57a654db34e19e42f013cc9 SHA512 4dd76160711c0d87f3026c8b7fa3ed149dd86b8ac0ee9ecea0eaf80d2e6ce8c29368392e77b9466d90b60634087b462b782495997a5d33367cc8ca9fe14c8a14 DIST pytorch-2.0.1.tar.gz 111335778 BLAKE2B 7a10cc2b2d5e2422aef7e060a0c3a62ca5c7460c6e0b9becade9b98939501975c74ed5a175a653731f43ca824d2c9bd31f41d1f633c2b139779ab23d5331e9ce SHA512 2309a22b3be3ccdb36d8d9781a59a7bdcc2fdb8d95ada205702ec77862480f0cbb12cd5d6b8cd3114d01a6e33b7743d0fe9de93debf37138ca5c14403cdb0c43 @@ -18,5 +20,5 @@ EBUILD caffe2-1.13.1-r6.ebuild 5244 BLAKE2B d7f5f16e1f1122604a6df64f16c62552fb8b EBUILD caffe2-2.0.0-r5.ebuild 5388 BLAKE2B 8eb29fe5c3abd1ca98c70c583adf10d8872c5cff0535ddc1fa230b4a4c0f71124be65934d498d421598e3723d1622bc1f6b36180bf010b8317a9151b9c026951 SHA512 3c1b194b1e8b010d55f3a046c7af3142c59bcf8cf54364df973564412c1f59aa195a989cdea613860cb6f726b35fac243fbde18fb62b20a930fc40d316dcfde1 EBUILD caffe2-2.0.1-r5.ebuild 5868 BLAKE2B c17450d01ff68d42188c9da9e9c7a6d6469fe5c8b72c91e4ea4456eb4fe9d08cf30619fbb06f3dae21add641329f3ce8ced24bca93eb05900340639c042a1cdb SHA512 d32fa4c194c51efb76b143f22f783efa7a1415902b03ddea1d3f145d632455ebfe672a1b05b1203f2ba752f3331831455ae631a66bb409f45d6c695c68f39c3b EBUILD caffe2-2.1.1-r6.ebuild 6155 BLAKE2B 42e2a369c3a0a3534689bd97cc52ce045d7f21f45cd6b20e7bfd9f50366203ced57f9d5622c8ccb178b3832482936fd841b463369cba2122205156a012fa8b37 SHA512 e5379515e040e0d5c46d3e84e6ae25fc06dee18b6196a1fd7b0198cd66e2f9cc9827fa6672f06c990527622323e30f6e208b344a981310a11d11880f0b50bd07 -EBUILD caffe2-2.1.2.ebuild 6169 BLAKE2B aa962dd75586f1d51f2debe9e718bcba6c354b5a48a2eed20e411bc88ec8644279c4cd57ceafe86ff44a5f2f16e380a73b743c09e4439737ef3b7835727bf098 SHA512 c154b36768238e8f63a98caf06797561c584a81402e7d0d3f553c9f4bce72043f4150135a1bedb47ec17de0a9e4b1b068edb2878d8c2bd221d464d8254003120 -MISC metadata.xml 1062 BLAKE2B 4a5a8aa05b6389823f265deab9373ba0e659a8d2051a72929bc19259215f557d35cd424fc61269446f2d44e45fbcd9a481f308e012da2d7129bbea8d4682c2b3 SHA512 369b2753317479a308c5340f94bdb749207c209646d409053ef78b2bc621f287ca76cfcfc1d04601bda14ed60f5fa9ff898c98b65c0f344a61b58af36f7f0674 +EBUILD caffe2-2.1.2-r1.ebuild 6303 BLAKE2B 74901eccd81f93664f2bf04cf565684533b2302289c404e054d673ffa74bd9c9e27b860596909f0e151ce0f031b7ecad895822add0adb2e0595110127ad621f4 SHA512 dda0ee5e67ccd63677239076141644a66466070f3cfe5d011ffa9197903d80926d68227634808bbfbd107e98f82880f332085a9028e7c4bca5e782cbbeeafb91 +MISC metadata.xml 1158 BLAKE2B f1a95314a6d013d6cd2209dc73daa571ff82510bb4ccbd7b74d888d5ceb7ea4c6531dd11d9b5c582282fb3d47cd018b32b008d9e6edfa29069985edc548382af SHA512 9a500343117e1fc9306505e9a3ec241199553baa226cf5025f641e13a811a7b09f5a77c388231d6ab89c02d9c87d1c5a01b6aa71a586e854f73a92b3261ad341 diff --git a/sci-libs/caffe2/caffe2-2.1.2-r1.ebuild b/sci-libs/caffe2/caffe2-2.1.2-r1.ebuild new file mode 100644 index 000000000000..56ae2472b0fb --- /dev/null +++ b/sci-libs/caffe2/caffe2-2.1.2-r1.ebuild @@ -0,0 +1,227 @@ +# Copyright 2022-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{9..12} ) +inherit python-single-r1 cmake cuda flag-o-matic prefix + +MYPN=pytorch +MYP=${MYPN}-${PV} + +DESCRIPTION="A deep learning framework" +HOMEPAGE="https://pytorch.org/" +SRC_URI="https://github.com/pytorch/${MYPN}/archive/refs/tags/v${PV}.tar.gz + -> ${MYP}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64" +IUSE="cuda distributed fbgemm ffmpeg gloo mkl mpi nnpack +numpy opencl opencv openmp qnnpack tensorpipe xnnpack" +RESTRICT="test" +REQUIRED_USE=" + ${PYTHON_REQUIRED_USE} + ffmpeg? ( opencv ) + mpi? ( distributed ) + tensorpipe? ( distributed ) + distributed? ( tensorpipe ) + gloo? ( distributed ) +" # ?? ( cuda rocm ) + +# CUDA 12 not supported yet: https://github.com/pytorch/pytorch/issues/91122 +RDEPEND=" + ${PYTHON_DEPS} + dev-cpp/gflags:= + >=dev-cpp/glog-0.5.0 + dev-libs/cpuinfo + dev-libs/libfmt + dev-libs/protobuf:= + dev-libs/pthreadpool + dev-libs/sleef + virtual/lapack + >=sci-libs/onnx-1.12.0 + =dev-libs/cudnn-frontend-0.9.2:0/8 + dev-util/nvidia-cuda-toolkit:=[profiler] + ) + fbgemm? ( >=dev-libs/FBGEMM-2023.11.02 ) + ffmpeg? ( media-video/ffmpeg:= ) + gloo? ( sci-libs/gloo[cuda?] ) + mpi? ( virtual/mpi ) + nnpack? ( sci-libs/NNPACK ) + numpy? ( $(python_gen_cond_dep ' + dev-python/numpy[${PYTHON_USEDEP}] + ') ) + opencl? ( virtual/opencl ) + opencv? ( media-libs/opencv:= ) + qnnpack? ( sci-libs/QNNPACK ) + tensorpipe? ( sci-libs/tensorpipe[cuda?] ) + xnnpack? ( >=sci-libs/XNNPACK-2022.12.22 ) + mkl? ( sci-libs/mkl ) +" +DEPEND=" + ${RDEPEND} + cuda? ( >=dev-libs/cutlass-3.1.0 ) + dev-libs/psimd + dev-libs/FP16 + dev-libs/FXdiv + dev-libs/pocketfft + dev-libs/flatbuffers + >=sci-libs/kineto-0.4.0_p20231031 + $(python_gen_cond_dep ' + dev-python/pyyaml[${PYTHON_USEDEP}] + dev-python/pybind11[${PYTHON_USEDEP}] + ') +" + +S="${WORKDIR}"/${MYP} + +PATCHES=( + "${FILESDIR}"/${PN}-2.1.1-gentoo.patch + "${FILESDIR}"/${PN}-1.13.0-install-dirs.patch + "${FILESDIR}"/${PN}-1.12.0-glog-0.6.0.patch + "${FILESDIR}"/${PN}-1.13.1-tensorpipe.patch + "${FILESDIR}"/${PN}-2.0.0-gcc13.patch + "${FILESDIR}"/${PN}-2.0.0-cudnn_include_fix.patch + "${FILESDIR}"/${PN}-2.1.1-cudaExtra.patch + "${FILESDIR}"/${PN}-2.1.2-fix-rpath.patch + "${FILESDIR}"/${PN}-2.1.2-fix-openmp-link.patch +) + +src_prepare() { + filter-lto #bug 862672 + sed -i \ + -e "/third_party\/gloo/d" \ + cmake/Dependencies.cmake \ + || die + cmake_src_prepare + pushd torch/csrc/jit/serialization || die + flatc --cpp --gen-mutable --scoped-enums mobile_bytecode.fbs || die + popd + # prefixify the hardcoded paths, after all patches are applied + hprefixify \ + aten/CMakeLists.txt \ + caffe2/CMakeLists.txt \ + cmake/Metal.cmake \ + cmake/Modules/*.cmake \ + cmake/Modules_CUDA_fix/FindCUDNN.cmake \ + cmake/Modules_CUDA_fix/upstream/FindCUDA/make2cmake.cmake \ + cmake/Modules_CUDA_fix/upstream/FindPackageHandleStandardArgs.cmake \ + cmake/public/LoadHIP.cmake \ + cmake/public/cuda.cmake \ + cmake/Dependencies.cmake \ + torch/CMakeLists.txt \ + CMakeLists.txt +} + +src_configure() { + if use cuda && [[ -z ${TORCH_CUDA_ARCH_LIST} ]]; then + ewarn "WARNING: caffe2 is being built with its default CUDA compute capabilities: 3.5 and 7.0." + ewarn "These may not be optimal for your GPU." + ewarn "" + ewarn "To configure caffe2 with the CUDA compute capability that is optimal for your GPU," + ewarn "set TORCH_CUDA_ARCH_LIST in your make.conf, and re-emerge caffe2." + ewarn "For example, to use CUDA capability 7.5 & 3.5, add: TORCH_CUDA_ARCH_LIST=7.5 3.5" + ewarn "For a Maxwell model GPU, an example value would be: TORCH_CUDA_ARCH_LIST=Maxwell" + ewarn "" + ewarn "You can look up your GPU's CUDA compute capability at https://developer.nvidia.com/cuda-gpus" + ewarn "or by running /opt/cuda/extras/demo_suite/deviceQuery | grep 'CUDA Capability'" + fi + + local mycmakeargs=( + -DBUILD_CUSTOM_PROTOBUF=OFF + -DBUILD_SHARED_LIBS=ON + + -DUSE_CCACHE=OFF + -DUSE_CUDA=$(usex cuda) + -DUSE_CUDNN=$(usex cuda) + -DTORCH_CUDA_ARCH_LIST="${TORCH_CUDA_ARCH_LIST:-3.5 7.0}" + -DBUILD_NVFUSER=$(usex cuda) + -DUSE_DISTRIBUTED=$(usex distributed) + -DUSE_MPI=$(usex mpi) + -DUSE_FAKELOWP=OFF + -DUSE_FBGEMM=$(usex fbgemm) + -DUSE_FFMPEG=$(usex ffmpeg) + -DUSE_GFLAGS=ON + -DUSE_GLOG=ON + -DUSE_GLOO=$(usex gloo) + -DUSE_KINETO=OFF # TODO + -DUSE_LEVELDB=OFF + -DUSE_MAGMA=OFF # TODO: In GURU as sci-libs/magma + -DUSE_MKLDNN=OFF + -DUSE_NCCL=OFF # TODO: NVIDIA Collective Communication Library + -DUSE_NNPACK=$(usex nnpack) + -DUSE_QNNPACK=$(usex qnnpack) + -DUSE_XNNPACK=$(usex xnnpack) + -DUSE_SYSTEM_XNNPACK=$(usex xnnpack) + -DUSE_TENSORPIPE=$(usex tensorpipe) + -DUSE_PYTORCH_QNNPACK=OFF + -DUSE_NUMPY=$(usex numpy) + -DUSE_OPENCL=$(usex opencl) + -DUSE_OPENCV=$(usex opencv) + -DUSE_OPENMP=$(usex openmp) + -DUSE_ROCM=OFF # TODO + -DUSE_SYSTEM_CPUINFO=ON + -DUSE_SYSTEM_PYBIND11=ON + -DUSE_UCC=OFF + -DUSE_VALGRIND=OFF + -DPYBIND11_PYTHON_VERSION="${EPYTHON#python}" + -DPYTHON_EXECUTABLE="${PYTHON}" + -DUSE_ITT=OFF + -DUSE_SYSTEM_PTHREADPOOL=ON + -DUSE_SYSTEM_FXDIV=ON + -DUSE_SYSTEM_FP16=ON + -DUSE_SYSTEM_GLOO=ON + -DUSE_SYSTEM_ONNX=ON + -DUSE_SYSTEM_SLEEF=ON + -DUSE_METAL=OFF + + -Wno-dev + -DTORCH_INSTALL_LIB_DIR="${EPREFIX}"/usr/$(get_libdir) + -DLIBSHM_INSTALL_LIB_SUBDIR="${EPREFIX}"/usr/$(get_libdir) + ) + + if use mkl; then + mycmakeargs+=(-DBLAS=MKL) + else + mycmakeargs+=(-DBLAS=Generic -DBLAS_LIBRARIES=) + fi + + if use cuda; then + addpredict "/dev/nvidiactl" # bug 867706 + addpredict "/dev/char" + + mycmakeargs+=( + -DCMAKE_CUDA_FLAGS="$(cuda_gccdir -f | tr -d \")" + ) + fi + cmake_src_configure +} + +src_install() { + cmake_src_install + + insinto "/var/lib/${PN}" + doins "${BUILD_DIR}"/CMakeCache.txt + + rm -rf python + mkdir -p python/torch/include || die + mv "${ED}"/usr/lib/python*/site-packages/caffe2 python/ || die + mv "${ED}"/usr/include/torch python/torch/include || die + if use cuda; then + mv "${ED}${S}"/nvfuser python/nvfuser || die + mv "${ED}"/usr/$(get_libdir)/nvfuser.so python/nvfuser/_C.so || die + fi + rm -rf "${ED}${S}"/test + rm -rf "${ED}${S}"/third_party + cp torch/version.py python/torch/ || die + python_domodule python/caffe2 + python_domodule python/torch + if use cuda; then + python_domodule python/nvfuser + fi + find "${ED}" -empty -delete +} diff --git a/sci-libs/caffe2/caffe2-2.1.2.ebuild b/sci-libs/caffe2/caffe2-2.1.2.ebuild deleted file mode 100644 index aca834318aa5..000000000000 --- a/sci-libs/caffe2/caffe2-2.1.2.ebuild +++ /dev/null @@ -1,220 +0,0 @@ -# Copyright 2022-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{9..11} ) -inherit python-single-r1 cmake cuda flag-o-matic prefix - -MYPN=pytorch -MYP=${MYPN}-${PV} - -DESCRIPTION="A deep learning framework" -HOMEPAGE="https://pytorch.org/" -SRC_URI="https://github.com/pytorch/${MYPN}/archive/refs/tags/v${PV}.tar.gz - -> ${MYP}.tar.gz" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="~amd64" -IUSE="cuda distributed fbgemm ffmpeg gloo mpi nnpack +numpy opencl opencv openmp qnnpack tensorpipe xnnpack" -RESTRICT="test" -REQUIRED_USE=" - ${PYTHON_REQUIRED_USE} - ffmpeg? ( opencv ) - mpi? ( distributed ) - tensorpipe? ( distributed ) - distributed? ( tensorpipe ) - gloo? ( distributed ) -" # ?? ( cuda rocm ) - -# CUDA 12 not supported yet: https://github.com/pytorch/pytorch/issues/91122 -RDEPEND=" - ${PYTHON_DEPS} - dev-cpp/gflags:= - >=dev-cpp/glog-0.5.0 - dev-libs/cpuinfo - dev-libs/libfmt - dev-libs/protobuf:= - dev-libs/pthreadpool - dev-libs/sleef - sci-libs/lapack - >=sci-libs/onnx-1.12.0 - =dev-libs/cudnn-frontend-0.9.2:0/8 - dev-util/nvidia-cuda-toolkit:=[profiler] - ) - fbgemm? ( >=dev-libs/FBGEMM-2023.11.02 ) - ffmpeg? ( media-video/ffmpeg:= ) - gloo? ( sci-libs/gloo[cuda?] ) - mpi? ( virtual/mpi ) - nnpack? ( sci-libs/NNPACK ) - numpy? ( $(python_gen_cond_dep ' - dev-python/numpy[${PYTHON_USEDEP}] - ') ) - opencl? ( virtual/opencl ) - opencv? ( media-libs/opencv:= ) - qnnpack? ( sci-libs/QNNPACK ) - tensorpipe? ( sci-libs/tensorpipe[cuda?] ) - xnnpack? ( >=sci-libs/XNNPACK-2022.12.22 ) -" -DEPEND=" - ${RDEPEND} - dev-cpp/eigen - cuda? ( >=dev-libs/cutlass-3.1.0 ) - dev-libs/psimd - dev-libs/FP16 - dev-libs/FXdiv - dev-libs/pocketfft - dev-libs/flatbuffers - >=sci-libs/kineto-0.4.0_p20231031 - $(python_gen_cond_dep ' - dev-python/pyyaml[${PYTHON_USEDEP}] - dev-python/pybind11[${PYTHON_USEDEP}] - ') -" - -S="${WORKDIR}"/${MYP} - -PATCHES=( - "${FILESDIR}"/${PN}-2.1.1-gentoo.patch - "${FILESDIR}"/${PN}-1.13.0-install-dirs.patch - "${FILESDIR}"/${PN}-1.12.0-glog-0.6.0.patch - "${FILESDIR}"/${PN}-1.13.1-tensorpipe.patch - "${FILESDIR}"/${PN}-2.0.0-gcc13.patch - "${FILESDIR}"/${PN}-2.0.0-cudnn_include_fix.patch - "${FILESDIR}"/${PN}-2.1.1-cudaExtra.patch -) - -src_prepare() { - filter-lto #bug 862672 - sed -i \ - -e "/third_party\/gloo/d" \ - cmake/Dependencies.cmake \ - || die - cmake_src_prepare - pushd torch/csrc/jit/serialization || die - flatc --cpp --gen-mutable --scoped-enums mobile_bytecode.fbs || die - popd - # prefixify the hardcoded paths, after all patches are applied - hprefixify \ - aten/CMakeLists.txt \ - caffe2/CMakeLists.txt \ - cmake/Metal.cmake \ - cmake/Modules/*.cmake \ - cmake/Modules_CUDA_fix/FindCUDNN.cmake \ - cmake/Modules_CUDA_fix/upstream/FindCUDA/make2cmake.cmake \ - cmake/Modules_CUDA_fix/upstream/FindPackageHandleStandardArgs.cmake \ - cmake/public/LoadHIP.cmake \ - cmake/public/cuda.cmake \ - cmake/Dependencies.cmake \ - torch/CMakeLists.txt \ - CMakeLists.txt -} - -src_configure() { - if use cuda && [[ -z ${TORCH_CUDA_ARCH_LIST} ]]; then - ewarn "WARNING: caffe2 is being built with its default CUDA compute capabilities: 3.5 and 7.0." - ewarn "These may not be optimal for your GPU." - ewarn "" - ewarn "To configure caffe2 with the CUDA compute capability that is optimal for your GPU," - ewarn "set TORCH_CUDA_ARCH_LIST in your make.conf, and re-emerge caffe2." - ewarn "For example, to use CUDA capability 7.5 & 3.5, add: TORCH_CUDA_ARCH_LIST=7.5 3.5" - ewarn "For a Maxwell model GPU, an example value would be: TORCH_CUDA_ARCH_LIST=Maxwell" - ewarn "" - ewarn "You can look up your GPU's CUDA compute capability at https://developer.nvidia.com/cuda-gpus" - ewarn "or by running /opt/cuda/extras/demo_suite/deviceQuery | grep 'CUDA Capability'" - fi - - local mycmakeargs=( - -DBUILD_CUSTOM_PROTOBUF=OFF - -DBUILD_SHARED_LIBS=ON - - -DUSE_CCACHE=OFF - -DUSE_CUDA=$(usex cuda) - -DUSE_CUDNN=$(usex cuda) - -DTORCH_CUDA_ARCH_LIST="${TORCH_CUDA_ARCH_LIST:-3.5 7.0}" - -DBUILD_NVFUSER=$(usex cuda) - -DUSE_DISTRIBUTED=$(usex distributed) - -DUSE_MPI=$(usex mpi) - -DUSE_FAKELOWP=OFF - -DUSE_FBGEMM=$(usex fbgemm) - -DUSE_FFMPEG=$(usex ffmpeg) - -DUSE_GFLAGS=ON - -DUSE_GLOG=ON - -DUSE_GLOO=$(usex gloo) - -DUSE_KINETO=OFF # TODO - -DUSE_LEVELDB=OFF - -DUSE_MAGMA=OFF # TODO: In GURU as sci-libs/magma - -DUSE_MKLDNN=OFF - -DUSE_NCCL=OFF # TODO: NVIDIA Collective Communication Library - -DUSE_NNPACK=$(usex nnpack) - -DUSE_QNNPACK=$(usex qnnpack) - -DUSE_XNNPACK=$(usex xnnpack) - -DUSE_SYSTEM_XNNPACK=$(usex xnnpack) - -DUSE_TENSORPIPE=$(usex tensorpipe) - -DUSE_PYTORCH_QNNPACK=OFF - -DUSE_NUMPY=$(usex numpy) - -DUSE_OPENCL=$(usex opencl) - -DUSE_OPENCV=$(usex opencv) - -DUSE_OPENMP=$(usex openmp) - -DUSE_ROCM=OFF # TODO - -DUSE_SYSTEM_CPUINFO=ON - -DUSE_SYSTEM_PYBIND11=ON - -DUSE_UCC=OFF - -DUSE_VALGRIND=OFF - -DPYBIND11_PYTHON_VERSION="${EPYTHON#python}" - -DPYTHON_EXECUTABLE="${PYTHON}" - -DUSE_ITT=OFF - -DBLAS=Eigen # avoid the use of MKL, if found on the system - -DUSE_SYSTEM_EIGEN_INSTALL=ON - -DUSE_SYSTEM_PTHREADPOOL=ON - -DUSE_SYSTEM_FXDIV=ON - -DUSE_SYSTEM_FP16=ON - -DUSE_SYSTEM_GLOO=ON - -DUSE_SYSTEM_ONNX=ON - -DUSE_SYSTEM_SLEEF=ON - - -Wno-dev - -DTORCH_INSTALL_LIB_DIR="${EPREFIX}"/usr/$(get_libdir) - -DLIBSHM_INSTALL_LIB_SUBDIR="${EPREFIX}"/usr/$(get_libdir) - ) - - if use cuda; then - addpredict "/dev/nvidiactl" # bug 867706 - addpredict "/dev/char" - - mycmakeargs+=( - -DCMAKE_CUDA_FLAGS="$(cuda_gccdir -f | tr -d \")" - ) - fi - cmake_src_configure -} - -src_install() { - cmake_src_install - - insinto "/var/lib/${PN}" - doins "${BUILD_DIR}"/CMakeCache.txt - - rm -rf python - mkdir -p python/torch/include || die - mv "${ED}"/usr/lib/python*/site-packages/caffe2 python/ || die - mv "${ED}"/usr/include/torch python/torch/include || die - if use cuda; then - mv "${ED}${S}"/nvfuser python/nvfuser || die - mv "${ED}"/usr/$(get_libdir)/nvfuser.so python/nvfuser/_C.so || die - fi - rm -rf "${ED}${S}"/test - rm -rf "${ED}${S}"/third_party - cp torch/version.py python/torch/ || die - python_domodule python/caffe2 - python_domodule python/torch - if use cuda; then - python_domodule python/nvfuser - fi - find "${ED}" -empty -delete -} diff --git a/sci-libs/caffe2/files/caffe2-2.1.2-fix-openmp-link.patch b/sci-libs/caffe2/files/caffe2-2.1.2-fix-openmp-link.patch new file mode 100644 index 000000000000..3f2d0ae3c30a --- /dev/null +++ b/sci-libs/caffe2/files/caffe2-2.1.2-fix-openmp-link.patch @@ -0,0 +1,15 @@ +Fix "undefined symbol: omp_get_max_active_levels" in mkl + builds +https://github.com/pytorch/pytorch/issues/116576 +--- a/caffe2/CMakeLists.txt ++++ b/caffe2/CMakeLists.txt +@@ -1575,6 +1575,10 @@ if(BUILD_SHARED_LIBS) + target_link_libraries(torch_global_deps TBB::tbb) + endif() + ++ if(USE_OPENMP) ++ target_link_libraries(torch_global_deps OpenMP::OpenMP_CXX) ++ endif() ++ + install(TARGETS torch_global_deps DESTINATION "${TORCH_INSTALL_LIB_DIR}") + endif() + diff --git a/sci-libs/caffe2/files/caffe2-2.1.2-fix-rpath.patch b/sci-libs/caffe2/files/caffe2-2.1.2-fix-rpath.patch new file mode 100644 index 000000000000..731227fa25ee --- /dev/null +++ b/sci-libs/caffe2/files/caffe2-2.1.2-fix-rpath.patch @@ -0,0 +1,12 @@ +Unset rpath to support blas-lapack-switch +Bug: https://bugs.gentoo.org/921129 +--- a/cmake/Dependencies.cmake ++++ b/cmake/Dependencies.cmake +@@ -10,7 +10,6 @@ endif(APPLE) + set(CMAKE_SKIP_BUILD_RPATH FALSE) + # Don't use the install-rpath during the build phase + set(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE) +-set(CMAKE_INSTALL_RPATH "${_rpath_portable_origin}") + # Automatically add all linked folders that are NOT in the build directory to + # the rpath (per library?) + set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE) diff --git a/sci-libs/caffe2/metadata.xml b/sci-libs/caffe2/metadata.xml index 3b4ad7f29919..eac4c942a88d 100644 --- a/sci-libs/caffe2/metadata.xml +++ b/sci-libs/caffe2/metadata.xml @@ -21,6 +21,7 @@ Use QNNPACK Use tensorpipe Use XNNPACK + Use sci-libs/mkl for blas, lapack and sparse blas routines pytorch/pytorch diff --git a/sci-libs/tensorpipe/Manifest b/sci-libs/tensorpipe/Manifest index 49bc8577e400..2c8ea5b6c357 100644 --- a/sci-libs/tensorpipe/Manifest +++ b/sci-libs/tensorpipe/Manifest @@ -1,4 +1,5 @@ AUX tensorpipe-2022.05.13-gentoo.patch 522 BLAKE2B b5efc8193549a84569125794e65a931343f26996f487158f39dd6c9d1689ecd1390bae1616e1f498461a3b4b0a17478a8a14c1cbd6b76c82b7dc2a4452e72d7e SHA512 3c8cd91daf9cf1c4249c5e5f7154f9d4495d33ab011802f83a96d056723ebfb86406f4bc9c8bacc8af2a70336d706de9d88d538d196348d2d6ea4e56886b5162 +AUX tensorpipe-2022.05.13-musl.patch 330 BLAKE2B 9aade68ee025eea3c8bf1ab38531dda0814537bfa2878aea15da6c954ac379ca09dc2eb1ee136481e5d23af7c968dd27afcd93652efdc0737668976745ecefec SHA512 a09590691156b0e425b8c28652af295e53ef4b107ed148ea0c18c94fbd1e99ed1f7dabe2eb87bc3458ff09db0d463d71dbb97edffbe15db78be7e3a9c8289112 DIST tensorpipe-2022.05.13.tar.gz 259678 BLAKE2B 09231216b7ea1a5f4559bfd38d82337cdcde160c34ceb160c728b85ccf94566b812f0c38b6d3f6bc74b6f08b49b749939970265df343e3ca0214803f9d88e58c SHA512 cf0334f81affb2d844bc8b63c533a749753e36ee096f841641716a3bf044b17580262a2e9056d8d1351228e323c4f75401a2a120a5de397e80ec21a33fe56d2b -EBUILD tensorpipe-2022.05.13-r1.ebuild 715 BLAKE2B acf19eb22134d1a77d7b421702a98e907104747c87afb16253680c72dc000ae10ef2e356678384e71522032e1ad52f8fc0e6f5f26332c0d30b459c87a2e99bc7 SHA512 b84ba32b1f4abe94db73418625184f0a843170a6604dcaa9a855a3905d09efeb82cdfbc461248cd9b4cfbf740b5aa3001b504d3adacf2ae7b8404a703d78830c +EBUILD tensorpipe-2022.05.13-r1.ebuild 747 BLAKE2B 24851d8d62843fe6243c5dfff39178681f8076a84065dd3779b97d2b995d9beae5275c3432405631dc726e883c6f6a0c99fb3d5bb30e909807d9b7c076fe9432 SHA512 0b9970f8a544da51ded12c20f1c32f8fed105405a69a38b4b18aa5ed92c172eb9bb841e6055f7a72ca5f9bf4a8351af30527fa2d7bb341d1a2fcdb3b4e8e5594 MISC metadata.xml 331 BLAKE2B 6a5a854e8e6c987dc1b105a3c905d8113b0613e63f479e700f85a01b96e4b939de8706bc876c1bf44bd61f40b9b3b18eb87f3899c1f3697ddfb5ca6bed2a7a61 SHA512 8843f661956cdbfbda49aebfe4586c5eaafa7e7b82f134d5881e46ac6ebf69b20167f532a372280be17ae29016aca82e2930762b2bdbb7616918b7200a3a2a49 diff --git a/sci-libs/tensorpipe/files/tensorpipe-2022.05.13-musl.patch b/sci-libs/tensorpipe/files/tensorpipe-2022.05.13-musl.patch new file mode 100644 index 000000000000..86fd4793ae5f --- /dev/null +++ b/sci-libs/tensorpipe/files/tensorpipe-2022.05.13-musl.patch @@ -0,0 +1,10 @@ +--- a/tensorpipe/channel/cma/context_impl.cc 2023-12-31 13:40:35.080753311 +0100 ++++ b/tensorpipe/channel/cma/context_impl.cc 2023-12-31 13:40:44.570735997 +0100 +@@ -8,7 +8,6 @@ + + #include + +-#include + #include + #include + #include diff --git a/sci-libs/tensorpipe/tensorpipe-2022.05.13-r1.ebuild b/sci-libs/tensorpipe/tensorpipe-2022.05.13-r1.ebuild index 734a2050cf07..0ff4c6216eef 100644 --- a/sci-libs/tensorpipe/tensorpipe-2022.05.13-r1.ebuild +++ b/sci-libs/tensorpipe/tensorpipe-2022.05.13-r1.ebuild @@ -30,7 +30,10 @@ DEPEND="${RDEPEND} S="${WORKDIR}"/${PN}-${CommitId} -PATCHES=( "${FILESDIR}"/${P}-gentoo.patch ) +PATCHES=( + "${FILESDIR}"/${P}-gentoo.patch + "${FILESDIR}"/${P}-musl.patch +) src_configure() { local mycmakeargs=( -- cgit v1.2.3