I have a Model (rotating machine) with about 250.000 elements which I want to devide in partitions for mpi calculation. I have boundaries to connect, which can be seen in the attached picture. These boundaries get connected with the parameter "-connect 1 43" with ElmerGrid. With this I got 4 mesh partitions (in the attached picture, too). This works and the simulation show correct results. My Problem is, that the number of elements/nodes are very different in the mesh partitions. So I got a bad parallel scaling.
4 parts:
Code: Select all
ElmerGrid 2 2 mesh -metis 4 3 -connect 1 4 3 -partdual
...
part elements nodes shared bc elems indirect
1 41600 33715 9062 12800 0
2 68429 39077 2763 8821 0
3 68426 42445 3354 8274 0
4 68425 48143 3084 7153 0
Nodes needed in maximum 3 boundary elements
Code: Select all
ElmerGrid 2 2 mesh -metis 2 3 -connect 1 4 3 -partdual
...
part elements nodes shared bc elems indirect
1 41600 33705 9072 12800 0
2 205280 129675 8442 24248 0
Nodes needed in maximum 3 boundary elements
Code: Select all
ElmerGrid 2 2 mesh -metis 4 3 -connect 1 4 3 -partdual -partconnect 2
...
part elements nodes shared bc elems indirect
1 20800 16694 5713 6400 0
2 20800 16695 5712 6400 0
3 102477 71175 4435 10980 0
4 102803 58816 3961 13268 0
Nodes needed in maximum 3 boundary elements
It seems, that ElmerGrid creates the first partition with all elements/nodes which belongs to the boundary and all other elements/nodes belongs to other partitions.
But I want, that the first partition (with the boundary) get more elements to get a similar number of elements in each partition. Is this possible?
Best regards
Martin