Gentoo Archives: gentoo-commits

From: Florian Schmaus <flow@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/proj/guru:master commit in: sys-cluster/osu-micro-benchmarks/
Date: Fri, 03 Jun 2022 10:44:42
Message-Id: 1654177804.2a816ae3b96eb1f0f95d2bb58ef6470eed0ba9d8.flow@gentoo
1 commit: 2a816ae3b96eb1f0f95d2bb58ef6470eed0ba9d8
2 Author: Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com>
3 AuthorDate: Thu Jun 2 13:47:41 2022 +0000
4 Commit: Florian Schmaus <flow <AT> gentoo <DOT> org>
5 CommitDate: Thu Jun 2 13:50:04 2022 +0000
6 URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=2a816ae3
7
8 sys-cluster/osu-micro-benchmarks: new package, add 5.9
9
10 Signed-off-by: Alessandro Barbieri <lssndrbarbieri <AT> gmail.com>
11
12 sys-cluster/osu-micro-benchmarks/Manifest | 1 +
13 sys-cluster/osu-micro-benchmarks/metadata.xml | 12 +++
14 .../osu-micro-benchmarks-5.9.ebuild | 86 ++++++++++++++++++++++
15 3 files changed, 99 insertions(+)
16
17 diff --git a/sys-cluster/osu-micro-benchmarks/Manifest b/sys-cluster/osu-micro-benchmarks/Manifest
18 new file mode 100644
19 index 000000000..4d46654a7
20 --- /dev/null
21 +++ b/sys-cluster/osu-micro-benchmarks/Manifest
22 @@ -0,0 +1 @@
23 +DIST osu-micro-benchmarks-5.9.tar.gz 809301 BLAKE2B 84c3fcfe78817a0ab646a63e74f5b8d140cf318c2cfe1d6a533a063c5b5edbbb80991e97f1295948ab5778e1326c7cd7c3057b56d239d87386f0ae45cbd310d5 SHA512 67bc1efedd4eb4a75024c51dd83da46179185171ae9028ca586edb91488600aabe0101a14d4de105517f5fa06ee546b83701034d34d64ad301ad6ea5227dd91d
24
25 diff --git a/sys-cluster/osu-micro-benchmarks/metadata.xml b/sys-cluster/osu-micro-benchmarks/metadata.xml
26 new file mode 100644
27 index 000000000..83a3ae08f
28 --- /dev/null
29 +++ b/sys-cluster/osu-micro-benchmarks/metadata.xml
30 @@ -0,0 +1,12 @@
31 +<?xml version="1.0" encoding="UTF-8"?>
32 +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
33 +<pkgmetadata>
34 + <maintainer type="person">
35 + <email>lssndrbarbieri@×××××.com</email>
36 + <name>Alessandro Barbieri</name>
37 + </maintainer>
38 + <use>
39 + <flag name="openshmem">Build OpenSHMEM benchmarks</flag>
40 + <flag name="rocm">Enable ROCm extensions</flag>
41 + </use>
42 +</pkgmetadata>
43
44 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
45 new file mode 100644
46 index 000000000..8171ab726
47 --- /dev/null
48 +++ b/sys-cluster/osu-micro-benchmarks/osu-micro-benchmarks-5.9.ebuild
49 @@ -0,0 +1,86 @@
50 +# Copyright 2019-2022 Gentoo Authors
51 +# Distributed under the terms of the GNU General Public License v2
52 +
53 +EAPI=8
54 +
55 +inherit autotools edo toolchain-funcs
56 +
57 +DESCRIPTION="MPI, OPC and many other benchmarks"
58 +HOMEPAGE="https://mvapich.cse.ohio-state.edu/benchmarks/"
59 +SRC_URI="https://mvapich.cse.ohio-state.edu/download/mvapich/${P}.tar.gz"
60 +
61 +LICENSE="BSD"
62 +SLOT="0"
63 +KEYWORDS="~amd64"
64 +
65 +IUSE="openshmem rocm"
66 +
67 +DEPEND="
68 + virtual/mpi
69 +
70 + openshmem? ( sys-cluster/SOS )
71 + rocm? ( dev-util/hip )
72 +"
73 +RDEPEND="${RDEPEND}"
74 +
75 +# TODO: cuda upc++ NCCL
76 +
77 +src_prepare() {
78 + default
79 + eautoreconf
80 + edo pushd "${WORKDIR}"
81 + edo cp -r "${S}" "${S}_mpi"
82 + use openshmem && edo cp -r "${S}" "${S}_oshm"
83 +}
84 +
85 +src_configure() {
86 + local myconf=(
87 + --disable-cuda
88 + --disable-ncclomb
89 + --disable-openacc
90 + --disable-static
91 + --enable-shared
92 +
93 + $(use_enable rocm)
94 + )
95 +
96 + CC="$(tc-getCC)" CXX="$(tc-getCXX)" econf "${myconf[@]}"
97 +
98 + edo pushd "${S}_mpi"
99 + CC=mpicc CXX=mpicxx econf "${myconf[@]}"
100 + edo popd
101 +
102 + if use openshmem; then
103 + edo pushd "${S}_oshm"
104 + CC=oshcc CXX=oshc++ econf "${myconf[@]}"
105 + edo popd
106 + fi
107 +}
108 +
109 +src_compile() {
110 + CC="$(tc-getCC)" CXX="$(tc-getCXX)" default
111 +
112 + edo pushd "${S}_mpi"
113 + CC=mpicc CXX=mpicxx default
114 + edo popd
115 +
116 + if use openshmem; then
117 + edo pushd "${S}_oshm"
118 + CC=oshcc CXX=oshc++ default
119 + edo popd
120 + fi
121 +}
122 +
123 +src_install() {
124 + default
125 +
126 + edo pushd "${S}_mpi"
127 + default
128 + edo popd
129 +
130 + if use openshmem; then
131 + edo pushd "${S}_oshm"
132 + default
133 + edo popd
134 + fi
135 +}