commit:     2a816ae3b96eb1f0f95d2bb58ef6470eed0ba9d8
Author:     Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com>
AuthorDate: Thu Jun  2 13:47:41 2022 +0000
Commit:     Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com>
CommitDate: Thu Jun  2 13:50:04 2022 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=2a816ae3

sys-cluster/osu-micro-benchmarks: new package, add 5.9

Signed-off-by: Alessandro Barbieri <lssndrbarbieri <AT> gmail.com>

 sys-cluster/osu-micro-benchmarks/Manifest          |  1 +
 sys-cluster/osu-micro-benchmarks/metadata.xml      | 12 +++
 .../osu-micro-benchmarks-5.9.ebuild                | 86 ++++++++++++++++++++++
 3 files changed, 99 insertions(+)

diff --git a/sys-cluster/osu-micro-benchmarks/Manifest 
b/sys-cluster/osu-micro-benchmarks/Manifest
new file mode 100644
index 000000000..4d46654a7
--- /dev/null
+++ b/sys-cluster/osu-micro-benchmarks/Manifest
@@ -0,0 +1 @@
+DIST osu-micro-benchmarks-5.9.tar.gz 809301 BLAKE2B 
84c3fcfe78817a0ab646a63e74f5b8d140cf318c2cfe1d6a533a063c5b5edbbb80991e97f1295948ab5778e1326c7cd7c3057b56d239d87386f0ae45cbd310d5
 SHA512 
67bc1efedd4eb4a75024c51dd83da46179185171ae9028ca586edb91488600aabe0101a14d4de105517f5fa06ee546b83701034d34d64ad301ad6ea5227dd91d

diff --git a/sys-cluster/osu-micro-benchmarks/metadata.xml 
b/sys-cluster/osu-micro-benchmarks/metadata.xml
new file mode 100644
index 000000000..83a3ae08f
--- /dev/null
+++ b/sys-cluster/osu-micro-benchmarks/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+       <maintainer type="person">
+               <email>[email protected]</email>
+               <name>Alessandro Barbieri</name>
+       </maintainer>
+       <use>
+               <flag name="openshmem">Build OpenSHMEM benchmarks</flag>
+               <flag name="rocm">Enable ROCm extensions</flag>
+       </use>
+</pkgmetadata>

diff --git a/sys-cluster/osu-micro-benchmarks/osu-micro-benchmarks-5.9.ebuild 
b/sys-cluster/osu-micro-benchmarks/osu-micro-benchmarks-5.9.ebuild
new file mode 100644
index 000000000..8171ab726
--- /dev/null
+++ b/sys-cluster/osu-micro-benchmarks/osu-micro-benchmarks-5.9.ebuild
@@ -0,0 +1,86 @@
+# Copyright 2019-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools edo toolchain-funcs
+
+DESCRIPTION="MPI, OPC and many other benchmarks"
+HOMEPAGE="https://mvapich.cse.ohio-state.edu/benchmarks/";
+SRC_URI="https://mvapich.cse.ohio-state.edu/download/mvapich/${P}.tar.gz";
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+IUSE="openshmem rocm"
+
+DEPEND="
+       virtual/mpi
+
+       openshmem? ( sys-cluster/SOS )
+       rocm? ( dev-util/hip )
+"
+RDEPEND="${RDEPEND}"
+
+# TODO: cuda upc++ NCCL
+
+src_prepare() {
+       default
+       eautoreconf
+       edo pushd "${WORKDIR}"
+       edo cp -r "${S}" "${S}_mpi"
+       use openshmem && edo cp -r "${S}" "${S}_oshm"
+}
+
+src_configure() {
+       local myconf=(
+               --disable-cuda
+               --disable-ncclomb
+               --disable-openacc
+               --disable-static
+               --enable-shared
+
+               $(use_enable rocm)
+       )
+
+       CC="$(tc-getCC)" CXX="$(tc-getCXX)" econf "${myconf[@]}"
+
+       edo pushd "${S}_mpi"
+       CC=mpicc CXX=mpicxx econf "${myconf[@]}"
+       edo popd
+
+       if use openshmem; then
+               edo pushd "${S}_oshm"
+               CC=oshcc CXX=oshc++ econf "${myconf[@]}"
+               edo popd
+       fi
+}
+
+src_compile() {
+       CC="$(tc-getCC)" CXX="$(tc-getCXX)" default
+
+       edo pushd "${S}_mpi"
+       CC=mpicc CXX=mpicxx default
+       edo popd
+
+       if use openshmem; then
+               edo pushd "${S}_oshm"
+               CC=oshcc CXX=oshc++ default
+               edo popd
+       fi
+}
+
+src_install() {
+       default
+
+       edo pushd "${S}_mpi"
+       default
+       edo popd
+
+       if use openshmem; then
+               edo pushd "${S}_oshm"
+               default
+               edo popd
+       fi
+}

Reply via email to