commit: d2671854dc793847b7c2f525732769be801467f4
Author: Patrick Lauer <patrick <AT> gentoo <DOT> org>
AuthorDate: Sat Feb 8 10:00:42 2025 +0000
Commit: Patrick Lauer <patrick <AT> gentoo <DOT> org>
CommitDate: Sat Feb 8 10:07:10 2025 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d2671854
sci-libs/miopen: add 6.3.2
Signed-off-by: Patrick Lauer <patrick <AT> gentoo.org>
sci-libs/miopen/Manifest | 1 +
sci-libs/miopen/miopen-6.3.2.ebuild | 134 ++++++++++++++++++++++++++++++++++++
2 files changed, 135 insertions(+)
diff --git a/sci-libs/miopen/Manifest b/sci-libs/miopen/Manifest
index 5fc8fe370379..9dea432f1133 100644
--- a/sci-libs/miopen/Manifest
+++ b/sci-libs/miopen/Manifest
@@ -2,4 +2,5 @@ DIST MIOpen-5.1.3.tar.gz 88118329 BLAKE2B
d24722ffc5f5dab6d6a1de2ce34193ad2f25c9
DIST MIOpen-5.7.1.tar.gz 100751593 BLAKE2B
c5f847fe4374ab22737c281a65401125012328412d584fc09244b431ea6265d6d5028429115ee15fa8b04cbe0edd020e4e7ac8deb22561183ed76cb8c3d4d9d4
SHA512
3354b3b154f29a6337403abc5a71ec47c0b2558320c5a1b0cbfbbdb370c4fada2db12d4a19a312b5e30ca2e2302ee50ece3390603e84d132b2212a168e9523fa
DIST MIOpen-6.1.1.tar.gz 101935496 BLAKE2B
5aadaa5eefa1b22dedfe87deb36f8acdbe57962cac8b7b6b20bc76f136ef29f0441e48112010280c2e674a1ae9fd202ca3e07be47cf4a4bc797234d6dc618be5
SHA512
b8860583919bf2f3e0da7ace30fdb0595ab45b85a367be3737e0b15a22a5565b8d6660c652ee070f21c36ac7d17ef3ba8e2eda7ed89bd6a0c65a4df799626d1a
DIST MIOpen-6.3.0.tar.gz 104152308 BLAKE2B
46c238314393599a1bd4d3c49b0c95386b36cbee1831bf442ab127082b4c740116e81cf643c773627125b59c3974a2344753939b4287aa4adbbc51e4c4833988
SHA512
14ca2967ed6545ad68c362128be93b8e6a9d4aa69e16e989b187463d15351eca2fc437d07e88c41f693138131a7449add607333c698e24efaf0207077e15ae55
+DIST MIOpen-6.3.2.tar.gz 104156821 BLAKE2B
e7611ea2d37d3c72cde2e6be153271dacd7150083ec63ec2357e1c808dc9e79c1928f06fd4e70712989c5ab13a604a91d3fba1819723da12b49f6a447a561f3c
SHA512
bf219459244c8f0962c54a8e94273aeeafe4b9b093c72ac962fa9d373526c9dc406c46d0464ec6b20d52b1e6c01e2cf2544267b573a0e774c7afd4ba9adc9fb9
DIST gtest-1.11.0_p20210611.tar.gz 887296 BLAKE2B
8f29b7028a6dd8190a113cd93398705b23b61d88bee38beaf9dcc0dfc8a463aed7fcd3719f6f1b131d4363aa57231629aaeffa108f6558efb58416cfface6d6e
SHA512
cf9e7f3fd3e31ce6677eac355fb8bfe19c5b56a8ec3af8b9417d0904cdf5da92f99f7411a08131cc9fa4fc7d38e6a71fcfac993648e47b269a74a27de7607f7a
diff --git a/sci-libs/miopen/miopen-6.3.2.ebuild
b/sci-libs/miopen/miopen-6.3.2.ebuild
new file mode 100644
index 000000000000..c8ade5eed8c2
--- /dev/null
+++ b/sci-libs/miopen/miopen-6.3.2.ebuild
@@ -0,0 +1,134 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+ROCM_VERSION=${PV}
+LLVM_COMPAT=( 19 )
+
+inherit cmake flag-o-matic llvm-r1 rocm
+
+DESCRIPTION="AMD's Machine Intelligence Library"
+HOMEPAGE="https://github.com/ROCm/MIOpen"
+SRC_URI="https://github.com/ROCm/MIOpen/archive/rocm-${PV}.tar.gz ->
MIOpen-${PV}.tar.gz"
+S="${WORKDIR}/MIOpen-rocm-${PV}"
+
+LICENSE="MIT"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64"
+
+IUSE="composable-kernel debug hipblaslt rocblas roctracer test"
+
+# tests can freeze machine depending on gpu/kernel
+RESTRICT="test"
+
+RDEPEND="
+ dev-util/hip:${SLOT}
+ >=dev-db/sqlite-3.17
+ sci-libs/rocRAND:${SLOT}[${ROCM_USEDEP}]
+ >=dev-libs/boost-1.72
+ dev-cpp/nlohmann_json
+ dev-cpp/frugally-deep
+
+ composable-kernel? ( sci-libs/composable-kernel:${SLOT}[${ROCM_USEDEP}]
)
+ hipblaslt? (
+ sci-libs/hipBLAS:${SLOT}[${ROCM_USEDEP}]
+ sci-libs/hipBLASLt:${SLOT}
+ )
+ rocblas? ( sci-libs/rocBLAS:${SLOT}[${ROCM_USEDEP}] )
+ roctracer? ( dev-util/roctracer:${SLOT}[${ROCM_USEDEP}] )
+"
+
+DEPEND="${RDEPEND}"
+
+BDEPEND="
+ >=dev-libs/half-1.12.0-r1
+ dev-build/rocm-cmake
+ test? ( dev-cpp/gtest )
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-6.1.1-build-all-tests.patch
+ "${FILESDIR}"/${PN}-6.1.1-fix-libcxx.patch
+ "${FILESDIR}"/${PN}-6.3.0-conditional-ck-components.patch
+ "${FILESDIR}"/${PN}-6.3.0-isnan-include.patch
+)
+
+src_prepare() {
+ cmake_src_prepare
+
+ # complementary replacements for conditional-ck-components patch
+ find src -name '*mha*.cpp' -type f | while IFS= read -r file; do
+ sed -i "s/MIOPEN_USE_COMPOSABLEKERNEL/MIOPEN_USE_CK_MHA_OPS/g"
"$file" || die
+ done
+
+ sed -i "s/MIOPEN_USE_COMPOSABLEKERNEL/MIOPEN_USE_CK_XDL_OPS/g" \
+ src/mlo_dir_conv.cpp \
+ src/solver/conv_ck_igemm_fwd_bias_res_add_activ_fused.cpp \
+ src/solver/conv_ck_igemm_fwd_bias_activ_fused.cpp || die
+ find src -name '*xdl*.cpp' -type f | while IFS= read -r file; do
+ sed -i "s/MIOPEN_USE_COMPOSABLEKERNEL/MIOPEN_USE_CK_XDL_OPS/g"
"$file" || die
+ done
+
+ sed -e '/MIOPEN_TIDY_ERRORS ALL/d' \
+ -e 's/FLAGS_RELEASE} -s/FLAGS_RELEASE}/g' \
+ -i CMakeLists.txt || die
+
+ sed -e "/add_test/s:--build \${CMAKE_CURRENT_BINARY_DIR}:--build
${BUILD_DIR}:" \
+ -i test/CMakeLists.txt || die
+
+ sed -e
"s:\${PROJECT_BINARY_DIR}/miopen/include:\${PROJECT_BINARY_DIR}/include:" \
+ -i src/CMakeLists.txt || die
+}
+
+src_configure() {
+ rocm_use_hipcc
+
+ if ! use debug; then
+ append-cflags "-DNDEBUG"
+ append-cxxflags "-DNDEBUG"
+ CMAKE_BUILD_TYPE="Release"
+ else
+ CMAKE_BUILD_TYPE="Debug"
+ fi
+
+ local mycmakeargs=(
+ -DCMAKE_SKIP_RPATH=ON
+ -DAMDGPU_TARGETS="$(get_amdgpu_flags)"
+ -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr"
+ -DMIOPEN_BACKEND=HIP
+ -DBoost_USE_STATIC_LIBS=OFF
+ -DMIOPEN_USE_MLIR=OFF
+ -DMIOPEN_USE_ROCTRACER=$(usex roctracer ON OFF)
+ -DMIOPEN_USE_ROCBLAS=$(usex rocblas ON OFF)
+ -DMIOPEN_USE_HIPBLASLT=$(usex hipblaslt ON OFF)
+ -DMIOPEN_USE_COMPOSABLEKERNEL=$(usex composable-kernel ON OFF)
+ -DBUILD_TESTING=$(usex test ON OFF)
+ -DBUILD_FILE_REORG_BACKWARD_COMPATIBILITY=OFF
+ -DROCM_SYMLINK_LIBS=OFF
+ -DMIOPEN_HIP_COMPILER="${ESYSROOT}/usr/bin/hipcc"
+ -DMIOPEN_AMDGCN_ASSEMBLER="$(get_llvm_prefix)/bin/clang"
+ -DHIP_OC_COMPILER="$(get_llvm_prefix)/bin/clang"
+ )
+
+ if use test; then
+ mycmakeargs+=(
+ -DMIOPEN_TEST_ALL=ON
+ -DMIOPEN_TEST_GDB=OFF
+ )
+ # needed by rocminfo
+ addpredict /dev/random
+ check_amdgpu
+ fi
+
+ cmake_src_configure
+}
+
+src_test() {
+ check_amdgpu
+ LD_LIBRARY_PATH="${BUILD_DIR}"/lib
MIOPEN_SYSTEM_DB_PATH="${BUILD_DIR}"/share/miopen/db/ cmake_src_test -j1
+}
+
+src_install() {
+ cmake_src_install
+}