To port a shared-memory implementation of MapReduce to the StarSs programming model.
MapReduce was originally created by Google in order to support distributed computing on clusters of computers.
A Stanford University researchers team implemented MapReduce for shared-memory systems in a project named "Phoenix" (http://mapreduce.stanford.edu/), and published a paper regarding it in the 2007 Symposium on High Performance Computer Architecture (HPCA). Phoenix contains a programming API that requires implementation of 3-5 functions by the programmer (the implementation of the desired application), and contains a runtime environment which runs theses functions and handles parallelization and concurrency automatically. By that, Phoenix is an easy and stable parallel programing tool.
StarSs is a parallel programming model based on DataFlow programming.
Our goal is to port the implementation of Phoenix and/or other libraries which followed Phenix and were inspired by it, to the StarSs programming model while reserving the performance of the library.
Table of Contents