Integrated execution: A programming model for accelerators
by M. Gschwind
The Cell Broadband Engine® (Cell/B.E.) processor was designed to provide a mix of central cores for control code and accelerators optimized for data processing. A heterogeneous design allows different processor elements to be optimized for specific functions and makes each processor element more area and power efficient. Cell/B.E. processor-based systems are the most powerful and the most power-efficient systems in the world, as represented by the Top500™ and Green500 lists. This paper offers a new view of the architectural design choices that were made in consideration of
software usability and application development for the Cell/B.E.
processor. Specifically, we explore the concept of integrated
executables that allow a single application to execute across
multiple heterogeneous processor elements. Hardware and
software architectures were co-optimized to allow an application
executing on multiple heterogeneous cores to efficiently
communicate and share data, which is key to exploiting chip
multiprocessors with ever-increasing numbers of cores.