HAM - Heterogenous Active Messages for Efficient Offloading on the Intel Xeon Phi
- The applicability of accelerators is limited by the attainable speed-up for the offloaded computations and by the offloading overheads. While GPU programming models like CUDA and OpenCL only allow to optimise the application code and its speed-up, the available low-level APIs for the Intel Xeon Phi provide opportunity to address the overheads, too. This work presents an Heterogeneous Active Message (HAM) layer that minimises software overheads for offloading on Intel’s Xeon Phi. It provides the basis for an offload API with similar semantics as the Intel Language Extensions for Offload (LEO). In contrast to LEO, HAM works within the C++ language and needs no additional compiler support. We evaluated HAM on top of SCIF and MPI as communication backends. While the SCIF backend offers the best performance, the MPI backend allows for inter-node offloads which are not possible with other offload solutions.
Benchmark results show that the cost for offloading a function call can be
decreased by a factor up to 18 compared with LEO.
|Tag:||Active message; HAM; Intel Xeon Phi; LEO; MIC; MPI; Offloading; SCIF|
|CCS-Classification:||I. Computing Methodologies|
|Date of first Publication:||2014/06/10|
|Series (Serial Number):||ZIB-Report (14-23)|