pub fn initialize() -> Option<Universe>
Expand description
Initialize MPI.
If the MPI library has not been initialized so far, initializes and returns a representation
of the MPI communication Universe
which provides access to additional functions.
Otherwise returns None
.
Equivalent to: initialize_with_threading(Threading::Single)
§Examples
See examples/simple.rs
§Standard section(s)
8.7
Examples found in repository?
More examples
examples/pack.rs (line 7)
6fn main() {
7 let universe = mpi::initialize().unwrap();
8 let world = universe.world();
9
10 let ints = [3i32, 2, 1];
11 let packed = world.pack(&ints[..]);
12
13 let mut new_ints = [0, 0, 0];
14 unsafe {
15 world.unpack_into(&packed, &mut new_ints[..], 0);
16 }
17
18 assert_eq!([3, 2, 1], new_ints);
19}
examples/time.rs (line 7)
6fn main() {
7 let universe = mpi::initialize().unwrap();
8 let world = universe.world();
9
10 let t_start = mpi::time();
11 world.barrier();
12 let t_end = mpi::time();
13
14 println!("barrier took: {} s", t_end - t_start);
15 println!(
16 "the clock has a resoltion of {} seconds",
17 mpi::time_resolution()
18 );
19}
Additional examples can be found in:
- examples/all_gather_bool.rs
- examples/structured.rs
- examples/all_to_all.rs
- examples/scan.rs
- examples/env_inq.rs
- examples/scatter.rs
- examples/immediate_all_to_all.rs
- examples/datatype_dup.rs
- examples/complex_datatype.rs
- examples/immediate_scan.rs
- examples/immediate_scatter.rs
- examples/barrier.rs
- examples/buffered.rs
- examples/broadcast_complex.rs
- examples/all_gather_varcount.rs
- examples/ready_send.rs
- examples/broadcast.rs
- examples/immediate_all_gather_varcount.rs
- examples/scatter_varcount.rs
- examples/gather_varcount.rs
- examples/wait_any.rs
- examples/immediate_broadcast.rs
- examples/contiguous.rs
- examples/immediate_scatter_varcount.rs
- examples/vector.rs
- examples/immediate_gather_varcount.rs
- examples/readme.rs
- examples/send_receive.rs
- examples/immediate_reduce.rs
- examples/reduce.rs
- examples/all_gather.rs
- examples/immediate_barrier.rs
- examples/immediate_all_gather.rs
- examples/gather.rs
- examples/group.rs
- examples/cartesian.rs
- examples/immediate.rs
- examples/split.rs
- examples/immediate_gather.rs