High Performance Embedded Architectures and Compilers

Volume 5409 of the series Lecture Notes in Computer Science pp 216-230

Mapping and Synchronizing Streaming Applications on Cell Processors

  • Maik NijhuisAffiliated withVrije Universiteit
  • , Herbert BosAffiliated withVrije Universiteit
  • , Henri E. BalAffiliated withVrije Universiteit
  • , Cédric AugonnetAffiliated withINRIA - LaBRI, Université Bordeaux 1

* Final gross prices may vary according to local VAT.

Get Access


Developing streaming applications on heterogenous multi-processor architectures like the Cell is difficult. Currently, application developers need to know about hardware details to deal with issues like scheduling, memory management and communication/synchronization. Worse, with multiple alternatives for communication available, developers spend significant time picking the most appropriate one. A poor choice often results in bad performance. With Cell-Space, we shield users from hardware details without compromising performance. Its runtime is based on an evaluation of the different communication primitives. In Cell-Space, developers specify a streaming application as a data flow graph of interacting components. Both task- and data-parallelism are easily expressed and advanced features such as dynamic reconfiguration are fully supported. Beneath a simple interface we include a slew of optimizations not present in other Cell run time environments. We demonstrate the impact of these optimizations and show that Cell-Space applications can efficiently exploit the resources offered by the Cell.