Unleashing the Power of the Playstation 3 to Boost Graphics Programming

This tutorial is intended for programmers who are interested in boosting their graphics application using a different architectural paradigm: the Cell Broadband Engine (Cell~BE). Our main idea is to focus on performance issues that can be efficiently handled by the multicore and vector facilities of the Cell~BE. We aim to offer to programmers an alternative way for high-performance graphics rather than the use of Graphics Processing Units (GPUs). The Cell~BE processor is the first implementation of a chip multiprocessor with a significant number of general purpose programmable cores. It is a heterogeneous multicore chip capable of massive floating point processing optimized for computation-intensive workloads that opens up the possibility of implementing highly parallel graphics application on a single chip. Our goal in this tutorial is to introduce the Cell~BE Architecture, show the main differences in its programming model, describe its development environment, and give some step-by-step examples of Cell~BE programs. We also introduce the usage of a Playstation 3 (PS3) as a high-performance Cell platform.