sci-ml/caffe2
A deep learning framework
-
caffe2-2.12.0-r91~amd64cuda cusparselt distributed fbgemm flash gloo kineto memefficient mimalloc mkl mpi nccl nnpack +numpy onednn openblas opencl openmp qnnpack rocm xnnpack python_single_target_python3_12 python_single_target_python3_13 python_single_target_python3_14 +amdgpu_targets_gfx908 +amdgpu_targets_gfx90a +amdgpu_targets_gfx942 +amdgpu_targets_gfx1030 +amdgpu_targets_gfx1100 +amdgpu_targets_gfx1101 +amdgpu_targets_gfx1200 +amdgpu_targets_gfx1201 amdgpu_targets_gfx803 amdgpu_targets_gfx900 amdgpu_targets_gfx906 amdgpu_targets_gfx940 amdgpu_targets_gfx941 amdgpu_targets_gfx1010 amdgpu_targets_gfx1011 amdgpu_targets_gfx1012 amdgpu_targets_gfx1031 amdgpu_targets_gfx1102 amdgpu_targets_gfx1103 amdgpu_targets_gfx1150 amdgpu_targets_gfx1151
View
Download
Browse License: BSD Overlay: stuff -
caffe2-2.12.0-r2~amd64 ~arm64cuda cusparselt distributed fbgemm flash gloo kineto memefficient mimalloc mkl mpi nccl nnpack +numpy onednn openblas opencl openmp qnnpack rocm xnnpack python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13 python_single_target_python3_14 +amdgpu_targets_gfx908 +amdgpu_targets_gfx90a +amdgpu_targets_gfx942 +amdgpu_targets_gfx1030 +amdgpu_targets_gfx1100 +amdgpu_targets_gfx1101 +amdgpu_targets_gfx1200 +amdgpu_targets_gfx1201 amdgpu_targets_gfx803 amdgpu_targets_gfx900 amdgpu_targets_gfx906 amdgpu_targets_gfx940 amdgpu_targets_gfx941 amdgpu_targets_gfx1010 amdgpu_targets_gfx1011 amdgpu_targets_gfx1012 amdgpu_targets_gfx1031 amdgpu_targets_gfx1102 amdgpu_targets_gfx1103 amdgpu_targets_gfx1150 amdgpu_targets_gfx1151
View
Download
Browse License: BSD Overlay: gentoo -
caffe2-2.11.0-r90~amd64 ~arm64cuda cusparselt distributed fbgemm flash gloo kineto memefficient mimalloc mkl mpi nccl nnpack +numpy onednn openblas opencl openmp qnnpack rocm xnnpack python_single_target_python3_12 python_single_target_python3_13 python_single_target_python3_14 +amdgpu_targets_gfx908 +amdgpu_targets_gfx90a +amdgpu_targets_gfx942 +amdgpu_targets_gfx1030 +amdgpu_targets_gfx1100 +amdgpu_targets_gfx1101 +amdgpu_targets_gfx1200 +amdgpu_targets_gfx1201 amdgpu_targets_gfx803 amdgpu_targets_gfx900 amdgpu_targets_gfx906 amdgpu_targets_gfx940 amdgpu_targets_gfx941 amdgpu_targets_gfx1010 amdgpu_targets_gfx1011 amdgpu_targets_gfx1012 amdgpu_targets_gfx1031 amdgpu_targets_gfx1102 amdgpu_targets_gfx1103 amdgpu_targets_gfx1150 amdgpu_targets_gfx1151
View
Download
Browse License: BSD Overlay: stuff -
caffe2-2.11.0-r3~amd64 ~arm64cuda cusparselt distributed fbgemm flash gloo kineto memefficient mimalloc mkl mpi nccl nnpack +numpy onednn openblas opencl openmp qnnpack rocm xnnpack python_single_target_python3_11 python_single_target_python3_12 python_single_target_python3_13 python_single_target_python3_14 +amdgpu_targets_gfx908 +amdgpu_targets_gfx90a +amdgpu_targets_gfx942 +amdgpu_targets_gfx1030 +amdgpu_targets_gfx1100 +amdgpu_targets_gfx1101 +amdgpu_targets_gfx1200 +amdgpu_targets_gfx1201 amdgpu_targets_gfx803 amdgpu_targets_gfx900 amdgpu_targets_gfx906 amdgpu_targets_gfx940 amdgpu_targets_gfx941 amdgpu_targets_gfx1010 amdgpu_targets_gfx1011 amdgpu_targets_gfx1012 amdgpu_targets_gfx1031 amdgpu_targets_gfx1102 amdgpu_targets_gfx1103 amdgpu_targets_gfx1150 amdgpu_targets_gfx1151
View
Download
Browse License: BSD Overlay: gentoo
ChangeLog
commit 7c384c8cac70105c06770e0ccb7af0fc295f2471
Author: Raukaan Cogbrother <cogbrother@raukaan.local>
Date: Sun May 31 03:29:35 2026 +0200
metadata: normalize tab → 2-space indent in 42 imported files
42 metadata.xml files inherited tab indentation from their origin
overlays (mostly the ROCm cluster, plus a handful of dev-python and
AMD-tooling imports). The overlay convention is 2-space; this brings
them in line with the other 498 files. Maintainer attributions
preserved verbatim.
commit 6b7192253e216334bb27f7c41b79803fc8ac8a36
Author: Ivan S. Titov <iohann.s.titov@gmail.com>
Date: Fri May 29 09:37:30 2026 +0200
sci-ml/caffe2: relax pybind11 cap to <3.0.5
The <3.0.2 cap was inherited from the 2.11.0-era fork; ::gentoo's 2.12.0-r2 allows
<3.0.5 for the same upstream, and the stale cap blocked pybind11 from upgrading past
3.0.1.
commit b32aff8fbb037bea69577857ec2da162856a8e4f
Author: Ivan S. Titov <iohann.s.titov@gmail.com>
Date: Fri May 29 01:26:23 2026 +0200
sci-ml/caffe2: fix xz-compressed patches breaking src_prepare
e8b75c54 compressed files/*.patch to clear a TotalSizeViolation, but eapply does not
decompress patches, so each one failed on the raw xz bytes. Decompress them into $
and repoint PATCHES in src_prepare, keeping files/ compressed so the cap stays
satisfied.
commit e8b75c54469f970239ba45e0cd17beb8159b8f9a
Author: Ivan S. Titov <iohann.s.titov@gmail.com>
Date: Wed May 27 15:02:11 2026 +0200
sci-ml/caffe2: xz-compress files/*.patch to clear TotalSizeViolation
eapply decompresses .patch.xz transparently. Compression takes the
files/ payload from 58.2 KiB to 21.5 KiB (well under pkgcheck's 50
KiB threshold). Chosen over the extra-stuff bundle migration to keep
the patches in-tree; per-patch edits become 'xz -d' → edit → 'xz -9'
but the workflow stays single-repo.
commit e348703397f16e5622b4834a13833dc79ccc35c8
Author: Ivan S. Titov <iohann.s.titov@gmail.com>
Date: Thu May 21 14:27:48 2026 +0200
sci-ml/caffe2: add 2.12.0-r90
Fork from ::gentoo 2.12.0-r1 (which drops rocm-fix-std-cpp17.patch to
resolve the C++20 .contains() failure under gcc-16). Carry forward our
overlay-only mkl-public-scrub patch:
- mkl-public-scrub: scrub MKL MPI/cluster libs and force GNU OpenMP
threading in caffe2::mkl's public link interface (ported from 2.11.0;
cmake/public/mkl.cmake context identical at 2.12.0).
Also: drop python3_11 from PYTHON_COMPAT and arm64 from KEYWORDS (not
tested in this overlay); drop nonexistent !sci-libs/QNNPACK blocker.
commit 253cd7b826e77eb7e68d1d3548d5ac9d36ab4ccc
Author: Ivan S. Titov <iohann.s.titov@gmail.com>
Date: Wed May 13 14:35:42 2026 +0200
sci-ml/caffe2: disable py3.11
commit f1e7ab9cddb007e7de2e4e4e87ffedd361b212ad
Author: Ivan S. Titov <iohann.s.titov@gmail.com>
Date: Sat May 9 00:44:08 2026 +0200
sci-ml/caffe2: drop dead !sci-libs/QNNPACK blocker
QNNPACK has never existed as a separate Gentoo package (verified
2026-05-09 — no entry in ::gentoo's sci-libs/, no diff-filter=A hits in
::gentoo history). Upstream PyTorch vendors it and exposes the build
toggle as USE_PYTORCH_QNNPACK, which we already wire via the qnnpack
USE flag. The blocker was protecting against a separate package that
never landed. pkgcheck NonexistentBlocker.
commit f19ffa2a53036faae2f64194c8b2f7c7c15e3fb0
Author: Ivan S. Titov <iohann.s.titov@gmail.com>
Date: Fri May 8 19:29:35 2026 +0200
sci-ml/caffe2: drop two orphan patches inherited from ::gentoo fork
Both patches target older PVs (2.6.0 / 2.10.0) that 2.11.0-r90's
PATCHES= no longer references; the array uses $- variants for the
relevant fixes (mimalloc, rocm-fix-std-cpp17). Came along when forking
from ::gentoo's -r3 to add the MKL public-link scrub.
commit 78e2fba68899c5e58faba344002934108b58e32c
Author: Ivan S. Titov <iohann.s.titov@gmail.com>
Date: Fri May 8 01:25:42 2026 +0200
sci-ml/caffe2: fork ::gentoo's 2.11.0-r3 to -r90 with MKL public-link scrub
::gentoo's caffe2 ships caffe2/cmake/public/mkl.cmake unchanged from
upstream pytorch — calls find_package(MKL) and dumps the full result
into caffe2::mkl's INTERFACE_LINK_LIBRARIES with no filter. On hosts
with Intel oneAPI installed, the resolver is Intel's own MKLConfig.cmake
which by default returns the full HPC / Cluster Edition lib set,
including libmkl_scalapack_ilp64, libmkl_cdft_core,
libmkl_blacs_intelmpi_ilp64 (all MPI-distributed), and libmkl_intel_thread
(Intel-OpenMP threading layer). Those libs only exist when Intel's
separate Cluster + Compiler oneAPI packages are also installed; the
basic intel-oneapi-mkl package omits them.
Because they end up in caffe2::mkl's public link interface, every
downstream consumer that links against torch::torch (vllm's
cumem_allocator, custom torch C++ extensions, etc.) inherits them
and the link fails with "cannot find -lmkl_scalapack_ilp64" etc.
torch::torch's public APIs never reach BLACS / ScaLAPACK / distributed
FFT — distributed-tensor paths use NCCL / Gloo / MPI directly, not
MKL's BLACS. So filtering them is purely subtraction of incorrect
public-link-interface clutter. Forcing MKL_THREADING=gnu_thread before
the find pulls libmkl_gnu_thread (always available) instead of
libmkl_intel_thread, and pairs cleanly with system libgomp — also
avoids the multi-OpenMP-runtime mixing trap (libgomp + libiomp5 in
the same process can oversubscribe / deadlock).
Verified 2026-05-08 against caffe2-2.11.0 with USE="cuda distributed
fbgemm gloo memefficient mkl mpi nnpack numpy onednn openblas opencl
openmp": full rebuild + import torch succeed identically; downstream
consumers (vllm USE=cuda's cumem_allocator extension) link cleanly.
Upstream pytorch's cmake/public/mkl.cmake on main still has the same
unfiltered behaviour as of 2026-05-08; no upstream PR open for this
specific scrub. Drop this -r90 fork when an equivalent upstream fix
lands.
Author: Raukaan Cogbrother <cogbrother@raukaan.local>
Date: Sun May 31 03:29:35 2026 +0200
metadata: normalize tab → 2-space indent in 42 imported files
42 metadata.xml files inherited tab indentation from their origin
overlays (mostly the ROCm cluster, plus a handful of dev-python and
AMD-tooling imports). The overlay convention is 2-space; this brings
them in line with the other 498 files. Maintainer attributions
preserved verbatim.
commit 6b7192253e216334bb27f7c41b79803fc8ac8a36
Author: Ivan S. Titov <iohann.s.titov@gmail.com>
Date: Fri May 29 09:37:30 2026 +0200
sci-ml/caffe2: relax pybind11 cap to <3.0.5
The <3.0.2 cap was inherited from the 2.11.0-era fork; ::gentoo's 2.12.0-r2 allows
<3.0.5 for the same upstream, and the stale cap blocked pybind11 from upgrading past
3.0.1.
commit b32aff8fbb037bea69577857ec2da162856a8e4f
Author: Ivan S. Titov <iohann.s.titov@gmail.com>
Date: Fri May 29 01:26:23 2026 +0200
sci-ml/caffe2: fix xz-compressed patches breaking src_prepare
e8b75c54 compressed files/*.patch to clear a TotalSizeViolation, but eapply does not
decompress patches, so each one failed on the raw xz bytes. Decompress them into $
and repoint PATCHES in src_prepare, keeping files/ compressed so the cap stays
satisfied.
commit e8b75c54469f970239ba45e0cd17beb8159b8f9a
Author: Ivan S. Titov <iohann.s.titov@gmail.com>
Date: Wed May 27 15:02:11 2026 +0200
sci-ml/caffe2: xz-compress files/*.patch to clear TotalSizeViolation
eapply decompresses .patch.xz transparently. Compression takes the
files/ payload from 58.2 KiB to 21.5 KiB (well under pkgcheck's 50
KiB threshold). Chosen over the extra-stuff bundle migration to keep
the patches in-tree; per-patch edits become 'xz -d' → edit → 'xz -9'
but the workflow stays single-repo.
commit e348703397f16e5622b4834a13833dc79ccc35c8
Author: Ivan S. Titov <iohann.s.titov@gmail.com>
Date: Thu May 21 14:27:48 2026 +0200
sci-ml/caffe2: add 2.12.0-r90
Fork from ::gentoo 2.12.0-r1 (which drops rocm-fix-std-cpp17.patch to
resolve the C++20 .contains() failure under gcc-16). Carry forward our
overlay-only mkl-public-scrub patch:
- mkl-public-scrub: scrub MKL MPI/cluster libs and force GNU OpenMP
threading in caffe2::mkl's public link interface (ported from 2.11.0;
cmake/public/mkl.cmake context identical at 2.12.0).
Also: drop python3_11 from PYTHON_COMPAT and arm64 from KEYWORDS (not
tested in this overlay); drop nonexistent !sci-libs/QNNPACK blocker.
commit 253cd7b826e77eb7e68d1d3548d5ac9d36ab4ccc
Author: Ivan S. Titov <iohann.s.titov@gmail.com>
Date: Wed May 13 14:35:42 2026 +0200
sci-ml/caffe2: disable py3.11
commit f1e7ab9cddb007e7de2e4e4e87ffedd361b212ad
Author: Ivan S. Titov <iohann.s.titov@gmail.com>
Date: Sat May 9 00:44:08 2026 +0200
sci-ml/caffe2: drop dead !sci-libs/QNNPACK blocker
QNNPACK has never existed as a separate Gentoo package (verified
2026-05-09 — no entry in ::gentoo's sci-libs/, no diff-filter=A hits in
::gentoo history). Upstream PyTorch vendors it and exposes the build
toggle as USE_PYTORCH_QNNPACK, which we already wire via the qnnpack
USE flag. The blocker was protecting against a separate package that
never landed. pkgcheck NonexistentBlocker.
commit f19ffa2a53036faae2f64194c8b2f7c7c15e3fb0
Author: Ivan S. Titov <iohann.s.titov@gmail.com>
Date: Fri May 8 19:29:35 2026 +0200
sci-ml/caffe2: drop two orphan patches inherited from ::gentoo fork
Both patches target older PVs (2.6.0 / 2.10.0) that 2.11.0-r90's
PATCHES= no longer references; the array uses $- variants for the
relevant fixes (mimalloc, rocm-fix-std-cpp17). Came along when forking
from ::gentoo's -r3 to add the MKL public-link scrub.
commit 78e2fba68899c5e58faba344002934108b58e32c
Author: Ivan S. Titov <iohann.s.titov@gmail.com>
Date: Fri May 8 01:25:42 2026 +0200
sci-ml/caffe2: fork ::gentoo's 2.11.0-r3 to -r90 with MKL public-link scrub
::gentoo's caffe2 ships caffe2/cmake/public/mkl.cmake unchanged from
upstream pytorch — calls find_package(MKL) and dumps the full result
into caffe2::mkl's INTERFACE_LINK_LIBRARIES with no filter. On hosts
with Intel oneAPI installed, the resolver is Intel's own MKLConfig.cmake
which by default returns the full HPC / Cluster Edition lib set,
including libmkl_scalapack_ilp64, libmkl_cdft_core,
libmkl_blacs_intelmpi_ilp64 (all MPI-distributed), and libmkl_intel_thread
(Intel-OpenMP threading layer). Those libs only exist when Intel's
separate Cluster + Compiler oneAPI packages are also installed; the
basic intel-oneapi-mkl package omits them.
Because they end up in caffe2::mkl's public link interface, every
downstream consumer that links against torch::torch (vllm's
cumem_allocator, custom torch C++ extensions, etc.) inherits them
and the link fails with "cannot find -lmkl_scalapack_ilp64" etc.
torch::torch's public APIs never reach BLACS / ScaLAPACK / distributed
FFT — distributed-tensor paths use NCCL / Gloo / MPI directly, not
MKL's BLACS. So filtering them is purely subtraction of incorrect
public-link-interface clutter. Forcing MKL_THREADING=gnu_thread before
the find pulls libmkl_gnu_thread (always available) instead of
libmkl_intel_thread, and pairs cleanly with system libgomp — also
avoids the multi-OpenMP-runtime mixing trap (libgomp + libiomp5 in
the same process can oversubscribe / deadlock).
Verified 2026-05-08 against caffe2-2.11.0 with USE="cuda distributed
fbgemm gloo memefficient mkl mpi nnpack numpy onednn openblas opencl
openmp": full rebuild + import torch succeed identically; downstream
consumers (vllm USE=cuda's cumem_allocator extension) link cleanly.
Upstream pytorch's cmake/public/mkl.cmake on main still has the same
unfiltered behaviour as of 2026-05-08; no upstream PR open for this
specific scrub. Drop this -r90 fork when an equivalent upstream fix
lands.

