Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Test of an MPI_Ibarrier implementation.
authordegomme <adegomme@users.noreply.github.com>
Thu, 28 Mar 2019 11:12:01 +0000 (12:12 +0100)
committerdegomme <adegomme@users.noreply.github.com>
Thu, 28 Mar 2019 17:35:56 +0000 (18:35 +0100)
commit18449bfffced07ec0a49297f1eb76c4fe6792895
treebbe8de7ec01e2c891d5f1eb40a870cacad58384b
parent4f07a5a6873fe49b411ace45de96adfbef8cb41a
Test of an MPI_Ibarrier implementation.

Instead of a helper process, or of a scheduler as used by MPI implementations, let's play dumb for now and just use a bunch of Isend/Irecv, and just test them all when needed.
pros:
- just .. works ?
- we have the default naive algorithms already implemented for most of the collectives, so in the end we just have to spilt the startall and waitall parts.
cons:
- simple basic algos only.
More advanced ones would need a scheduler with progress management, let's do this later if needed (and MPI implementations have the odd idea that it's fine to advance the scheduler's round only when MPI_Test is called, so we might actually be faster in the end).
include/smpi/smpi.h
src/smpi/bindings/smpi_mpi.cpp
src/smpi/bindings/smpi_pmpi_coll.cpp
src/smpi/colls/smpi_nbc_impl.cpp [new file with mode: 0644]
src/smpi/include/smpi_coll.hpp
src/smpi/include/smpi_request.hpp
src/smpi/mpi/smpi_request.cpp
teshsuite/smpi/mpich3-test/coll/CMakeLists.txt
teshsuite/smpi/mpich3-test/coll/testlist
tools/cmake/DefinePackages.cmake