Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP: Restructure cluster manager #96

Closed
wants to merge 22 commits into from
Closed
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
69a9914
Implement Comm_dup and Comm_free
eschnett Nov 25, 2015
d5e7419
Implement Testall and Waitany
eschnett Nov 25, 2015
eced9f3
Convert some MPI functions results to Int
eschnett Nov 25, 2015
c9d31da
Reformat / clean up source code
eschnett Nov 25, 2015
ca5aff2
Clean up source code
eschnett Nov 25, 2015
a454737
Clean up Monte Carlo example
eschnett Nov 25, 2015
57226be
Restructure MPI cluster manager
eschnett Nov 25, 2015
a4d454c
Disable Testany, which doesn't work on OS X in MPICH
eschnett Nov 25, 2015
739f84a
Re-enable TestAny; install mpich from source on OS X
eschnett Nov 25, 2015
0b9c910
Add --verbose to `brew --install` to avoid Travis timing out
eschnett Nov 25, 2015
399d99f
Implement Waitsome!, Testsome!
eschnett Nov 25, 2015
03bdbbf
Use Testsome! instead of Testany! in cluster manager
eschnett Nov 25, 2015
9274c1f
Don't build MPICH from source in Travis on OS X
eschnett Nov 25, 2015
59a503f
Correct handling of index arrays
eschnett Nov 25, 2015
80ec5be
Don't need to set finished requests to REQUEST_NULL
eschnett Nov 25, 2015
6bb01e3
Build MPICH and OpenMPI on OS X, replacing output with a progress marker
eschnett Nov 25, 2015
be8e4a6
Clean up index handling
eschnett Nov 25, 2015
440b204
Add MPI functions to CMakeLists.txt
eschnett Nov 25, 2015
eb9d62d
Add MPI_Scatter to CMakeLists.txt
eschnett Nov 25, 2015
9f1103c
Reformat travis-install-mpi.sh
eschnett Nov 25, 2015
f9fc07c
Re-indent auto-generated files
eschnett Nov 26, 2015
192226d
Merge branch 'master' into eschnett/cman
eschnett Nov 26, 2015
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Re-indent auto-generated files
  • Loading branch information
eschnett committed Nov 26, 2015
commit f9fc07c1f3c87ad84741adab64a2efa0dbc90696
88 changes: 44 additions & 44 deletions deps/gen_constants.f90
Original file line number Diff line number Diff line change
Expand Up @@ -2,58 +2,58 @@ program gen_constants
implicit none
include 'mpif.h'

call output("MPI_BYTE ", MPI_BYTE)
call output("MPI_BYTE ", MPI_BYTE)
! Older versions of OpenMPI (such as those used by default by
! Travis) do not define MPI_WCHAR and the MPI_*INT*_T types for
! Fortran. We thus don't require them (yet).
! call output("MPI_WCHAR ", MPI_WCHAR)
! call output("MPI_INT8_T ", MPI_INT8_T)
! call output("MPI_UINT8_T ", MPI_UINT8_T)
! call output("MPI_INT16_T ", MPI_INT16_T)
! call output("MPI_UINT16_T ", MPI_UINT16_T)
! call output("MPI_INT32_T ", MPI_INT32_T)
! call output("MPI_UINT32_T ", MPI_UINT32_T)
! call output("MPI_INT64_T ", MPI_INT64_T)
! call output("MPI_UINT64_T ", MPI_UINT64_T)
call output("MPI_INTEGER1 ", MPI_INTEGER1)
call output("MPI_INTEGER2 ", MPI_INTEGER2)
call output("MPI_INTEGER4 ", MPI_INTEGER4)
call output("MPI_INTEGER8 ", MPI_INTEGER8)
call output("MPI_REAL4 ", MPI_REAL4)
call output("MPI_REAL8 ", MPI_REAL8)
call output("MPI_COMPLEX8 ", MPI_COMPLEX8)
call output("MPI_COMPLEX16 ", MPI_COMPLEX16)
! call output("MPI_WCHAR ", MPI_WCHAR)
! call output("MPI_INT8_T ", MPI_INT8_T)
! call output("MPI_UINT8_T ", MPI_UINT8_T)
! call output("MPI_INT16_T ", MPI_INT16_T)
! call output("MPI_UINT16_T ", MPI_UINT16_T)
! call output("MPI_INT32_T ", MPI_INT32_T)
! call output("MPI_UINT32_T ", MPI_UINT32_T)
! call output("MPI_INT64_T ", MPI_INT64_T)
! call output("MPI_UINT64_T ", MPI_UINT64_T)
call output("MPI_INTEGER1 ", MPI_INTEGER1)
call output("MPI_INTEGER2 ", MPI_INTEGER2)
call output("MPI_INTEGER4 ", MPI_INTEGER4)
call output("MPI_INTEGER8 ", MPI_INTEGER8)
call output("MPI_REAL4 ", MPI_REAL4)
call output("MPI_REAL8 ", MPI_REAL8)
call output("MPI_COMPLEX8 ", MPI_COMPLEX8)
call output("MPI_COMPLEX16 ", MPI_COMPLEX16)

call output("MPI_COMM_NULL ", MPI_COMM_NULL)
call output("MPI_COMM_SELF ", MPI_COMM_SELF)
call output("MPI_COMM_WORLD ", MPI_COMM_WORLD)
call output("MPI_COMM_NULL ", MPI_COMM_NULL)
call output("MPI_COMM_SELF ", MPI_COMM_SELF)
call output("MPI_COMM_WORLD ", MPI_COMM_WORLD)

call output("MPI_OP_NULL ", MPI_OP_NULL)
call output("MPI_BAND ", MPI_BAND)
call output("MPI_BOR ", MPI_BOR)
call output("MPI_BXOR ", MPI_BXOR)
call output("MPI_LAND ", MPI_LAND)
call output("MPI_LOR ", MPI_LOR)
call output("MPI_LXOR ", MPI_LXOR)
call output("MPI_MAX ", MPI_MAX)
call output("MPI_MAXLOC ", MPI_MAXLOC)
call output("MPI_MIN ", MPI_MIN)
call output("MPI_MINLOC ", MPI_MINLOC)
call output("MPI_PROD ", MPI_PROD)
call output("MPI_REPLACE ", MPI_REPLACE)
call output("MPI_SUM ", MPI_SUM)
call output("MPI_OP_NULL ", MPI_OP_NULL)
call output("MPI_BAND ", MPI_BAND)
call output("MPI_BOR ", MPI_BOR)
call output("MPI_BXOR ", MPI_BXOR)
call output("MPI_LAND ", MPI_LAND)
call output("MPI_LOR ", MPI_LOR)
call output("MPI_LXOR ", MPI_LXOR)
call output("MPI_MAX ", MPI_MAX)
call output("MPI_MAXLOC ", MPI_MAXLOC)
call output("MPI_MIN ", MPI_MIN)
call output("MPI_MINLOC ", MPI_MINLOC)
call output("MPI_PROD ", MPI_PROD)
call output("MPI_REPLACE ", MPI_REPLACE)
call output("MPI_SUM ", MPI_SUM)

call output("MPI_REQUEST_NULL ", MPI_REQUEST_NULL)
call output("MPI_REQUEST_NULL", MPI_REQUEST_NULL)

call output("MPI_STATUS_SIZE ", MPI_STATUS_SIZE)
call output("MPI_ERROR ", MPI_ERROR)
call output("MPI_SOURCE ", MPI_SOURCE)
call output("MPI_TAG ", MPI_TAG)
call output("MPI_STATUS_SIZE ", MPI_STATUS_SIZE)
call output("MPI_ERROR ", MPI_ERROR)
call output("MPI_SOURCE ", MPI_SOURCE)
call output("MPI_TAG ", MPI_TAG)

call output("MPI_ANY_SOURCE ", MPI_ANY_SOURCE)
call output("MPI_ANY_TAG ", MPI_ANY_TAG)
call output("MPI_TAG_UB ", MPI_TAG_UB)
call output("MPI_UNDEFINED ", MPI_UNDEFINED)
call output("MPI_ANY_SOURCE ", MPI_ANY_SOURCE)
call output("MPI_ANY_TAG ", MPI_ANY_TAG)
call output("MPI_TAG_UB ", MPI_TAG_UB)
call output("MPI_UNDEFINED ", MPI_UNDEFINED)

contains

Expand Down
5 changes: 3 additions & 2 deletions deps/gen_functions.c
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,8 @@
#define STRING(s) STRING1(s)

int main(int argc, char *argv[]) {
printf("const WRAPPER_VERSION = \"%s\"\n", VERSION);
printf("const WRAPPER_VERSION = \"%s\"\n", VERSION);
printf("\n");
printf("const MPI_ABORT = :%s\n", STRING(MPI_ABORT));
printf("const MPI_ALLGATHER = :%s\n", STRING(MPI_ALLGATHER));
printf("const MPI_ALLGATHERV = :%s\n", STRING(MPI_ALLGATHERV));
Expand Down Expand Up @@ -62,7 +63,7 @@ int main(int argc, char *argv[]) {
printf("const MPI_WAITANY = :%s\n", STRING(MPI_WAITANY));
printf("const MPI_WAITSOME = :%s\n", STRING(MPI_WAITSOME));
printf("const MPI_WTIME = :%s\n", STRING(MPI_WTIME));

printf("\n");
printf("bitstype %d CComm\n", (int)(sizeof(MPI_Comm) * 8));

return 0;
Expand Down