all_gather_bool/all_gather_bool.rs
1#![deny(warnings)]
2extern crate mpi_fork_fnsp as mpi;
3
4use mpi::traits::*;
5
6fn main() {
7 let universe = mpi::initialize().unwrap();
8 let world = universe.world();
9
10 let rank = world.rank();
11 let count = world.size() as usize;
12
13 let mut a = vec![false; count];
14 world.all_gather_into(&(rank % 2 == 0), &mut a[..]);
15
16 let answer: Vec<_> = (0..count).map(|i| i % 2 == 0).collect();
17
18 assert_eq!(answer, a);
19}