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.
[1]
Cristiana Bentes,et al.
Irregular Grid Raycasting Implementation on the Cell Broadband Engine
,
2009,
2009 21st International Symposium on Computer Architecture and High Performance Computing.
[2]
Henry Fuchs,et al.
Frameless rendering: double buffering considered harmful
,
1994,
SIGGRAPH.
[3]
Daniel A. Brokenshire.
Maximizing the power of the Cell Broadband Engine processor : 25 tips to optimal application performance Level : Intermediate
,
2007
.
[4]
H. Peter Hofstee,et al.
Introduction to the Cell multiprocessor
,
2005,
IBM J. Res. Dev..
[5]
Matthew Scarpino,et al.
Programming the Cell Processor: For Games, Graphics, and Computation
,
2008
.
[6]
Samuel Williams,et al.
The potential of the cell processor for scientific computing
,
2005,
CF '06.