Bug 1340473 - Review Request: mvapich2 - MPI implementation for InfiniBand, iWARP and RoCE
Summary: Review Request: mvapich2 - MPI implementation for InfiniBand, iWARP and RoCE
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Honggang LI
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: 1315609
TreeView+ depends on / blocked
 
Reported: 2016-05-27 13:41 UTC by Michal Schmidt
Modified: 2019-01-15 07:58 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2019-01-15 07:58:09 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Michal Schmidt 2016-05-27 13:41:11 UTC
Spec URL: https://michich.fedorapeople.org/mvapich2/mvapich2.spec
SRPM URL: https://michich.fedorapeople.org/mvapich2/mvapich2-2.2-0.1.rc1.fc25.src.rpm
Description:
MVAPICH2 is a Message Passing Interface (MPI 3.0) implementation based on MPICH
and developed by Ohio State University. It supports InfiniBand, iWARP, RoCE.
Fedora Account System Username: michich

Comment 1 Michal Schmidt 2016-05-27 13:45:05 UTC
Scratch build:
https://koji.fedoraproject.org/koji/taskinfo?taskID=14275794

Comment 2 Honggang LI 2016-08-03 02:38:27 UTC
Hi, Michal

Issue 1:
Please provide justifies for bundle libraries: hydra, openpa, romio, mpl.


Issue 2:
mvapich2.spec line 52, please replace 'MPI 3.0' with 'MPI 3.1'.


Issue 3:
Please install mvapich2-2.2rc1/www/index.html into /usr/share/doc/mvapich2 . It is missing now.


Issue 4:
Please install/package up these files, 'README.envvar', 'CHANGES', 'CHANGELOG', and 'RELEASE_NOTES' into mvapich2-doc subpackage. Especially, the 'README.envvar' file includes mvapich2 environment parameters, it is very important for mvapich2 performance tuning.


Issue 5:
mvapich2-devel subpackage MUST require gcc-c++ and gcc. The gcc package may be available for most machine used for coding/compiling. However, the gcc-c++ is not. I can't compile mvapich2 example program in C++ after install the mvapich2 rpm packages because gcc-c++ is missing.



Issue 6:
Please check why mvapich2 fortran module files are missing.
[root@rdma-dev-03 ~]$ ls /usr/lib64/gfortran/modules/*
/usr/lib64/gfortran/modules/mpich:
mpi_base.mod  mpi_constants.mod  mpi.mod  mpi_sizeofs.mod

/usr/lib64/gfortran/modules/mvapich2:

/usr/lib64/gfortran/modules/openmpi:
mpi_ext.mod            mpi_f08_interfaces_callbacks.mod  mpi_f08_types.mod
mpi_f08_callbacks.mod  mpi_f08_interfaces.mod            mpi.mod
mpi_f08_ext.mod        mpi_f08.mod                       pmpi_f08_interfaces.mod


Issue 7:
I know you had setup '--enable-wrapper-rpath=no' for configure. However, it seems something is wrong. You may need chrpath to fix "binary-or-shlib-defines-rpath" issue.

mvapich2.x86_64: E: binary-or-shlib-defines-rpath /usr/lib64/mvapich2/bin/mpivars ['/lib']
mvapich2.x86_64: E: binary-or-shlib-defines-rpath /usr/lib64/mvapich2/bin/mpirun_rsh ['/lib']
mvapich2.x86_64: E: binary-or-shlib-defines-rpath /usr/lib64/mvapich2/bin/mpiname ['/lib']
mvapich2.x86_64: E: binary-or-shlib-defines-rpath /usr/lib64/mvapich2/lib/libmpicxx.so.12.0.5 ['/lib']
mvapich2.x86_64: E: binary-or-shlib-defines-rpath /usr/lib64/mvapich2/bin/mpispawn ['/lib']
mvapich2.x86_64: E: binary-or-shlib-defines-rpath /usr/lib64/mvapich2/lib/libmpifort.so.12.0.5 ['/lib']
mvapich2.x86_64: E: binary-or-shlib-defines-rpath /usr/lib64/mvapich2/bin/mpiexec.mpirun_rsh ['/lib']
mvapich2.x86_64: E: binary-or-shlib-defines-rpath /usr/lib64/mvapich2/bin/mpichversion ['/lib']
mvapich2.x86_64: E: binary-or-shlib-defines-rpath /usr/lib64/mvapich2/lib/libmpi.so.12.0.5 ['/lib']
mvapich2.x86_64: E: binary-or-shlib-defines-rpath /usr/lib64/mvapich2/lib/libmpifort.so.12.0.5 ['/lib']
mvapich2.x86_64: E: binary-or-shlib-defines-rpath /usr/lib64/mvapich2/bin/mpispawn ['/lib']
mvapich2.x86_64: E: binary-or-shlib-defines-rpath /usr/lib64/mvapich2/lib/libmpi.so.12.0.5 ['/lib']
mvapich2.x86_64: E: binary-or-shlib-defines-rpath /usr/lib64/mvapich2/bin/mpichversion ['/lib']
mvapich2.x86_64: E: binary-or-shlib-defines-rpath /usr/lib64/mvapich2/bin/mpiexec.mpirun_rsh ['/lib']
mvapich2.x86_64: E: binary-or-shlib-defines-rpath /usr/lib64/mvapich2/bin/mpirun_rsh ['/lib']
mvapich2.x86_64: E: binary-or-shlib-defines-rpath /usr/lib64/mvapich2/lib/libmpicxx.so.12.0.5 ['/lib']
mvapich2.x86_64: E: binary-or-shlib-defines-rpath /usr/lib64/mvapich2/bin/mpivars ['/lib']
mvapich2.x86_64: E: binary-or-shlib-defines-rpath /usr/lib64/mvapich2/bin/mpiname ['/lib']


Issue 8:
[root@rdma-dev-03 ~]$ cat /usr/lib/rpm/macros.d/macros.mvapich2-x86_64
%_mvapich2_load \
 . /etc/profile.d/modules.sh; \
 module load mpi/mvapich2-%{_arch}; \
 export CFLAGS="$CFLAGS %{optflags}";  <---Please remove it.
%_mvapich2_unload \
 . /etc/profile.d/modules.sh; \
 module unload mpi/mvapich2-%{_arch};


Issue 9:
Please delete this line from the mvapich2.spec file.
mkdir %{buildroot}%{_mandir}/%{namearch}/man{2,4,5,6,7,8,9,n}


Issue 10:
Massive "undefined-non-weak-symbol" issue for MPI APIs.

mvapich2.x86_64: W: undefined-non-weak-symbol /usr/lib64/mvapich2/lib/libmpifort.so.12.0.5 MPI_UNWEIGHTED

$ grep undefined-non-weak-symbol review.txt |awk '{print $1, $4}'|sort|uniq -c
    248 mvapich2.x86_64: /usr/lib64/mvapich2/lib/libmpicxx.so.12.0.5
    384 mvapich2.x86_64: /usr/lib64/mvapich2/lib/libmpifort.so.12.0.5

Those symbols are defined in libmpi.so.12.0.5.


Issue 11:
"unused-direct-shlib-dependency" issue for libmpicxx.so.12.0.5 and libmpifort.so.12.0.5. It maybe can be ignored.


Issue 12;
[ ]: Package requires other packages for directories it uses.
     Note: No known owner of /usr/lib64/gfortran,
     /usr/share/modulefiles/mpi
[ ]: Package must own all directories that it creates.
     Note: Directories without known owners: /usr/lib64/gfortran,
     /usr/lib64/python3.5/site-packages, /usr/lib64/gfortran/modules,
     /usr/lib/rpm/macros.d, /usr/share/modulefiles/mpi,
     /usr/lib64/python3.5, /usr/lib64/python2.7, /usr/lib64/python2.7/site-
     packages, /usr/lib/rpm


I will ignore these issues, as they are false positives.
mvapich2.x86_64: E: invalid-locale-man-dir /usr/share/man/mvapich2-x86_64/man1/hydra_nameserver.1.gz
mvapich2.x86_64: W: file-not-in-%lang /usr/share/man/mvapich2-x86_64/man1/hydra_nameserver.1.gz

Thanks

Comment 3 Honggang LI 2016-08-04 00:33:48 UTC
Please enable romio support, as it had been required for openmpi.

Comment 4 Honggang LI 2019-01-15 07:58:09 UTC
Abort this stale review request.


Note You need to log in before you can comment on or make changes to this bug.