You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hi,
I have issues with reading old (CGNS <4), large (~30GB) CGNS files:
it uses an obscene amount of memory
lots of time is spent on cg_open
This issue is caused by cgi_read_section, which is ran at file-opening-time. If the CGNS file is too old (eg it uses the old NGON/NFACE format), then this function loads the whole connectivity data in RAM and updates it.
Called here:
Result: when I was using the VTKCGNSReader (directly based on CGIO), I needed less than 100GB of RAM, now that I am using the CGNS MLL I need ~180GB of RAM to open the same ~30GB files.
Would the CGNS team be open to lazy loading ? And to find a way to limit duplicating the connectivity in RAM (although I don't know how to do that without changing the API) ?
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
Hi,
I have issues with reading old (CGNS <4), large (~30GB) CGNS files:
cg_open
This issue is caused by
cgi_read_section
, which is ran at file-opening-time. If the CGNS file is too old (eg it uses the old NGON/NFACE format), then this function loads the whole connectivity data in RAM and updates it.Called here:
CGNS/src/cgns_internals.c
Line 595 in 6649d34
Then functions like
cg_poly_elements_read
copy the data in memory.CGNS/src/cgnslib.c
Line 4231 in 6649d34
Result: when I was using the VTKCGNSReader (directly based on CGIO), I needed less than 100GB of RAM, now that I am using the CGNS MLL I need ~180GB of RAM to open the same ~30GB files.
Would the CGNS team be open to lazy loading ? And to find a way to limit duplicating the connectivity in RAM (although I don't know how to do that without changing the API) ?
Beta Was this translation helpful? Give feedback.
All reactions