Advertisement
keithbugeja

MPI Threading Support

Jan 10th, 2016
130
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.75 KB | None | 0 0
  1. #include <iostream>
  2. #include <mpi.h>
  3.  
  4. int main(int argc, char** argv)
  5. {
  6.         // Initialise MPI process
  7.         std::string threading[] = { "MPI_THREAD_SINGLE",
  8.             "MPI_THREAD_FUNNELED",
  9.             "MPI_THREAD_SERIALIZED",
  10.             "MPI_THREAD_MULTIPLE"
  11.         };
  12.  
  13.         int required = MPI_THREAD_MULTIPLE,
  14.             provided;
  15.  
  16.         MPI_Init_thread(&argc, &argv, required, &provided);
  17.  
  18.         for (int t = 0; t < 4; ++t)
  19.             std::cout << t << " : " << threading[t] << std::endl;
  20.    
  21.  
  22.         std::cout << "Required : " << required << ", " << threading[required] << std::endl;
  23.         std::cout << "Provided : " << provided << ", " << threading[provided] << std::endl;
  24.  
  25.         // Release MPI environment
  26.         MPI_Finalize();
  27.  
  28.         return 0L;
  29. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement