1 |
commit: 24acda93ef6607f738666b1e33672fac5143f910 |
2 |
Author: Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com> |
3 |
AuthorDate: Thu May 26 23:55:14 2022 +0000 |
4 |
Commit: Alessandro Barbieri <lssndrbarbieri <AT> gmail <DOT> com> |
5 |
CommitDate: Fri May 27 11:28:07 2022 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=24acda93 |
7 |
|
8 |
sys-cluster/parsec: move parsec's use expand to profiles/desc |
9 |
|
10 |
Signed-off-by: Alessandro Barbieri <lssndrbarbieri <AT> gmail.com> |
11 |
|
12 |
profiles/desc/parsec_debug.desc | 11 ++++ |
13 |
profiles/desc/parsec_dist.desc | 8 +++ |
14 |
profiles/desc/parsec_prof.desc | 18 ++++++ |
15 |
sys-cluster/parsec/metadata.xml | 23 ------- |
16 |
sys-cluster/parsec/parsec-3.0.2012.ebuild | 100 +++++++++++++++--------------- |
17 |
5 files changed, 87 insertions(+), 73 deletions(-) |
18 |
|
19 |
diff --git a/profiles/desc/parsec_debug.desc b/profiles/desc/parsec_debug.desc |
20 |
new file mode 100644 |
21 |
index 000000000..0eb75dccd |
22 |
--- /dev/null |
23 |
+++ b/profiles/desc/parsec_debug.desc |
24 |
@@ -0,0 +1,11 @@ |
25 |
+# Copyright 2022 Gentoo Authors |
26 |
+# Distributed under the terms of the GNU General Public License v2 |
27 |
+ |
28 |
+# This file contains descriptions of PARSEC_DEBUG USE_EXPAND flags. |
29 |
+ |
30 |
+debug-history - Keep a summarized history of critical events in memory that can be dumped in gdb when deadlock occur |
31 |
+debug-mem-addr - Enable the memory access checker |
32 |
+debug-mem-leak - Enable only the memory leak checker |
33 |
+debug-mem-race - Enable the memory thread-race checker |
34 |
+debug-noisier - Enable chatterbox-like verbose debugging (may impact performance) |
35 |
+debug-paranoid - Enable extra paranoid checks (may impact performance) |
36 |
|
37 |
diff --git a/profiles/desc/parsec_dist.desc b/profiles/desc/parsec_dist.desc |
38 |
new file mode 100644 |
39 |
index 000000000..404ed1ed1 |
40 |
--- /dev/null |
41 |
+++ b/profiles/desc/parsec_dist.desc |
42 |
@@ -0,0 +1,8 @@ |
43 |
+# Copyright 2022 Gentoo Authors |
44 |
+# Distributed under the terms of the GNU General Public License v2 |
45 |
+ |
46 |
+# This file contains descriptions of PARSEC_DIST USE_EXPAND flags. |
47 |
+ |
48 |
+collectives - Use optimized asynchronous operations where collective communication pattern is detected |
49 |
+priorities - Favor the communications that unlock the most prioritary tasks |
50 |
+thread - Use an extra thread to progress the data movements |
51 |
|
52 |
diff --git a/profiles/desc/parsec_prof.desc b/profiles/desc/parsec_prof.desc |
53 |
new file mode 100644 |
54 |
index 000000000..c6f71c412 |
55 |
--- /dev/null |
56 |
+++ b/profiles/desc/parsec_prof.desc |
57 |
@@ -0,0 +1,18 @@ |
58 |
+# Copyright 2022 Gentoo Authors |
59 |
+# Distributed under the terms of the GNU General Public License v2 |
60 |
+ |
61 |
+# This file contains descriptions of PARSEC_PROF USE_EXPAND flags. |
62 |
+ |
63 |
+active-arena-set - Enable the profiling of active arena set to track memory usage of parsec handles |
64 |
+btf - Force PaRSEC Binary Tracing Format to be the profiling system |
65 |
+dry-body - Disable calls to the actual bodies, no computation is performed |
66 |
+dry-dep - Disable calls to the actual data transport, remote dependencies are notified, but no data movement takes place |
67 |
+dry-run - Disable calls to the actual bodies and do not move the data between nodes, unfold the dependencies only |
68 |
+grapher - Enable the generation of the dot graph representation during execution |
69 |
+mmap - Use MMAP to create the profile files |
70 |
+otf2 - Force otf2 to be the profiling system |
71 |
+pins - Enable the use of the PaRSEC callback instrumentation system |
72 |
+ptg - Generate Profiling traces for the internal_init tasks in the PTG interface |
73 |
+rusage - Print the rusage per execution unit for each progress |
74 |
+scheduling-events - Enable the tracing of fine-grained scheduling details during execution |
75 |
+prof-tau - Experimental usage of TAU profiling framework |
76 |
|
77 |
diff --git a/sys-cluster/parsec/metadata.xml b/sys-cluster/parsec/metadata.xml |
78 |
index 281014f7a..763617a70 100644 |
79 |
--- a/sys-cluster/parsec/metadata.xml |
80 |
+++ b/sys-cluster/parsec/metadata.xml |
81 |
@@ -21,29 +21,6 @@ The framework includes libraries, a runtime system, and development tools to hel |
82 |
<flag name="home-config-files">Should the runtime check for the parameter configuration file in the user home (\$HOME/.parsec/mca-params.conf)</flag> |
83 |
<!--<flag name="opencl">Enable GPU support using OpenCL kernels</flag>--> |
84 |
<flag name="sched-deps-mask">Use a complete bitmask to track the dependencies, instead of a counter -- increase the debugging features, but limits to a maximum of 30 input dependencies</flag> |
85 |
- <flag name="parsec-debug-history">Keep a summarized history of critical events in memory that can be dumped in gdb when deadlock occur</flag> |
86 |
- <!--<flag name="parsec-debug-mem-addr">Enable the memory access checker</flag>--> |
87 |
- <!--<flag name="parsec-debug-mem-leak">Enable only the memory leak checker</flag>--> |
88 |
- <!--<flag name="parsec-debug-mem-race">Enable the memory thread-race checker</flag>--> |
89 |
- <flag name="parsec-debug-noisier">Enable chatterbox-like verbose debugging (may impact performance)</flag> |
90 |
- <flag name="parsec-debug-paranoid">Enable extra paranoid checks (may impact performance)</flag> |
91 |
- <flag name="parsec-dist-collectives">Use optimized asynchronous operations where collective communication pattern is detected</flag> |
92 |
- <flag name="parsec-dist-priorities">Favor the communications that unlock the most prioritary tasks</flag> |
93 |
- <flag name="parsec-dist-thread">Use an extra thread to progress the data movements</flag> |
94 |
- <flag name="parsec-prof-active-arena-set">Enable the profiling of active arena set to track memory usage of parsec handles</flag> |
95 |
- <flag name="parsec-prof-btf">Force PaRSEC Binary Tracing Format to be the profiling system</flag> |
96 |
- <flag name="parsec-prof-dry-body">Disable calls to the actual bodies, no computation is performed</flag> |
97 |
- <flag name="parsec-prof-dry-dep">Disable calls to the actual data transport, remote dependencies are notified, but no data movement takes place</flag> |
98 |
- <flag name="parsec-prof-dry-run">Disable calls to the actual bodies and do not move the data between nodes, unfold the dependencies only</flag> |
99 |
- <flag name="parsec-prof-grapher">Enable the generation of the dot graph representation during execution</flag> |
100 |
- <flag name="parsec-prof-mmap">Use MMAP to create the profile files</flag> |
101 |
- <flag name="parsec-prof-otf2">Force otf2 to be the profiling system</flag> |
102 |
- <flag name="parsec-prof-pins">Enable the use of the PaRSEC callback instrumentation system</flag> |
103 |
- <flag name="parsec-prof-ptg">Generate Profiling traces for the internal_init tasks in the PTG interface</flag> |
104 |
- <flag name="parsec-prof-rusage">Print the rusage per execution unit for each progress</flag> |
105 |
- <flag name="parsec-prof-scheduling-events">Enable the tracing of fine-grained scheduling details during execution</flag> |
106 |
- <!--<flag name="parsec-prof-tau">Experimental usage of TAU profiling framework</flag>--> |
107 |
- <flag name="parsec-prof-thread">Use a Helper Thread to create the profile files</flag> |
108 |
<flag name="sim">Enable the computation of the critical path, through simulation</flag> |
109 |
<flag name="tools">Build the helper tools such as the pre-compilers, profiling manipulation and so on</flag> |
110 |
</use> |
111 |
|
112 |
diff --git a/sys-cluster/parsec/parsec-3.0.2012.ebuild b/sys-cluster/parsec/parsec-3.0.2012.ebuild |
113 |
index a09891890..24ab099e3 100644 |
114 |
--- a/sys-cluster/parsec/parsec-3.0.2012.ebuild |
115 |
+++ b/sys-cluster/parsec/parsec-3.0.2012.ebuild |
116 |
@@ -18,33 +18,33 @@ SLOT="0" |
117 |
KEYWORDS="~amd64" |
118 |
|
119 |
# next release |
120 |
-# parsec-debug-mem-addr |
121 |
-# parsec-debug-mem-leak |
122 |
-# parsec-debug-mem-race |
123 |
+# parsec_debug_mem-addr |
124 |
+# parsec_debug_mem-leak |
125 |
+# parsec_debug_mem-race |
126 |
IUSE_PARSEC_DEBUG=" |
127 |
- parsec-debug-history |
128 |
- parsec-debug-noisier |
129 |
- parsec-debug-paranoid |
130 |
+ parsec_debug_history |
131 |
+ parsec_debug_noisier |
132 |
+ parsec_debug_paranoid |
133 |
" |
134 |
IUSE_PARSEC_DIST=" |
135 |
- +parsec-dist-collectives |
136 |
- +parsec-dist-priorities |
137 |
- +parsec-dist-thread |
138 |
+ +parsec_dist_collectives |
139 |
+ +parsec_dist_priorities |
140 |
+ +parsec_dist_thread |
141 |
" |
142 |
IUSE_PARSEC_PROF=" |
143 |
- parsec-prof-active-arena-set |
144 |
- parsec-prof-btf |
145 |
- parsec-prof-dry-body |
146 |
- parsec-prof-dry-dep |
147 |
- parsec-prof-dry-run |
148 |
- parsec-prof-grapher |
149 |
- +parsec-prof-mmap |
150 |
- parsec-prof-otf2 |
151 |
- parsec-prof-pins |
152 |
- parsec-prof-ptg |
153 |
- parsec-prof-rusage |
154 |
- parsec-prof-scheduling-events |
155 |
- +parsec-prof-thread |
156 |
+ parsec_prof_active-arena-set |
157 |
+ parsec_prof_btf |
158 |
+ parsec_prof_dry-body |
159 |
+ parsec_prof_dry-dep |
160 |
+ parsec_prof_dry-run |
161 |
+ parsec_prof_grapher |
162 |
+ +parsec_prof_mmap |
163 |
+ parsec_prof_otf2 |
164 |
+ parsec_prof_pins |
165 |
+ parsec_prof_ptg |
166 |
+ parsec_prof_rusage |
167 |
+ parsec_prof_scheduling-events |
168 |
+ +parsec_prof_thread |
169 |
" |
170 |
IUSE="${IUSE_PARSEC_DEBUG} ${IUSE_PARSEC_DIST} ${IUSE_PARSEC_PROF} +cxx debug +devel-headers fortran +home-config-files +mpi profile +sched-deps-mask sim test +tools" |
171 |
|
172 |
@@ -55,8 +55,8 @@ RDEPEND=" |
173 |
sys-cluster/temanejo |
174 |
|
175 |
mpi? ( virtual/mpi ) |
176 |
- parsec-prof-otf2? ( sys-cluster/otf2 ) |
177 |
- parsec-prof-pins? ( dev-libs/papi ) |
178 |
+ parsec_prof_otf2? ( sys-cluster/otf2 ) |
179 |
+ parsec_prof_pins? ( dev-libs/papi ) |
180 |
" |
181 |
DEPEND="${RDEPEND}" |
182 |
BDEPEND=" |
183 |
@@ -67,12 +67,12 @@ BDEPEND=" |
184 |
RESTRICT="!test? ( test )" |
185 |
REQUIRED_USE=" |
186 |
?? ( mpi sim ) |
187 |
- ?? ( parsec-debug-noisier parsec-debug-history ) |
188 |
- ?? ( parsec-prof-dry-body parsec-prof-dry-dep parsec-prof-dry-run ) |
189 |
- ?? ( parsec-prof-btf parsec-prof-otf2 ) |
190 |
+ ?? ( parsec_debug_noisier parsec_debug_history ) |
191 |
+ ?? ( parsec_prof_dry-body parsec_prof_dry-dep parsec_prof_dry-run ) |
192 |
+ ?? ( parsec_prof_btf parsec_prof_otf2 ) |
193 |
" |
194 |
# next release |
195 |
-# ?? ( parsec-debug-mem-addr parsec-debug-mem-leak parsec-debug-mem-race ) |
196 |
+# ?? ( parsec_debug_mem-addr parsec_debug_mem-leak parsec_debug_mem-race ) |
197 |
|
198 |
pkg_setup() { |
199 |
fortran-2_pkg_setup |
200 |
@@ -80,13 +80,13 @@ pkg_setup() { |
201 |
|
202 |
src_configure() { |
203 |
local trace="Auto" |
204 |
- use parsec-prof-btf && trace="PaRSEC Binary Tracing Format" |
205 |
- use parsec-prof-otf2 && trace="OTF2" |
206 |
+ use parsec_prof_btf && trace="PaRSEC Binary Tracing Format" |
207 |
+ use parsec_prof_otf2 && trace="OTF2" |
208 |
|
209 |
# next release |
210 |
-# -DPARSEC_DEBUG_MEM_ADDR=$(usex parsec-debug-mem-addr) |
211 |
-# -DPARSEC_DEBUG_MEM_LEAK=$(usex parsec-debug-mem-leak) |
212 |
-# -DPARSEC_DEBUG_MEM_RACE=$(usex parsec-debug-mem-race) |
213 |
+# -DPARSEC_DEBUG_MEM_ADDR=$(usex parsec_debug_mem-addr) |
214 |
+# -DPARSEC_DEBUG_MEM_LEAK=$(usex parsec_debug_mem-leak) |
215 |
+# -DPARSEC_DEBUG_MEM_RACE=$(usex parsec_debug_mem-race) |
216 |
local mycmakeargs=( |
217 |
-DBUILD_SHARED_LIBS=ON |
218 |
-DPARSEC_GPU_CUDA_ALLOC_PER_TILE=OFF |
219 |
@@ -96,28 +96,28 @@ src_configure() { |
220 |
|
221 |
-DBUILD_TOOLS=$(usex tools) |
222 |
-DPARSEC_DEBUG=$(usex debug) |
223 |
- -DPARSEC_DEBUG_HISTORY=$(usex parsec-debug-history) |
224 |
- -DPARSEC_DEBUG_NOISIER=$(usex parsec-debug-noisier) |
225 |
- -DPARSEC_DEBUG_PARANOID=$(usex parsec-debug-paranoid) |
226 |
- -DPARSEC_DIST_COLLECTIVES=$(usex parsec-dist-collectives) |
227 |
- -DPARSEC_DIST_PRIORITIES=$(usex parsec-dist-priorities) |
228 |
- -DPARSEC_DIST_THREAD=$(usex parsec-dist-thread) |
229 |
+ -DPARSEC_DEBUG_HISTORY=$(usex parsec_debug_history) |
230 |
+ -DPARSEC_DEBUG_NOISIER=$(usex parsec_debug_noisier) |
231 |
+ -DPARSEC_DEBUG_PARANOID=$(usex parsec_debug_paranoid) |
232 |
+ -DPARSEC_DIST_COLLECTIVES=$(usex parsec_dist_collectives) |
233 |
+ -DPARSEC_DIST_PRIORITIES=$(usex parsec_dist_priorities) |
234 |
+ -DPARSEC_DIST_THREAD=$(usex parsec_dist_thread) |
235 |
-DPARSEC_DIST_WITH_MPI=$(usex mpi) |
236 |
-DPARSEC_SCHED_DEPS_MASK=$(usex sched-deps-mask) |
237 |
-DPARSEC_SIM=$(usex sim) |
238 |
- -DPARSEC_PROF_DRY_BODY=$(usex parsec-prof-dry-body) |
239 |
- -DPARSEC_PROF_DRY_DEP=$(usex parsec-prof-dry-dep) |
240 |
- -DPARSEC_PROF_DRY_RUN=$(usex parsec-prof-dry-run) |
241 |
- -DPARSEC_PROF_GRAPHER=$(usex parsec-prof-grapher) |
242 |
- -DPARSEC_PROF_PINS=$(usex parsec-prof-pins) |
243 |
- -DPARSEC_PROF_RUSAGE_EU=$(usex parsec-prof-rusage) |
244 |
+ -DPARSEC_PROF_DRY_BODY=$(usex parsec_prof_dry-body) |
245 |
+ -DPARSEC_PROF_DRY_DEP=$(usex parsec_prof_dry-dep) |
246 |
+ -DPARSEC_PROF_DRY_RUN=$(usex parsec_prof_dry-run) |
247 |
+ -DPARSEC_PROF_GRAPHER=$(usex parsec_prof_grapher) |
248 |
+ -DPARSEC_PROF_PINS=$(usex parsec_prof_pins) |
249 |
+ -DPARSEC_PROF_RUSAGE_EU=$(usex parsec_prof_rusage) |
250 |
-DPARSEC_PROF_TRACE=$(usex profile) |
251 |
- -DPARSEC_PROF_TRACE_ACTIVE_ARENA_SET=$(usex parsec-prof-active-arena-set) |
252 |
- -DPARSEC_PROF_TRACE_PTG_INTERNAL_INIT=$(usex parsec-prof-ptg) |
253 |
- -DPARSEC_PROF_TRACE_SCHEDULING_EVENTS=$(usex parsec-prof-scheduling-events) |
254 |
+ -DPARSEC_PROF_TRACE_ACTIVE_ARENA_SET=$(usex parsec_prof_active-arena-set) |
255 |
+ -DPARSEC_PROF_TRACE_PTG_INTERNAL_INIT=$(usex parsec_prof_ptg) |
256 |
+ -DPARSEC_PROF_TRACE_SCHEDULING_EVENTS=$(usex parsec_prof_scheduling-events) |
257 |
-DPARSEC_PROF_TRACE_SYSTEM="${trace}" |
258 |
- -DPARSEC_PROFILING_USE_HELPER_THREAD=$(usex parsec-prof-thread) |
259 |
- -DPARSEC_PROFILING_USE_MMAP=$(usex parsec-prof-mmap) |
260 |
+ -DPARSEC_PROFILING_USE_HELPER_THREAD=$(usex parsec_prof_thread) |
261 |
+ -DPARSEC_PROFILING_USE_MMAP=$(usex parsec_prof_mmap) |
262 |
-DPARSEC_WANT_HOME_CONFIG_FILES=$(usex home-config-files) |
263 |
-DPARSEC_WITH_DEVEL_HEADERS=$(usex devel-headers) |
264 |
-DSUPPORT_CXX=$(usex cxx) |