use lamellar::array::prelude::*;
struct ArrayWrapper<T: Dist> {
_array: AtomicArray<T>,
}
impl<T: Dist + ArrayOps + Default> ArrayWrapper<T> {
fn new(world: LamellarWorld, len: usize) -> Self {
ArrayWrapper {
_array: AtomicArray::<T>::new(world, len, Distribution::Block).block(),
}
}
}
#[lamellar::main]
fn main() {
let world = lamellar::LamellarWorldBuilder::new().build();
let _my_pe = world.my_pe();
let num_pes = world.num_pes();
let _wrapped_array_f32 = ArrayWrapper::<f32>::new(world.clone(), 10 * num_pes);
let _wrapped_array_usize = ArrayWrapper::<usize>::new(world.clone(), 10 * num_pes);
}