open Printf open Mpi (* comm_size, comm_rank *) let size = comm_size comm_world let myrank = comm_rank comm_world let print_array array = printf "myrank is %d:\n" myrank; for i=1 to (Array.length array) do print_int array.(i-1);print_string ";" done; print_newline () let print_farray array = printf "myrank is %d:\n" myrank; for i=1 to (Array.length array) do print_float array.(i-1);print_string ";" done; print_newline () let _ = printf "%d: comm_size = %d" myrank size; print_newline() let _ = print_array (allgather 1 comm_world) let _ = let a = Array.make 3 0 in allgather_int 2 a comm_world; print_array a let _ = let a = Array.make 3 0.0 in allgather_float 2.1 a comm_world; print_farray a let _ = let a = Array.make 6 0 in allgather_int_array [|1;2|] a comm_world; print_array a let _ = let a = Array.make 6 0.0 in allgather_float_array [|3.1;4.3|] a comm_world; print_farray a