
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
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.