PS3 Cell Cluster for scientific computing

Project mission

project sponsers at ETH Zurich  
The main objective of this project is to build a cost-effective Cell prototype cluster for scientific computing out of Playstation 3 (PS3) consoles. We want to learn how to code and to optimize the Cell for scientific applications, e.g. we intend to implement elements of a MPI based parallel-parallel high-precision floating point library (basic arithmetical operations in 128 bit precision) on it. The experiences of this work will enter into a potential study for an upscaling of such a cluster. Experiences and code are portable to a future Cell based cluster (out of IBM Cell Blade Servers or similar).

The Cell processor and its potential for scientific computing

Cell processor
The Cell chip (Picture: IBM)
The Cell processor was developed with the joint cooperation of Sony Computer Entertainment, Toshiba Corporation, and IBM to provide a new, high performance CPU for gaming and general purpose computing. It saw its first application in the Sony Playstation 3 in 2006. The Cell is particularly unique as a general purpose CPU. The die has one Power Processor Element (PPE), commonly found in Apple hardware, and eight Synergistic Processing Elements (SPEs). Each SPE is a much simplified version of the PPE but is specifically designed for processing large amounts of data very quickly. Each SPE has its own local memory unit but the software must be designed to request a transfer between main memory and local memory; no cache unit exists on the SPE. With eight such SPEs, tasks can be parallelized to achieve very high performance. The prospect of using the Cell in scientific computing is exciting and there are already plans from IBM to build the Roadrunner supercomputer based on the Cell processor. But while the PPE and the SPEs support double-precision computation, scientific applications often require even higher precision. Many libraries have already been developed to address this issue on desktop computers but since the Cell processor is relatively new, no such library exists that can take full advantage of its capabilities. There are also many different approaches to high precision. Some libraries offer arbitrary precision at the expense of memory and performance. Such libraries certainly have their place but are often more general than is necessary. Other libraries offer greater precision than the hardware with techniques that combine several basic data types.

The efforts and contributions of the researchers (like Stanford's Folding@home or the PS3 grid project) and industry leaders are necessary for success. By entering into this new field now, standards and applications can be developed that will guide future computing progress.