Collective operations should be wrapped - [ ] `gather` - [ ] `scatter` - [ ] `gather_v` - [ ] `scatter_v`