This article explains the concept of core hours and their importance for the user.
Core hour is a unit that SimScale uses to know how many resources were used for jobs in the SimScale platform. The jobs that currently consume core hours are simulations, meshing operations, and CAD operations.
The core hour consumption depends on how many cores were used and how long the job took to finish. For instance, 2 core hours are consumed when a simulation runs for 1 hour using a 2 core machine. The formula below is used to calculate the core hour usage from any given job:
$$Core\,Hours = Time\ required\ to\ run\ the\ job \times Number\,of\,cores\ used$$
Checking the Core Hours Balance
The quickest way to find out how many core hours you have available is by accessing the Dashboard:
In the image above, under the My Latest Jobs tab, you can also find an overview of the core hour usage for your latest jobs.
Managing Core Hours
Several factors influence the core hours usage in your operations. Find out the main factors below.
The Initial conditions define the starting values for each solution field. Initial conditions that are realistic and closer to the expected values can accelerate the convergence rate which, in turn, reduces the core hours that you use. For instance, values from experiments can be used as your initial conditions.
The mesh size plays a major role in the computational effort necessary to run a job. Although the accuracy of the results increases with mesh density, the core hour consumption also goes up.
When generating a mesh, you can set the Number of processors to ‘Automatic’. This way, the platform will automatically pick an optimal machine size, based on the mesh settings.
Under the Simulation control, we can define the Number of processors for the simulation operations.
With the ‘Automatic’ setting, the platform will choose the most economical number of cores for your simulation, based on the mesh size and physics being simulated.
Note that you can still manage the resources you use under simulation control and assign a suitable number of cores. For example, if you need to run your simulation faster, you can assign up to 96 cores (only available for users with the Professional plan).
It is also important to remember that the number of cores also relates to the amount of memory available for the calculation. Therefore, if you are manually defining the number of processors, be sure to select a suitable number of cores so you will not run out of memory.
Result controls allow the user to get additional results out of the simulation at a specified write frequency. However, the more results you want to output, the more data needs to be computed and saved. Since this process consumes processing time, be sure to only use the necessary result outputs.
The numerical settings can also influence the number of core hours that you use:
- Relaxation factors: These control the stability and speed of convergence of a simulation. Higher relaxation factors will accelerate the convergence of your simulation, which in turn reduces the core hours burned. However, this will introduce higher fluctuations which can cause inaccuracy in the results or lead to divergence.
- Solver tolerances: Tolerances control the residuals of your simulation. The lower the residuals, the better the results, however, to achieve low residuals more computational resources are required, resulting in more core hours used.
- Numerical schemes: They determine how the equations relevant to your simulation will be solved. First-order schemes are less accurate but will use fewer core hours, resulting in faster convergence as compared to second-order schemes.