mirror of
https://github.com/gentoo-mirror/guru.git
synced 2026-07-16 02:23:16 -04:00
sys-cluster/extrae: add memkind and spectral
Signed-off-by: Alessandro Barbieri <lssndrbarbieri@gmail.com>
This commit is contained in:
@@ -3,7 +3,7 @@
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( pypy3 python3_{8,9} )
|
||||
PYTHON_COMPAT=( pypy3 python3_{8..10} )
|
||||
|
||||
inherit autotools java-pkg-opt-2 python-single-r1
|
||||
|
||||
@@ -14,25 +14,22 @@ SRC_URI="https://github.com/bsc-performance-tools/extrae/archive/${PV}.tar.gz ->
|
||||
LICENSE="LGPL-2.1"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64"
|
||||
IUSE="boost clustering doc dwarf elf fft heterogeneous inotify +instrument-dynamic-memory +instrument-io +instrument-syscall merge-in-trace nanos opencl openmp +parallel-merge pebs-sampling +posix-clock pthread sampling +single-mpi-lib sionlib smpss +xml"
|
||||
IUSE="boost clustering doc dwarf elf heterogeneous inotify +instrument-dynamic-memory
|
||||
+instrument-io +instrument-syscall memkind merge-in-trace nanos opencl openmp +parallel-merge
|
||||
pebs-sampling +posix-clock pthread sampling +single-mpi-lib sionlib smpss spectral +xml"
|
||||
|
||||
#aspectj and aspectj-weaver need to both be enabled at the same time
|
||||
#current dev-java/aspectj package only provides aspectj.jar
|
||||
#aspectj needs foo/lib/aspectj.jar and foo/bin/ajc
|
||||
#aspectj-weaver needs bar/aspectjweaver.jar
|
||||
#TODO: find out who is pulling in libpfm
|
||||
#TODO: find out which FFT library is used
|
||||
#TODO: remove some useflags (boost fft elf dwarf)
|
||||
#TODO: pmapi online dyninst cuda spectral cupti openshmem gm mx synapse memkind aspectj
|
||||
#TODO: remove some useflags (boost elf dwarf)
|
||||
#TODO: pmapi online dyninst cuda cupti openshmem gm mx synapse aspectj
|
||||
#TODO: support llvm libunwind, llvm rt, elftoolchain
|
||||
|
||||
CDEPEND="
|
||||
${PYTHON_DEPS}
|
||||
app-arch/xz-utils
|
||||
dev-libs/icu
|
||||
dev-libs/libpfm
|
||||
dev-libs/libxml2
|
||||
dev-libs/papi
|
||||
sys-apps/hwloc
|
||||
!<sys-cluster/openmpi-4.0.5-r1
|
||||
!>=sys-cluster/openmpi-4.0.5-r1[libompitrace]
|
||||
sys-libs/zlib
|
||||
@@ -46,8 +43,13 @@ CDEPEND="
|
||||
dwarf? ( dev-libs/libdwarf )
|
||||
elf? ( virtual/libelf )
|
||||
inotify? ( dev-libs/libevent )
|
||||
memkind? ( dev-libs/memkind )
|
||||
opencl? ( dev-util/opencl-headers )
|
||||
sionlib? ( sys-cluster/sionlib:= )
|
||||
spectral? (
|
||||
sci-libs/fftw
|
||||
sys-cluster/spectral
|
||||
)
|
||||
"
|
||||
# aspectj? ( >=dev-java/aspectj-1.9.6 )
|
||||
DEPEND="
|
||||
@@ -75,7 +77,6 @@ REQUIRED_USE="
|
||||
# dyninst? ( boost dwarf elf )
|
||||
# online? ( synapse )
|
||||
# aspectj? ( java )
|
||||
# spectral? ( fft )
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
@@ -105,9 +106,7 @@ src_configure() {
|
||||
|
||||
--without-dyninst
|
||||
--without-cupti
|
||||
--without-memkind
|
||||
--without-synapse
|
||||
--without-spectral
|
||||
--without-openshmem
|
||||
--without-gm
|
||||
--without-mx
|
||||
@@ -159,21 +158,28 @@ src_configure() {
|
||||
else
|
||||
myconf+=( "--without-elf" )
|
||||
fi
|
||||
if use fft; then
|
||||
myconf+=( "--with-fft=${EPREFIX}/usr" )
|
||||
else
|
||||
myconf+=( "--without-fft" )
|
||||
fi
|
||||
if use java; then
|
||||
myconf+=( "--with-java-jdk=$(java-config -O)" )
|
||||
else
|
||||
myconf+=( "--without-java-jdk" )
|
||||
fi
|
||||
if use memkind; then
|
||||
myconf+=( "--with-memkind=${EPREFIX}/usr" )
|
||||
else
|
||||
myconf+=( "--without-memkind" )
|
||||
fi
|
||||
if use opencl; then
|
||||
myconf+=( "--with-opencl=${EPREFIX}/usr" )
|
||||
else
|
||||
myconf+=( "--without-opencl" )
|
||||
fi
|
||||
if use spectral; then
|
||||
myconf+=( "--with-fft=${EPREFIX}/usr" )
|
||||
myconf+=( "--with-spectral=${EPREFIX}/usr" )
|
||||
else
|
||||
myconf+=( "--without-fft" )
|
||||
myconf+=( "--without-spectral" )
|
||||
fi
|
||||
|
||||
use sionlib && myconf+=( "--with-sionlib=${EPREFIX}/usr" )
|
||||
|
||||
@@ -25,7 +25,6 @@ process). Extrae generates trace files that can be later visualized with sys-clu
|
||||
<flag name="dwarf">Build with <pkg>dev-libs/libdwarf</pkg></flag>
|
||||
<!--<flag name="dyninst">Build with dyninst</flag>-->
|
||||
<flag name="elf">Build with <pkg>virtual/libelf</pkg></flag>
|
||||
<flag name="fft">Search for FFT package (which?)</flag>
|
||||
<flag name="heterogeneous">Enable support for heterogeneous tracing</flag>
|
||||
<flag name="inotify">Enable inotify support</flag>
|
||||
<flag name="instrument-dynamic-memory">Enables instrumentation for dynamic memory (malloc, free, realloc) calls</flag>
|
||||
@@ -43,7 +42,7 @@ process). Extrae generates trace files that can be later visualized with sys-clu
|
||||
<flag name="posix-clock">Use POSIX clock (clock_gettime call) instead of low level timing routines. Use this option if the system where you install the instrumentation package modifies the frequency of its processors at runtime.</flag>
|
||||
<flag name="pthread">Enable support for tracing pthread library</flag>
|
||||
<flag name="sampling">Enable PAPI sampling support</flag>
|
||||
<!--<flag name="spectral">This package enables support for on-line spectral analysis.</flag>-->
|
||||
<flag name="spectral">This package enables support for on-line spectral analysis.</flag>
|
||||
<flag name="single-mpi-lib">Produces a single instrumentation library for MPI that contains both Fortran and C wrappers. Applications that call the MPI library from both C and Fortran languages need this flag to be enabled.</flag>
|
||||
<flag name="sionlib">Enable support for <pkg>sys-cluster/sionlib</pkg></flag>
|
||||
<flag name="smpss">Enable support for tracing SMP-superscalar</flag>
|
||||
|
||||
Reference in New Issue
Block a user