Run a load balancing phase that just generates a random distribution. Perform all serialization required to migrate objects.
For now, let's move forward with a global map implementation. The algorithm should be:
- For its local elements, each node randomly decides who to "give" their local data
- Compute the serialization sizes of each of the elements. Post Isends for the migrating data.
- Allgather the new locations and sizes of each element.
- Using the result of the allgather, update the index->rank map and compute new local elements. Post recvs of the correct size for the incoming elements.
- Unpack the new local elements and clean up.
Run a load balancing phase that just generates a random distribution. Perform all serialization required to migrate objects.
For now, let's move forward with a global map implementation. The algorithm should be: