RT Journal Article
JF 2007 IEEE 13th International Symposium on High Performance Computer Architecture
YR 2007
VO 00
IS
SP 13
TI Evaluating MapReduce for Multi-core and Multiprocessor Systems
A1 Ramanan Raghuraman,
A1 Christos Kozyrakis,
A1 Arun Penmetsa,
A1 Colby Ranger,
A1 Gary Bradski,
K1 null
AB This paper evaluates the suitability of the MapReduce model for multi-core and multi-processor systems. MapReduce was created by Google for application development on data-centers with thousands of servers. It allows programmers to write functional-style code that is automaticatlly parallelized and scheduled in a distributed system. We describe Phoenix, an implementation of MapReduce for shared-memory systems that includes a programming API and an efficient runtime system. The Phoenix run-time automatically manages thread creation, dynamic task scheduling, data partitioning, and fault tolerance across processor nodes. We study Phoenix with multi-core and symmetric multiprocessor systems and evaluate its performance potential and error recovery features. We also compare MapReduce code to code written in lower-level APIs such as P-threads. Overall, we establish that, given a careful implementation, MapReduce is a promising model for scalable performance on shared-memory systems with simple parallel code.
PB IEEE Computer Society, [URL:http://www.computer.org]
SN
LA English
DO 10.1109/HPCA.2007.346181
LK http://doi.ieeecomputersociety.org/10.1109/HPCA.2007.346181