# Efficient and Scalable Initialization of Partitioned Coupled Simulations with preCICE
## 4 Performance Results
### Performance Analysis
#### 4.3.1 Strong Scaling
We observe that the indexing, i.e., the neighbor search for triangles as required in the nearest projection mapping, is more expensive than the indexing of edges. This is due to the fact that triangles are more expensive to efficiently index. Furthermore, the lazy indexing strategy prevented the unnecessary indexing of the vertices. Note, that the current test setup performs a vertex-based partitioning of input meshes, which discards edges and triangles connecting partitions. The amount of triangles and edges discarded grows proportionally to the number of partitions. See Table 2 for a detailed presentation of this effect. For the further analysis of the performance of the two-level scheme, we present the initialization time breakdown in Figure 11 for the case that coupling solvers use non-matching meshes. For this experiment, we use mesh M5 for solver A and M6 for solver B. Figure 11 shows, that, even for a finer mesh, the bounding box comparison and feedback are still the most expensive components. The time spent for bounding box communication also increases with increasing number of cores. The cost for these two components is similar to the case with mesh M4 (Figure 10), since the bounding box related cost depends solely on the number of bounding boxes. In addition, we observe a gradual increase in the mesh communication time, which is probably due to a larger communication overhead for the cases with higher core number and, thus, an increasing overall number of messages. The mesh communication time is higher than for the case with mesh M4, which is due to the larger mesh. The most interesting component in this figure is the mapping computation. Even though we use a much finer mesh in this experiment than in Figure 10), the computation time is significantly smaller. For a detailed analysis of the mapping computation time, we present the breakdown for this case as well in Figure 12. The figure shows the expected scaling for the overall compute time as well as the individual indexing as all parts are of complexity \(O(n\log(n))\) if \(n\) is the respective number of mesh entities in each mesh partition. The lazy evaluation is beneficial for the smallest number of cores and, thus, the largest partitions, as it prevents \begin{table}
\begin{tabular}{r r r r r r r} \hline  & \multicolumn{1}{c}{**Cores**} & \multicolumn{1}{c}{**M4**} & \multicolumn{1}{c}{**M6**} \\ \hline
**Total** & **B** & **A** & **Lost Triangles** & **Rel [\%]** & **Lost Triangles** & **Rel [\%]** \\ \hline
768 & 192 & 576 & 44,244 & 3.52 & 90,195 & 1.52 \\
1536 & 384 & 1152 & 62,003 & 4.93 & 154,358 & 2.61 \\
3072 & 768 & 2304 & 86,085 & 6.85 & 246,937 & 4.17 \\
6144 & 1536 & 4608 & 118,313 & 9.41 & 376,108 & 6.35 \\
12,288 & 3072 & 9216 & 165,085 & 13.13 & 552,797 & 9.33 \\
24,576 & 6144 & 18,432 & 230,556 & 18.34 & 797,042 & 13.45 \\ \hline \end{tabular}
\end{table} 
Table 2: Number of triangles of mesh 4 and mesh M6 that are discarded due to the vertex-based partitioning (in absolute and relative values). The original mesh M4 contains 1,257,391 triangles and the original M6 mesh contains 5,924,260 triangles. the generation of the vertex index. Higher numbers of cores, in particular 6144 and 12,288, result in partitions, which are small enough for the indexing time to reach the measurement resolution of 1 ms. However, the decreasing query time still indicates the expected behavior due to smaller partitions. Larger meshes and a potentially smaller measurement resolution are required for a conclusive analysis of the upper extreme of the scale. Figure 11: Strong scalability measurements: Initialization time breakdown for the two-level initialization approach using mesh M5 for solver A and mesh M6 for B. Only parts significantly contributing to the runtime are depicted: 1—Bounding box comparison and feedback (Figure 1 levels IV and V). 2—Mesh communication (Figure 2 levels II). 3—Bounding box communication (Figure 1 levels II and III). 4—Compute nearest projection mapping (Figure 2 level II).