I want a tool for load rebalances.
I have a distributed grid. Each process can handle a part of the global grid. Each process has a different node and I want to rebalance it. I want a tool that can give color on a distributed grid.
A typical procedure is:
before rebalance:
process 0: 1000 node
process 1: 600 node
after some analysis, load rebalances tools told me:
process 0: node 0-800 should still belong to process 0, node 801-1000 should belong to process 1
process 1: node 0-600 should still belong to process 1
in this way, the partition is good.
Then, I can do the load moving by myself...
Furthermore, I do not want the all gather way. I know this can be done by master gather all process's grid and assemble the global grid then repartition it using tools like metis
.
I am using MPI to do parallel computing, the grid is an unstructured grid organized by triangle or tetrahedron.
Any advice will be greatly helpful. Thanks for your time.
why I want this
I have a grid, I am first using graph partition tools Metis
to do grid partition. Each domain has a similar number of nodes after partition. After the grid refinement procedure, the node at each domain will not have a similar number, which leads to load unbalance. So I want the load to rebalance.