mpiP.h 971 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. /*
  2. * Private .h file for MPI
  3. */
  4. #include <unistd.h>
  5. #include <stdlib.h>
  6. #include <stdio.h>
  7. #include <string.h>
  8. #include "listops.h"
  9. #include "mpi.h"
  10. #include "config.h"
  11. /*
  12. * MPI_GROUP_ONE must not conflict with MPI_GROUP_NULL or
  13. * MPI_GROUP_EMPTY
  14. */
  15. #define MPI_GROUP_ONE (1)
  16. /****************************************************************************/
  17. typedef struct
  18. {
  19. pList sendlist;
  20. pList recvlist;
  21. int num;
  22. } Comm;
  23. typedef struct
  24. {
  25. pListitem listitem; /* to allow Req to be removed from list */
  26. int *buf;
  27. int source;
  28. int tag;
  29. int complete;
  30. } Req;
  31. /****************************************************************************/
  32. extern void *mpi_malloc(int size);
  33. extern void mpi_free(void *ptr);
  34. extern MPI_Comm mpi_comm_new(void);
  35. extern void mpi_destroy_handles(void);
  36. extern void mpi_alloc_handle(int *handle, void **data);
  37. extern void *mpi_handle_to_ptr(int handle);
  38. extern void mpi_free_handle(int handle);