## 4 Discussion  
In this section, to discuss the optimization effect in more detail, comprehensive experiments are conducted to evaluate the performance of the swHPFM parallel framework, and the kernel functions, namely, the Original quantity, Residual, Source term, Parameter rotation, Viscous flux, and Convective flux functions, were optimized and executed on the Tianhe-2A supercomputer, which uses Intel Xeon E5-2692v2 12-core 2.2-GHz processors, and on the Sunway TaihuLight under two different workloads. First, without any optimization, the algorithm program was run on the Tianhe-2A supercomputer and on the Sunway TaihuLight supercomputer. If the codes run directly on the SW26010 processor, then only the MPE can be used. As shown in Table 5, under the workload of 393,216 grids of each node, compared with the Intel Xeon E5-2692v2 processor, the kernel functions have an average performance reduction of 6.058\(\times\), in which the convective flux decreases to 7.119\(\times\). These data demonstrate the urgency of optimizing the code, according to the features of the SW26010 processors. Figure 15a plots the runtimes of the kernel functions, Original quantity, Residual, and Source term, on the Intel and SW26010 processors under the 393,216-grid workload. A common feature of these functions is that they only update inner data and have no data dependence in their instructions. For the Original quantity function, the SAS optimization achieves 5.343\(\times\) speedup, compared to the unoptimized codes, which can only run on the MPE of the SW26010 processors. On this basis, vectorization optimization obtains 8.362\(\times\) speedup, compared to the unoptimized code. Finally, the swHPFM is 1.546 times faster than the Intel Xeon E5 processor. For the Residual function, SAS achieves 4.615\(\times\) speedup, compared to the unoptimized codes. On this basis, after vectorization, a speedup of 7.966\(\times\) is developed, compared to the unoptimized code. Overall, the swHPFM is 1.154 times faster than the Intel Xeon E5 processor. For the Source term function, SAS obtains a 4.923\(\times\) speedup. On this basis, vectorization obtains a 8.315\(\times\) speedup. The swHPFM is 1.342 times faster than the Intel Xeon E5 processor. Since the Original quantity function requires fewer parameters, it achieves a higher speedup. Figure 15b plots the runtimes of the kernel functions Parameter rotation, Viscous flux, and Convective flux, on the Intel and SW26010 processors under a 393,216-grid workload. The common feature of these functions is that they are used for stencil computing. For the Parameter rotation function, the SRC achieves 4.262\(\times\) speedup, compared to the original codes. On this basis, vectorization yields a 6.955\(\times\) speedup compared to the unoptimized code. Overall, the swHPFM is 1.283 times faster than the Intel Xeon E5 processor. For the Viscous flux function, SRC obtains a 4.043\(\times\) speedup compared to the unoptimized codes. On this basis, vectorization obtains a 5.616\(\times\) speedup, compared to the unoptimized code. Finally, the swHPFM is 1.059 times faster than the Intel Xeon E5 processor. For the Convective flux function, SRC yields a 4.676\(\times\) speedup. On this basis, vectorization obtains a 7.336\(\times\) speedup. The swHPFM is 1.031 times faster than the Intel Xeon E5 processor. Since the Original quantity function requires fewer parameters, it realizes a higher speedup. \begin{table}
\begin{tabular}{c c c c} \hline \hline
**Kernel Function** & **SW26010 (s)** & **Intel Xeon E5 (s)** & **Performance Degradation** \\ \hline _Original quantity_ & 0.160477 & 0.029675 & 5.407818 \\ _Residual_ & 0.612526 & 0.088771 & 6.900069 \\ _Source term_ & 1.021608 & 0.164854 & 6.197023 \\ _Parameter rotation_ & 0.174760 & 0.032232 & 5.421941 \\ _Viscous flux_ & 1.386930 & 0.261435 & 5.305065 \\ _Convective flux_ & 0.884039 & 0.124187 & 7.118611 \\ \hline \hline \end{tabular}
\end{table} 
Table 5: Kernel function runtimes on 393,216 grids.