int main(int argc, char *argv[]) { int max_cpus, cpu_id; // initilisation MPI::Init(argc, argv); // nombre de processus / thread / programmes max_cpus = MPI::COMM_WORLD.Get_size(); // identifiant de processus / thread / programme cpu_id = MPI::COMM_WORLD.Get_rank(); // gestion des erreurs éventuelles MPI_Comm_set_errhandler(MPI_COMM_WORLD, MPI_ERRORS_RETURN); if (cpu_id == 0) { // la valeur de la variable est définie sur le processus // maître MPIVariable var(1234); var.send_to(1); } else { // l'esclave déclare une variable de même type // et la reçoit du processus maître MPIVariable var(0); var.recv_from(0); cout << "variable=" << var() << endl; } MPI::Finalize(); return EXIT_SUCCESS; }