CFD Online Discussion Forums

CFD Online Discussion Forums (http://www.cfd-online.com/Forums/)
-   OpenFOAM Running, Solving & CFD (http://www.cfd-online.com/Forums/openfoam-solving/)
-   -   snappyHexMesh in parallel - FOAM Fatal IO Error (http://www.cfd-online.com/Forums/openfoam-solving/105821-snappyhexmesh-parallel-foam-fatal-io-error.html)

mturcios777 August 9, 2012 20:07

snappyHexMesh in parallel - FOAM Fatal IO Error
 
Hello Forum,

I've been trying to run snappyHexMesh to work in parallel, and I keep getting the following error, always right after "Remove unreachable sections of mesh":

[2]
[2]
[2] --> FOAM FATAL IO ERROR:
[2] error in IOstream "IOstream" for operation operator>>(Istream&, List<T>&) : reading first token
[2]
[2] file: IOstream at line 0.
[2]
[2] From function IOstream::fatalCheck(const char*) const
[2] in file db/IOstreams/IOstreams/IOstream.C at line 114.
[2]

Its similar to this orphaned bug report about OpenMPI versions:
http://www.openfoam.org/mantisbt/view.php?id=370

Has anyone run across this. It seems like I may be missing something simple in the setup, but nothing I've read in the threads gives me any clue.

Thanks!

wyldckat August 9, 2012 20:33

Hi Marco,

I haven't seen anything on this yet. So this would be a great opportunity to start figuring out what makes this bug happen ;)

So, a few questions help start the diagnosis process:
  • Which OpenFOAM version?
    From the mantis site, I'm assuming 2.1.x. But still: Opt or Debug version?
  • Can you reproduce with one of the tutorials?
    • incompressible/simpleFoam/turbineSiting
    • incompressible/pisoFoam/les/motorBike/motorBike
  • Another case that uses snappy in parallel is available here: http://code.google.com/p/bluecfd-sin...untimes202_211 ... well, actually here: http://code.google.com/p/bluecfd-sin...inimal.tar.bz2
  • Which decomposition methods are you using for decomposePar and snappyHexMesh? And on how many partitions/sub-domains?
  • "Remove unreachable sections of mesh" - can you figure out which step is done prior to this? And what settings you've used for that step?
Best regards,
Bruno

mturcios777 August 10, 2012 13:27

Hey Bruno, thanks for looking into this (are you on vacation again?)

I haven't run any other parallel snappyHexMesh cases; I'll have a look at the ones you recommended and get back to you. In the meantime I'll answer what I can:

I am using OpenFOAM 2.1.x. I've used both simple and scotch decomposition methods into 6 subdomains. The full log of decomposition is (beginning right after patch selection)

Code:

Added patches in = 0.23 s

Selecting decompositionMethod simple

Refinement phase
----------------

[1] Found point (0 0 -2) in cell 31806 on processor 1

Feature refinement iteration 0
------------------------------

No cells marked for refinement since reached limit 300000.
Determined cells to refine in = 0.79 s
Selected for feature refinement : 0 cells (out of 630000)
Stopping refining since too few cells selected.


Surface refinement iteration 0
------------------------------

No cells marked for refinement since reached limit 300000.
Determined cells to refine in = 0.01 s
Selected for refinement : 0 cells (out of 630000)
Stopping refining since too few cells selected.


Removing mesh beyond surface intersections
------------------------------------------

Found point (0 0 -2) in cell -1 in global region 1 out of 18 regions.
Keeping all cells in region 1 containing point (0 0 -2)
Selected for keeping : 44551 cells.
Edge intersection testing:
    Number of edges            : 150468
    Number of edges to retest  : 33104
    Number of intersected edges : 21225

Shell refinement iteration 0
----------------------------

Marked for refinement due to refinement shells    : 0 cells.
Determined cells to refine in = 1.14 s
Selected for internal refinement : 0 cells (out of 44551)
Stopping refining since too few cells selected.


Splitting mesh at surface intersections
---------------------------------------

Introducing baffles for 21225 faces that are intersected by the surface.

Edge intersection testing:
    Number of edges            : 171580
    Number of edges to retest  : 137163
    Number of intersected edges : 42301
Created baffles in = 0.39 s


After introducing baffles : cells:44551  faces:171580  points:61361
Cells per refinement level:
    0    44551

Introducing baffles to block off problem cells
----------------------------------------------

markFacesOnProblemCells : marked 53912 additional internal faces to be converted into baffles.
Analyzed problem cells in = 0.12 s


Introducing baffles to delete problem cells.

Edge intersection testing:
    Number of edges            : 225492
    Number of edges to retest  : 177360
    Number of intersected edges : 42304
Created baffles in = 0.39 s


After introducing baffles : cells:44551  faces:225492  points:62596
Cells per refinement level:
    0    44551

Remove unreachable sections of mesh
-----------------------------------

Keeping all cells in region 22 containing point (0 0 -2)
Selected for keeping : 14920 cells.
Edge intersection testing:
    Number of edges            : 48436
    Number of edges to retest  : 0
    Number of intersected edges : 7026
Split mesh in = 0.19 s


After subsetting : cells:14920  faces:48436  points:18808
Cells per refinement level:
    0    14920

Handling cells with snap problems
---------------------------------

Introducing baffles for 7026 faces that are intersected by the surface.

Edge intersection testing:
    Number of edges            : 48436
    Number of edges to retest  : 20701
    Number of intersected edges : 7026
Created baffles in = 0.13 s


After introducing baffles : cells:14920  faces:48436  points:18808
Cells per refinement level:
    0    14920

Introducing baffles to block off problem cells
----------------------------------------------

markFacesOnProblemCells : marked 0 additional internal faces to be converted into baffles.
Analyzed problem cells in = 0.05 s


Introducing baffles to delete problem cells.

Edge intersection testing:
    Number of edges            : 48436
    Number of edges to retest  : 0
    Number of intersected edges : 7026
Created baffles in = 0.06 s


After introducing baffles : cells:14920  faces:48436  points:18808
Cells per refinement level:
    0    14920

Remove unreachable sections of mesh
-----------------------------------

[2]
[2]
[2] --> FOAM FATAL IO ERROR:
[2] error in IOstream "IOstream" for operation operator>>(Istream&, List<T>&) : reading first token
[2]
[2] file: IOstream at line 0.
[2]
[2]    From function IOstream::fatalCheck(const char*) const
[2]    in file db/IOstreams/IOstreams/IOstream.C at line 114.
[2]
FOAM parallel run exiting
[2]

Once I've tried the other parallel sHM cases I'll get back to you.

Many thanks again!

wyldckat August 10, 2012 13:33

Hi Marco,

Quote:

Originally Posted by mturcios777 (Post 376474)
Hey Bruno, thanks for looking into this (are you on vacation again?)

(Today is the last day of my 2 week vacation... if I don't take into account the weekend...)

Quote:

Originally Posted by mturcios777 (Post 376474)
I am using OpenFOAM 2.1.x. I've used both simple and scotch decomposition methods into 6 subdomains. The full log of decomposition is (beginning right after patch selection)

So you've tried "simple" and "scotch" for decomposition, correct?
But what about for running snappyHexMesh itself in parallel? I think "simple" will work with snappy, but "scotch" is a big no, you'll have to use "ptscotch".

Best regards,
Bruno

mturcios777 August 10, 2012 19:18

Quote:

Originally Posted by wyldckat (Post 376477)
Hi Marco,

(Today is the last day of my 2 week vacation... if I don't take into account the weekend...)

Hope you were able to relax somewhat...

Quote:

Originally Posted by wyldckat (Post 376477)
So you've tried "simple" and "scotch" for decomposition, correct?
But what about for running snappyHexMesh itself in parallel? I think "simple" will work with snappy, but "scotch" is a big no, you'll have to use "ptscotch".

I tried using simple for both decomposition and snappy, as well as mixing and matching. I read about using 'ptscotch' with snappy that on a few threads but it hasn't fixed the problem. The parallel motorBike case works fine, I'm going to try using hierarchical like it and base my case on it as its probably the closest I can think of. I'll let you know what happens (after the weekend!)


All times are GMT -4. The time now is 21:52.