Репозиторий Sisyphus
Последнее обновление: 1 октября 2023 | Пакетов: 18631 | Посещений: 37550411
en ru br
Репозитории ALT

Группа :: Development/Tools
Пакет: mpip

 Главная   Изменения   Спек   Патчи   Sources   Загрузить   Gear   Bugs and FR  Repocop 

%define mpiimpl openmpi
%define mpidir %_libexecdir/%mpiimpl
%ifarch %ix86
%define barch IA32
%endif
%ifarch x86_64
%define barch X86_64
%endif

Name: mpip
Version: 3.1.2
Release: alt2
Summary: Lightweight profiling library for MPI applications
License: BSD
Group: Development/Tools
Url: http://mpip.sourceforge.net/
Packager: Eugeny A. Rostovtsev (REAL) <real at altlinux.org>

Source: http://mpip.svn.sourceforge.net/viewvc/mpip.tar.gz
Source1: farg.f

BuildPreReq: openmpi-devel-static libbfd-devel-static libunwind-devel
BuildPreReq: libiberty-devel gcc-fortran libgfortran-devel-static
BuildPreReq: python%__python_version(copy)

%description
mpiP is a lightweight profiling library for MPI applications. Because
it only collects statistical information about MPI functions, mpiP
generates considerably less overhead and much less data than tracing
tools. All the information captured by mpiP is task-local. It only uses
communication during report generation, typically at the end of the
experiment, to merge results from all of the tasks into one output
file.

To learn more about performance analysis with mpiP, see Vetter, J.S.
and M.O. McCracken, "Statistical Scalability Analysis of Communication
Operations in Distributed Applications," Proc. ACM SIGPLAN Symp. on
Principles and Practice of Parallel Programming (PPOPP), 2001.

%package -n lib%name-devel
Summary: Static development files of mpiP (MPI profiling library)
Group: Development/Other
Requires: %name = %version-%release

%description -n lib%name-devel
mpiP is a lightweight profiling library for MPI applications. Because
it only collects statistical information about MPI functions, mpiP
generates considerably less overhead and much less data than tracing
tools. All the information captured by mpiP is task-local. It only uses
communication during report generation, typically at the end of the
experiment, to merge results from all of the tasks into one output
file.

This package contains static development files of mpiP.

%package -n libfarg-devel
Summary: Fortran command line arguments library for MPI applications
Group: Development/Other

%description -n libfarg-devel
This small library provides fortran functions `f__xargc' and `f__xargv'
needed for some MPI applications.

%prep
%setup
install -m644 %SOURCE1 .

%build
mpi-selector --set %mpiimpl
source %_sysconfdir/profile.d/mpi-selector.sh
source %mpidir/bin/mpivars.sh

f77 -fno-underscoring -c farg.f
ar r libfarg.a farg.o
ranlib libfarg.a

%configure \
--enable-fortranweak \
--enable-bfd \
--enable-getarg \
--with-include=-I%mpidir/include \
--with-ldflags=-L%mpidir/lib \
--with-libs="-lmpi -lmpi_f77 -lgfortran -Wl,-R%mpidir/lib" \
--with-binutils-dir=%prefix \
--with-libunwind=%prefix \
--with-wtime \
--enable-stackdepth=16

%make _ARCH=%barch OS=Linux all

%install
install -d %buildroot%_bindir
install -d %buildroot%_libdir
install -d %buildroot%_includedir/mpip_timers

mkdir exe
mv testing/*.exe exe/
pushd exe
for i in $(ls|sed -e 's/\.exe//'); do
mv $i.exe $i.mpip
done
install -m755 * %buildroot%_bindir
popd
install -m644 *.a %buildroot%_libdir
install -m644 *.h %buildroot%_includedir
install -m644 mpip_timers/linux_posix.h %buildroot%_includedir/mpip_timers

%files
%doc doc/*
%_bindir/*

%files -n lib%name-devel
%_libdir/*
%exclude %_libdir/libfarg.a
%_includedir/*

%files -n libfarg-devel
%doc farg.f
%_libdir/libfarg.a

%changelog

Полный changelog можно просмотреть здесь

 
дизайн и разработка: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
текущий майнтейнер: Michael Shigorin