summaryrefslogtreecommitdiff
path: root/sci-libs/rocRAND
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-11-19 17:06:50 +0000
committerV3n3RiX <venerix@koprulu.sector>2023-11-19 17:06:50 +0000
commit5a31d854eec302fd1efb1466af757e520ae4e1dc (patch)
tree58a9a7036a479519c2b853ff7646e69d1c6a2339 /sci-libs/rocRAND
parent8c58ead574346296889d58006e1bf184da00be3a (diff)
gentoo auto-resync : 19:11:2023 - 17:06:49
Diffstat (limited to 'sci-libs/rocRAND')
-rw-r--r--sci-libs/rocRAND/Manifest5
-rw-r--r--sci-libs/rocRAND/files/rocRAND-5.7.1_fix_generator_alignment.patch16
-rw-r--r--sci-libs/rocRAND/rocRAND-5.6.0-r1.ebuild (renamed from sci-libs/rocRAND/rocRAND-5.6.0.ebuild)7
-rw-r--r--sci-libs/rocRAND/rocRAND-5.7.1.ebuild68
4 files changed, 92 insertions, 4 deletions
diff --git a/sci-libs/rocRAND/Manifest b/sci-libs/rocRAND/Manifest
index 3eb2d8794622..884807de9cb5 100644
--- a/sci-libs/rocRAND/Manifest
+++ b/sci-libs/rocRAND/Manifest
@@ -1,9 +1,12 @@
AUX rocRAND-5.1.3_no-symlink.patch 1373 BLAKE2B a2909cb5c012c8a1b47ba543f2624195b6817fc1458c67a285994f379615698e36f52420868aacad7c9033e25072fb0f126f852a4285c768250387aadefbadcc SHA512 d055d5598e2e83846ff0383021b6107ab8762803744da588669ecc4f40b5b6fedec8598d39cd2626e6f9556be4292bad3b6263936746efb461f79e651a4aaae9
AUX rocRAND-5.1.3_stdint-gcc13.patch 1025 BLAKE2B 96e4600eb83bb407c4590084a9cb3464dbeafc070584a40cd94ebd9c67d96b1a0cc5261ab0a7e0cc79f3f14d4af280dcbf320bbc857a6850cd581fbcf7a78688 SHA512 4711fc79ebc9c90db4213c729462a9d622e3eb81b000b1e432702151bb0a56cf693996b28037231d5f968020ec4be1fdb6f99a167a470ecb1253ad7799826b67
AUX rocRAND-5.4.2_stdint-gcc13.patch 2025 BLAKE2B 373fcb39a4a10505ded1b97e1afde7191fcb94f56b34c6f0134a48199f038439a9911a9b5f8116b5051d331c765b96be7ffa2569892eec9312c3263ba547cdc7 SHA512 8d6cb0da359b27afdfe411fe84a7f6443e20c92753b825348932a407cffc24f8f4f239436ad1ed21966ec5cf4657c4033c821eae440f15737b63bed187023f15
+AUX rocRAND-5.7.1_fix_generator_alignment.patch 622 BLAKE2B 53443aaca64c848864233f443bf4e89c1ab0231ba7071e5b628b0b51bd144c720ea3a801acf449a3410f81bbe6d5f28450d2046b53472ef74307b54077dcc4bd SHA512 368e76a0223e50196727547ca4fad51404e38ec191adb4b39cb7b066c24a28d2c8bfb970e7ffc1cb1b5347bbbddc2014b729c4e66110865a98b0b01fad797aa3
DIST hipRAND-de941a7eb9ede2a862d719cd3ca23234a3692d07.tar.gz 80820 BLAKE2B f2894187455cf1da70c486e9efc336a01dc53589c56afe994858b2344c1e74e8d35260f70ad9cd80c5da1103dd9e98da6f5f2bf8e1ddf97023effc8a434a76ce SHA512 cdc70799ddca456c37c2a65875b98acff74800aa2b4f28d77b27c38c32428dd5edb2837bf88bfb6fcc32bdae7f2b27f1b547831bad98101b04959b7ba6b74a85
DIST rocRAND-5.1.3.tar.gz 11729425 BLAKE2B f61aaedb7b72ceba3868a2069c93db1e2cd88a7a0188a9d5a33f520af3b42235c0dca62495460fd5e7abbca5fe7acc01acfdc90e53ae9a6e45128df5da472f49 SHA512 12859e52b79e40fcd1fb97d0915c191bbbc24e31e00aac4dbeecb625f9978a00ece3d7a42d0f9d37516031c1fbeb66e14dcd476ea83fe32fb13e0dd5c3964a28
DIST rocRAND-5.6.0.tar.gz 23189913 BLAKE2B 2418a90c323f483d1f92630df7134bc060b9052f580259924e79680a7ec37857574973dda69dc3c28fdd5b88a5fc1d29757ed637fcde0730c53b9a5f09668aba SHA512 cccd26a6b80a7705644803a85dad3a43de3f4e2f73f964f2b5aa410f71d3782b68d6cc1ad60b7f7be5193a94098ed3fa25cad30c3acbc141522cdd738d3328a5
+DIST rocRAND-5.7.1.tar.gz 23189653 BLAKE2B c70ab6f3b718c2430394f63b93bee15fa72daae704883fdb203b98b0dc4763b46bc27886af64c48bf4ebe8da9b919158b8cd346f70f9b76bf0492ce3b2c1e20e SHA512 4d74bce9fbd3cb45e3f057d38df747270c6986fea7ad524f7a88109b6a53a4ea5dcd60d4bbf2364888501e9444245fb6898bb79fccad0e37b61e819e8c4ed863
EBUILD rocRAND-5.1.3.ebuild 1980 BLAKE2B 6280751e595cade52a2087da1080064cb5a827edc91a5679e1a3252f1dbe3f7ec35dc7f72d3a949c88c95fc44a18d054087b3d59b4d58614f9248045f59bf750 SHA512 2b788497096c4bd1ed83653d7bef0d73f362264f9cde01d421d1c12741fb397a1e96eb5fbbd84b13a55892e0538bb1648518fcaa4996774aa48acd20429df6d6
-EBUILD rocRAND-5.6.0.ebuild 1341 BLAKE2B 129b0f1175e2a9a4f0159241269c034d9b1a4a9f5f5700848177b3f5f68edce2301b08d7173eeac37cbca4ec0c8d4c81eb0c9cd3d2a6f7ecabb37e67956dcd03 SHA512 579522efd4bdb20cfce44b0321b9052b541300f47846ea4891bdc274ae8704a4f0f8cbb7599c0c090b5cc6033d79becc33da0dc8cbe8114e89755db1dae2566a
+EBUILD rocRAND-5.6.0-r1.ebuild 1378 BLAKE2B b4f7ef2752de7fa928f9c0780603c0abad603db77cec00576e199b78705916dda3c79ce68813045d75c3d2416b193e6606215b82cf16953429c1caaac6d1f603 SHA512 90084013a44252aaa18be3ecfd18b8f91f2cc57b20db82e73719d596a8da081746f03095131d3cce4893bd457505816ef06c0ceb77f2b452973eb9c0828b6d36
+EBUILD rocRAND-5.7.1.ebuild 1509 BLAKE2B b0e8bdbb5c29ace0b0eff7154c5121267ef3ff9f1bc335b0f43cf658bf0dbe0a7af9736d1ab2bc3838957b236ae0dba347755d90076511213ac1ed9f9188d3ea SHA512 d1fb39764616b269b8199a8a8eea9d154de5df10b8cf2b9222d5608f8ce1b34010cfa063b7e88064061f5094d5f0848669a5bc9218624307e9800e837d6f5695
MISC metadata.xml 583 BLAKE2B 5713db2187eb2c1c8f40e9f9774215a880b67ad90ffe943f66724619b90cff92ccc06e09e1f6d7092e4d6e374cd26300ca13c8654a3f2ca2cc65d796356b5a42 SHA512 a42e669f1ce6ed3a83a8648f7c43a85cc1223c2bf73fe14e2e06df5c6573dfa55751198b374f151ed36e75ada831406654d7f3d8429e3e05c14036e26057608c
diff --git a/sci-libs/rocRAND/files/rocRAND-5.7.1_fix_generator_alignment.patch b/sci-libs/rocRAND/files/rocRAND-5.7.1_fix_generator_alignment.patch
new file mode 100644
index 000000000000..84b58266220c
--- /dev/null
+++ b/sci-libs/rocRAND/files/rocRAND-5.7.1_fix_generator_alignment.patch
@@ -0,0 +1,16 @@
+Fix crashes due to unaligned allocations in heap with new of structs when AVX2 or AVX512 is used.
+This patch takes the simplest approach just shifts responsibility to the standard.
+Similar approach in Eigen is named defined as: EIGEN_HAS_CXX17_OVERALIGN.
+
+Upstream bug: https://github.com/ROCmSoftwarePlatform/rocRAND/issues/403
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -119,7 +119,7 @@ endif()
+ option(DISABLE_WERROR "Disable building with Werror" ON)
+
+ # Build CXX flags
+-set(CMAKE_CXX_STANDARD 11)
++set(CMAKE_CXX_STANDARD 17)
+ set(CMAKE_CXX_STANDARD_REQUIRED ON)
+ set(CMAKE_CXX_EXTENSIONS OFF)
+ if(DISABLE_WERROR)
diff --git a/sci-libs/rocRAND/rocRAND-5.6.0.ebuild b/sci-libs/rocRAND/rocRAND-5.6.0-r1.ebuild
index b7b4ac7cc950..29a49e44991e 100644
--- a/sci-libs/rocRAND/rocRAND-5.6.0.ebuild
+++ b/sci-libs/rocRAND/rocRAND-5.6.0-r1.ebuild
@@ -22,10 +22,11 @@ PATCHES=( "${FILESDIR}"/${PN}-5.4.2_stdint-gcc13.patch )
RDEPEND="dev-util/hip"
DEPEND="${RDEPEND}
-dev-util/rocm-cmake
-test? ( dev-cpp/gtest )"
+ dev-util/rocm-cmake
+ benchmark? ( dev-cpp/benchmark )
+ test? ( dev-cpp/gtest )"
BDEPEND="dev-util/rocm-cmake
->=dev-util/cmake-3.22"
+ >=dev-util/cmake-3.22"
S="${WORKDIR}/rocRAND-rocm-${PV}"
diff --git a/sci-libs/rocRAND/rocRAND-5.7.1.ebuild b/sci-libs/rocRAND/rocRAND-5.7.1.ebuild
new file mode 100644
index 000000000000..2a55cae507fe
--- /dev/null
+++ b/sci-libs/rocRAND/rocRAND-5.7.1.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+ROCM_VERSION=${PV}
+
+inherit cmake rocm
+
+DESCRIPTION="Generate pseudo-random and quasi-random numbers"
+HOMEPAGE="https://github.com/ROCmSoftwarePlatform/rocRAND"
+SRC_URI="https://github.com/ROCmSoftwarePlatform/${PN}/archive/rocm-${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+KEYWORDS="~amd64"
+SLOT="0/$(ver_cut 1-2)"
+IUSE="benchmark test"
+REQUIRED_USE="${ROCM_REQUIRED_USE}"
+
+RESTRICT="!test? ( test )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-5.4.2_stdint-gcc13.patch
+ "${FILESDIR}"/${PN}-5.7.1_fix_generator_alignment.patch
+)
+
+RDEPEND="dev-util/hip"
+DEPEND="${RDEPEND}
+ dev-util/rocm-cmake
+ benchmark? ( dev-cpp/benchmark )
+ test? ( dev-cpp/gtest )"
+BDEPEND="dev-util/rocm-cmake
+ >=dev-util/cmake-3.22"
+
+S="${WORKDIR}/rocRAND-rocm-${PV}"
+
+src_configure() {
+ addpredict /dev/kfd
+ addpredict /dev/dri/
+
+ local mycmakeargs=(
+ -DCMAKE_SKIP_RPATH=ON
+ -DAMDGPU_TARGETS="$(get_amdgpu_flags)"
+ -DBUILD_HIPRAND=OFF
+ -DBUILD_FILE_REORG_BACKWARD_COMPATIBILITY=OFF
+ -DROCM_SYMLINK_LIBS=OFF
+ -DBUILD_TEST=$(usex test ON OFF)
+ -DBUILD_BENCHMARK=$(usex benchmark ON OFF)
+ )
+
+ CXX=hipcc cmake_src_configure
+}
+
+src_test() {
+ check_amdgpu
+ export LD_LIBRARY_PATH="${BUILD_DIR}/library"
+ # uses HMM to fit tests to default <512M iGPU VRAM
+ MAKEOPTS="-j1" ROCRAND_USE_HMM="1" cmake_src_test
+}
+
+src_install() {
+ cmake_src_install
+
+ if use benchmark; then
+ cd "${BUILD_DIR}"/benchmark
+ dobin benchmark_rocrand_*
+ fi
+}