CERN Accelerating science

 
Serial implementation of the quasistatic algorithm. The beam propagates to the right, its next state is calculated from the head to the tail in a single pass. The picture shows the simulation window during the calculation, the black bar denotes the current layer position.
Parallel implementation of the quasistatic algorithm. The simulation of the $(k+1)$th time step does not have to wait until the $k$th step is calculated in the whole simulation window. Ultrarelativistic approximation enables a second process to start following the first one immediately. This way $N$ processes can form a pipeline, calculating $N$ time steps of the beam in a single pass.
Speedup dependence on the number of CPU cores. The solid lines show theoretical speedup predictions for different values of the fraction of the strictly serial execution ($\beta$); their step-like shape is caused by the fact that the number of time steps is not always divisible by the number of CPU cores. The results suggest that the Karp--Flatt's metric~\cite{karp1990measuring} (actually obtained value of $\beta$) is less than 0.5\% for most of the runs.