How much memory is required for my simulation?
The user would like to estimate how much memory would be required for a given mesh size.
The following numbers are for a linear mesh using the segregated iterative solver. The numbers are, of course,
only representative. NOte that 1 word = 4 bytes.
Quads (2-D) and Hexes (3-D) : 40 words/(node*dof) and 37 words/(element*dof)
Triangles (2-D) and Tets (3-D) : 20 words/(element*dof)
No. of words/node for the tri and tet meshes is not unique. For the tri mesh, it is
about 45 and for the tet mesh it is about 120, but these numbers can vary quite a bit.
This may be because of the unstructured nature of the mesh, i.e., not knowing how many
neighbours each node will have.
For quadratic meshes, one should expect a 3-10 times increase in the ratios mentioned above.
Requirements for hybrid meshes are even more difficult to predict since the numbers will
depend upon the relative contribution of tets and hexes (3-D) in the mesh.
Applying these guidelines for a specific example:
Case: Example 16 (isothermal case of ex16.FDREAD in the examples directory)
For this case, the number of nodes and number of degrees of freedom are:
Number of Elements = 10,124
Number of Degrees of Freedom = 3 (velocity components) + Pressure = 4
The elements used are linear hexes so the formula is
Memory = 37 Words * Number of Elements * NDOF
Memory = 37 Words * 10,124 * 4 = 1.5 MW
The ex16.FDREAD file can be run using the FIPREP command: EXECUTION(DATACHECK)
or simply commenting out the line containing the FIPREP command: EXECUTION(NEWJOB).
The memory required for the solution is given (in Words) in the FDSTAT file:
TOTAL CORE MEMORY USED DURING SOLUTION PHASE = 1767670
Thus, the estimated memory (1.5 MW) is close to the exact memory (1.8 MW).