-
Notifications
You must be signed in to change notification settings - Fork 89
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
MPI issue using Surface Generator #841
Comments
I created a simpler version that should just duplicate the nodes alone a fracture of an unstructured mesh. Because the
Nevertheless, with
|
To be more precise, I prepared this test case, that defines the
|
I really don't know what can be the cause, but ... can it be something similar to #663? |
I realized that the issue is not related with
Any idea on the possible problem? It seems to be related on how GEOSX handles the partitioning of an unstructured mesh. |
Working with this mesh and 2 processes, I realized that the fracture nodes are properly split only on one process (rank 0), while it seems that rank 1 sees the nodes on the interface between the two processes as not doubled.
This creates an inconsistency between ranks and is not physically correct (all the fracture is open, except for the two right-most and left-most edges). The fracture is created as a pre-step before the simulation and never changes. @rrsettgast, am I using SurfaceGenerator in a wrong way? Have you ever observed something similar? |
@AF1990 I will have to take a look. This looks like a pretty substantial bug, but I have seen this case work previously. Perhaps we made a change and did not have coverage for this case. Can you send me your input file? |
Yes, that's the file. It's a simple flow simulation that, with
and
where the first number is the element index, while the 8 following are nodes of top/bottom faces. The problem is that elements 19, 37 and 53 on rank1 have not split nodes too!!! |
This is solved by #864. Nevertheless ... there's another problem (with the same settings):
|
@AF1990 What is the status of this issue? |
For unstructured grids, the parallel surface generator still has problems, such as the inconsistency across ranks of the splitting. |
@rrsettgast @joshua-white - I think that I'm running into this issue as well. I have a number of external meshes that conform to one or more faults surfaces. I'm getting the same message as @andrea-franceschini when I try to split the mesh in parallel runs. This is one of the simple meshes that I'm testing, which has a 45 degree fault cutting through it: Any thoughts on how to address this? I've attached the example xml file and mesh here. I get the error with the arguments `-x 2 -y 2 -z 2 ` |
@rrsettgast - I've created a 2x2x2 mesh with a vertical fault that shows the same behavior (see attached). The mesh appears to be split correctly if there is a partition aligned with the surface (
Note: the problem doesn't run for 8 partitions ( |
@joshua-white @andrea-franceschini @cssherman @CusiniM @herve-gross This old issue has never been fixed. Recently, I hit the same road block when running the single fracture compression problem with Lagrangian Contact Solver. In this case, external mesh is used and it seems like that the By plotting both the silo and vtk output of shear displacement and comparing with the analytical solution, same issue is observed for the case running with 2 ranks, which confirms that it is not related to the output format. Moreover, this anomaly happens at the partition boundary, which suggests that the parallel surface generator does not work properly with unstructured mesh in parallel. |
@jhuang2601 - Agreed. I tried to look at this with the example I've included above, and am suspicious that it is an issue with Metis partitioning (I couldn't nail anything down though). I'm curious to see if the vtk mesh generator will be subject to the same issue... |
Since this is read from PAMELA, the requested partition layout is irrelevant. So the So it is a wonky partition...but we should still be able to handle it. I suspect the ghosting is incorrect. |
This is great that you got a tiny reproducer. |
Bug description
Running this test case, that needs this mesh file, with more than 1 process, e.g.
mpirun -np 2 geosx -x 2
, the code waits forever. If I interrupt it with Ctrl+C, I have:As now, I'm using the branch #799, but the
surfaceGenerator
kernel is the same as indevelop
.Platform:
Note
The extensions are:
xml
for the main input andmsh
for the mesh.github
forced me to usetxt
.The text was updated successfully, but these errors were encountered: