Search
Enter Keywords:
Monday, 12 May 2008
Home arrow Cell Programming
Cell Programming PDF Print E-mail
Wednesday, 01 June 2005
This article is based on information from Sony's GDC '05 presentation on the Cell processor.

The Cell processor consists of one PowerPC core (PPE) and 8 SPE cores. The Sony presentation uses a musical analogy when describing a Cell-based programming paradigm: The SPE's are like the orchestra, and the PPE is the conductor.

Each SPE has greater bandwidth and performance than the PPE. They should be used for frequently repeated tasks with good data locality (i.e. relatively small, independent data, probably something encapsulated in an OO container of some kind that isn't updated very often).

The PPE is responsible for controlling and setting up global synchronization of the Cell. The operating system runs on the PPE, allocating resources, controlling devices and providing essential system services. The PPE should be used for less frequently repeated tasks with more random access data.

There are a finite number of SPE's, but the OS will support virtualization, allowing a logical view of more SPE's than the hardware supports. This will allow more tasks, flexible scaling and sharing of resources, and a simple API (a "fire and forget" method of assigning processing tasks to SPE's, using job queues). Management of SPE resources is also allowed at the application level -- middleware and engine technology can potentially supply this code.

Self-multitasking at the SPE level is also discussed within the presentation, along with some other interesting details. Highly recommended reading for anyone interested in how developers will be able to take on the complex task of Cell programming.

Sony GDC '05 Presentation

© 2005 PS3dev. All rights reserved.