# Computation Scaling

The Computation Scaling (CompS) computes the ratios of total time in useful computation summed over all processes.

For strong scaling (i.e., problem size is constant) it is the ratio of total time in useful computation for a reference case (e.g., on 1 process or 1 compute node) to the total time as the number of processes (or nodes) is increased. For CompS to have a value of 1, this time must remain constant regardless of the number of processes.

Insight into possible causes of poor computation scaling can be investigated using metrics devised from processor hardware counter data. The three causes of poor computational scaling are: 1) Dividing work over additional processes increases the total computation required; 2) Using additional processes leads to contention for shared resources; and 3) Hardware might run at different frequency for subsequent runs.

We investigate these three causes by analysing the Instruction Scaling (IS), the Instructions Per Cycle Scaling (IPCS), and Frequency Scaling (FS). And we compute the Computation Scaling as the product of all these metrics:

$CompS = IS \times IPCS \times FS$

In order to fully understand the formulas, you may also visit the glossary of the metrics terms.

Related programs: FFTXlib ·