Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DCI dependent on number of processes #46

Open
mennodeij opened this issue Oct 27, 2020 · 2 comments
Open

DCI dependent on number of processes #46

mennodeij opened this issue Oct 27, 2020 · 2 comments

Comments

@mennodeij
Copy link
Contributor

mennodeij commented Oct 27, 2020

I have created a relatively simple 2D test case of two overset grids. This case can be found on branch https://github.com/mennodeij/tioga/tree/grid2d_multi_process with the case in driver/grid2d_dist.F90

When I run this case (with the parameter 'grouped' on .TRUE.) for 1-20 processes, I get the domain connectivity information (DCI) outcome as displayed below in the animation. On top, the colors indicate which process has which cells, and the bottom half indicates the DCI using the IBLANK vertices array. With the parameter 'grouped' on .FALSE. the issue is also apparent.

Is this expected behavior? If not, am I doing something wrong using TIOGA? I use it such that each process has a part of both grids, maybe that is not correct?

Please note that I have made some changes to the file output routines in MeshBlock to facilitate comparing outcomes of different number of processes. The animation was done in ParaView 5.8.

numprocs

@jsitaraman
Copy link
Owner

jsitaraman commented Oct 27, 2020 via email

@mennodeij
Copy link
Contributor Author

Thanks for explaining about the painting algorithms being local-only, it makes sense that there are differences depending on the number of processes. I suppose that for larger cases, where the number of cells per process is much larger than for these test cases, the differences become smaller, as they only affect the process boundaries.

I have tried my test case with mexclude set to zero, and there are indeed much less changes in the grid2d_dist test case.

I have also quickly looked at the test.sh case you mentioned: there are subtle differences with the sphere-in-cube test case. When I compare the cases with 4, 6, 9, 12 and 16 processes (that have the exact same number of cells in the background cube grid), the number of FRINGE cells is different in each case, on the order of 10-20 cells, with the grid having about 7,000 FRINGE cells. There are also similar changes in the vertices, i.e. between 6,400 and 6,420 vertices having FRINGE status.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants