Fill out the form to download

Required field
Required field
Not a valid email address
Required field
Required field

Documentation

Error: Out of Memory

Error

The machine ran out of memory. Please choose a larger machine by increasing the number of computing cores or reduce the fineness of your mesh.

What Happened?

This error occurs when the machine selected for your simulation runs out of memory. This means that the machine selected was too small for the simulation to be able to run until it is finished.

What Could Be the Possible Reason?

The machine can run out of memory because of several reasons, as stated below:

  1. The size of the flow domain: The flow domain is too large for the machine to run a simulation, therefore the simulation requires a larger machine.
  2. Element size: The element size is too small which produces a large mesh size.
  3. The selected number of cores: The number of cores you selected for the simulation run is too small.
  4. Radiation: The analysis type includes radiation, and the number of faces in the CAD model is too high.

What Can I Do Now?

You can solve the problem in several ways, as stated below:

Best Practices

Use the Standard Mesher

The standard mesher for CFD simulations is an automatic meshing algorithm that produces a three-dimensional unstructured mesh, consisting of tetrahedral and hexahedral elements.

mesh settings showing how to change meshing algorithm to standard mesher to resolve the out of memory issue
Figure 1: Steps to change the meshing algorithm to standard

You can do this by going to the Mesh and changing the Algorithm to Standard. This will change the meshing algorithm to SimScale’s standard meshing algorithm which takes into account the geometric properties of the model.

Important Information

  • For mesh related solutions, the mesh needs to be regenerated and a new simulation needs to be run. Note that the coarser the mesh, the faster it is to generate.
  • After the number of cores has been increased, a new simulation run will need to be created to implement the change to the number of assigned cores.

Enlarge the Size of Elements

The larger the size of the elements, the lower the number of elements required, thus less memory is required. You can do this by decreasing the fineness level of the mesh. It is better to decrease the mesh by one level to find the balance between good mesh and memory usage.

mesh settings showing how to change mesh fineness in simscale to resolve the out of memory issue
Figure 2: Steps to change mesh fineness level

This can be done by going to the Mesh and decreasing the Fineness level. The fineness level will be increased according to the features of the geometry. It is important to remember that decreasing the fineness level will make the mesh generation faster.

Increase the Number of Cores

A larger number of cores will increase the memory available for the simulation, as it increases the capacity of the machine to run the computation. Currently, SimScale supports machines with a capacity of up to 96 cores.

simulation control settings to show how to change number of processors assigned to the simulation to resolve the out of memory issue
Figure 3: Simulation control settings

You can do this by going to Simulation control and changing the number in the Number of processors.

Clean the CAD Model

The analysis type, which includes radiation, requires higher memory. The memory requirement for the radiation calculations increases with respect to the number of fluid faces in the CAD model. You can consider simplifying the CAD model by reducing the number of faces, such as small faces on the fluid region.

PWC and LBM Simulations

For an LBM or PWC simulation, if the user encounters this error, the solution is to reduce the Fineness of the mesh and this can be done in the Mesh settings of the simulation.

pwc mesh settings to show steps how to reduce mesh fineness
Figure 4: PWC mesh settings
lbm mesh settings to show steps how to reduce mesh fineness to resolve the out of memory issue
Figure 5: LBM mesh settings

Structural Simulations

Decrease the Number of Parallel Processes

For the structural solvers, in addition to the above actions on the mesh and model details, the memory error can be solved by decreasing the number of parallel processes. This can be done in the Processors section of the Simulation Control panel:

processors section simulation control panel solve memory error simscale structural
Figure 6: Processors section of the Simulation Control panel

The rationale behind this action consists in that for a given machine size, defined by the Number of processors, the total memory is shared by the Number of parallel processes. If the amount of memory for one of the processes is not enough to complete the computation, its memory share can be increased, by decreasing the Number of parallel processes.

Optimize the Contacts

A common culprit of high memory consumption is contact relations. If the model has a high number of nodes assigned to contacts, such as bonded, sliding, or cyclic symmetry, the model size grows considerably, elevating the memory consumption.

An optimization can be achieved if you identify parts that are connected by bonded contacts and are made of the same material. These parts can be fused together in CAD mode, getting rid of the bonded contact and the related memory consumption.

Important Information

If none of the above suggestions solved your problem, then please post the issue on our forum or contact us.

Last updated: May 23rd, 2022

Contents