16421

OpenCL + OpenSHMEM Hybrid Programming Model for the Adapteva Epiphany Architecture

David Richie, James Ross
Brown Deer Technology, Forest Hill, MD 21050, USA
arXiv:1608.03549 [cs.DC], (11 Aug 2016)

@article{richie2016opencl,

   title={OpenCL + OpenSHMEM Hybrid Programming Model for the Adapteva Epiphany Architecture},

   author={Richie, David and Ross, James},

   year={2016},

   month={aug},

   archivePrefix={"arXiv"},

   primaryClass={cs.DC}

}

There is interest in exploring hybrid OpenSHMEM + X programming models to extend the applicability of the OpenSHMEM interface to more hardware architectures. We present a hybrid OpenCL + OpenSHMEM programming model for device-level programming for architectures like the Adapteva Epiphany many-core RISC array processor. The Epiphany architecture comprises a 2D array of low-power RISC cores with minimal uncore functionality connected by a 2D mesh Network-on-Chip (NoC). The Epiphany architecture offers high computational energy efficiency for integer and floating point calculations as well as parallel scalability. The Epiphany-III is available as a coprocessor in platforms that also utilize an ARM CPU host. OpenCL provides good functionality for supporting a co-design programming model in which the host CPU offloads parallel work to a coprocessor. However, the OpenCL memory model is inconsistent with the Epiphany memory architecture and lacks support for inter-core communication. We propose a hybrid programming model in which OpenSHMEM provides a better solution by replacing the non-standard OpenCL extensions introduced to achieve high performance with the Epiphany architecture. We demonstrate the proposed programming model for matrix-matrix multiplication based on Cannon’s algorithm showing that the hybrid model addresses the deficiencies of using OpenCL alone to achieve good benchmark performance.
No votes yet.
Please wait...

Recent source codes

* * *

* * *

HGPU group © 2010-2017 hgpu.org

All rights belong to the respective authors

Contact us: