Assessment of offload-based programming environments for hybrid CPU–MIC platforms in numerical modeling of solidification - Halbiniak, Kamil; Wyrzykowski, Roman; Szustak, Lukasz; Olas, Tomasz (Simulation modelling practice and theory, 2018)
•Approach for porting and optimizing applications on hybrid CPU–MIC platforms.•This approach allows optimizing communication and utilization of CPUs and MICs.•Evaluating four offload programming environments for solidification modeling.•Three of them are able to adapt to expansion of resources, with different efficiency.•Benchmarking the application on platform with multiple KNL processors. Heterogeneous (or hybrid) computing platforms with Intel Xeon Phi accelerators offer potential advantages of energy efficient, massively parallel computing, while supporting parallel programming models familiar for users of multicore CPUs. However, realizing this potential for real-world applications still remains a challenging issue. The main goal of this paper is the suitability assessment of offload-based programming environments for porting a real-life scientific application to hybrid platforms with Intel KNC and KNL accelerators, assuming no significant modifications of the application code. The main criterion of this assessment is the application performance. The evaluated environments include: 1) Intel Offload coupled with OpenMP, 2) OpenMP 4.0 and 3) OpenMP 4.5 Accelerator Models, and 4) hStreams Library with OpenMP. A real-life application dedicated to the numerical modeling of alloy solidification is used as a testbed in the assessment. An experimental evaluation of the four versions of the application code for a platform with KNC coprocessors shows that excluding OpenMP 4.0, the rest of them are able to adapt to expansion of available resources, however, with different efficiency. While the shortest execution time is achieved for Intel Offload, the high-level abstractions of hStreams contribute considerably to making porting and tuning the application easier, with low performance overheads in comparison to the low-level Intel Offload extension. Benchmarking the application performance and scalability on a platform with multiple KNL processors, using the Offload over Fabric technology with Intel Offload and OpenMP 4.5, concludes the assessment.