The Community for Technology Leaders
2008 International Conference on Parallel Architectures and Compilation Techniques (PACT) (2008)
Toronto, ON, Canada
Oct. 25, 2008 to Oct. 29, 2008
ISBN: 978-1-5090-3021-7
pp: 303-314
Jaejin Lee , School of Computer Science and Engineering, Seoul National University, Korea
Sangmin Seo , School of Computer Science and Engineering, Seoul National University, Korea
Chihun Kim , School of Computer Science and Engineering, Seoul National University, Korea
Junghyun Kim , School of Computer Science and Engineering, Seoul National University, Korea
Posung Chun , School of Computer Science and Engineering, Seoul National University, Korea
Zehra Sura , IBM Thomas J. Watson Research Center, Yorktown Heights, New York, USA
Jungwon Kim , School of Computer Science and Engineering, Seoul National University, Korea
SangYong Han , School of Computer Science and Engineering, Seoul National University, Korea
ABSTRACT
The Cell BE processor is a heterogeneous multicore that contains one PowerPC Processor Element (PPE) and eight Synergistic Processor Elements (SPEs). Each SPE has a small software-managed local store. Applications must explicitly control all DMA transfers of code and data between the SPE local stores and the main memory, and they must perform any coherence actions required for data transferred. The need for explicit memory management, together with the limited size of the SPE local stores, makes it challenging to program the Cell BE and achieve high performance. In this paper, we present the design and implementation of our COMIC runtime system and its programming model. It provides the program with an illusion of a globally shared memory, in which the PPE and each of the SPEs can access any shared data item, without the programmer having to worry about where the data is, or how to obtain it. COMIC is implemented entirely in software with the aid of user-level libraries provided by the Cell SDK. For each read or write operation in SPE code, a COMIC runtime function is inserted to check whether the data is available in its local store, and to automatically fetch it if it is not. We propose a memory consistency model and a programming model for COMIC, in which the management of synchronization and coherence is centralized in the PPE. To characterize the effectiveness of the COMIC runtime system, we evaluate it with twelve OpenMP benchmark applications on a Cell BE system and an SMP-like homogeneous multicore (Xeon).
INDEX TERMS
Microprocessors, Coherence, Programming, Software, Runtime, Multicore processing,Cell BE, Software Distributed Shared Memory, Software Shared Virtual Memory, Heterogeneous Multicores, OpenMP
CITATION
Jaejin Lee, Sangmin Seo, Chihun Kim, Junghyun Kim, Posung Chun, Zehra Sura, Jungwon Kim, SangYong Han, "COMIC: A coherent shared memory interface for cell BE", 2008 International Conference on Parallel Architectures and Compilation Techniques (PACT), vol. 00, no. , pp. 303-314, 2008, doi:
89 ms
(Ver 3.3 (11022016))