Why use parallel PHOENICS?

There are two principal reasons for using parallel rather than sequential PHOENICS. They are:

  • to obtain computational results in a shorter time, and
  • to use finer grids than a single processor permits.

The parallel solver shares the computational domain and task between a number processors; each processor then performs the computations for its part of the domain simultaneously. Thus the whole task may be achieved in a shorter time.

In theory, the more processors used, the shorter the computer time will be. The following table shows the speed-up achieved when carrying out computations on a model with 20 million cells.

Parallel speed up


It can be seen that there is not a linear relationship between the number of processors and the speed-up ratio. This is because for each additional processor added to the computation pool, there is an additional overhead. Eventually a limit will be reached whereby adding additional processors does not lead to a faster solution time. What this limit is depends on the computational domain under consideration.


What is PHOENICS parallel

The EARTH module uses most of the computing time and therefore it is only this part of PHOENICS, which is ported to the parallel computer. The strategy employed is grid-partitioning (also called domain decomposition), whereby the computational domain is divided into sub-domains, each of which is assigned to a particular processor having its own identical copy of the EARTH executable. During the computation, each processor exchanges information with its neighbours at the appropriate times.

In the parallel-EARTH implementation, a single processor controls the input/output, acting as a server to the other processes; this is called the 'Master' processor (PROC-0).

Its main input operation is the reading from disk of the problem-defining data files, and the broadcasting of the appropriate information to the other processes. In parallel, each process extracts information specific to the sub-domain it belongs to and continues with the solution procedure.

At the end of computations, the results from each processor are sent to the Master, there to be which are re-assembled and written on the disk as a single PHI file, exactly as in a sequential run; an option for writing individual PHI files also exists.

A single RESULT file is also written by the Master processer; there is also an option for writing individual RESULT files).


For more information see: