fdsrun

How long does an FDS simulation take, and why

fdsrun editorial team · · 5 min read

Cell count, time step, T_END and the split into processes: what drives FDS run time and how to estimate it before you start.

FDS run time breaks down into two factors: the number of time steps needed to reach T_END, and the duration of one step. The first depends on cell size and flow velocity, the second on how many cells sit on the busiest process. Once you understand both, it is easy to tell whether a model will finish in an hour or in three days.

1. How many time steps: the CFL condition

FDS uses an explicit scheme, so the time step must be small enough that the fluid does not cross more than one cell per step. This is the Courant–Friedrichs–Lewy (CFL) condition: CFL = δt·|u|/δx < 1. By default FDS keeps CFL between 0.8 and 1.0 and adjusts the step during the run; the initial step comes from the smallest cell size and the characteristic plume velocity (FDS User Guide, sections 6.2.2 and 19.3.1).

In practice:

2. How long one step takes: cells on the slowest process

Every step FDS updates every cell. When the model is split into several meshes and MPI processes, they compute in parallel, but at the end of each step they wait for the slowest one. So the pace is set not by the total cell count but by the cells on the busiest process (more in the guide on multiple meshes and MPI).

In our measurements (FDS 6.10.1, cloud servers in the EU) one time step took on average about 3–4 µs per cell of the busiest process. That is a good reference for a quick estimate.

3. Example: an estimate in one minute

Model: 1,000,000 cells of 10 cm, 10 meshes of 100,000 cells, 10 MPI processes, T_END=600.

  • step: about 0.02 s → 600 s / 0.02 s = 30,000 steps;
  • one step: 100,000 cells × 3.5 µs ≈ 0.35 s;
  • total: 30,000 × 0.35 s ≈ 10,500 s ≈ 2.9 h.

The same model on one mesh and one process: 1,000,000 × 3.5 µs = 3.5 s per step, about 29 h.

4. Why halving the cell size costs so much

Halving the cell size means 8 times more cells (three dimensions) and roughly a 2 times smaller step. Together that is about 16 times longer on the same number of processes. That is why resolution deserves a deliberate choice — see cell size and D*/δx — with fine meshes only where they are needed (around the fire) and the rest of the domain on coarser meshes at a 2:1 ratio.

5. How to shorten the run without losing quality

Estimate versus reality

Every forecast has a spread: the time step changes during the simulation (fire growth, ventilation start-up), and on shared servers the pace can vary by tens of percent. The most reliable figure comes from the first minutes of the run — CHID.out reports the time step and simulated time, and fdsrun recalculates the forecast from it while the job runs.

More guides

Sources: FDS User Guide (NIST SP 1019), sections 3.3.1, 6.2.2, 19.3.1; fdsrun measurements. FDS and Smokeview are software of the National Institute of Standards and Technology; NIST is not affiliated with fdsrun.

Are you sure?