Sciweavers

CISIS
2010
IEEE

Automatic Offloading of C++ for the Cell BE Processor: A Case Study Using Offload

13 years 8 months ago
Automatic Offloading of C++ for the Cell BE Processor: A Case Study Using Offload
Offload C++ is an extended version of the C++ language, together with a compiler and runtime system, for automatically offloading general-purpose C++ code to run on the Synergistic Processor Elements (SPEs) of the Cell Broadband Engine (BE) processor. We introduce Offload C++ by presenting a case study using the approach to offload parts of an image processing application. The case study introduces the language extensions; illustrates the core technology on which the technique is based: automatic call-graph duplication, and automatic generation of data-movement code; shows how parallelism can be achieved by offloading work to multiple SPEs simultaneously, while the Power Processor Element (PPE) core simultaneously performs additional work; and demonstrates our solutions to dealing with complex language features such as function pointers and multiple compilation units. Keywords-Multicore programming; Cell BE; compilers; call graph analysis
Alastair F. Donaldson, Uwe Dolinsky, Andrew Richar
Added 02 Sep 2010
Updated 02 Sep 2010
Type Conference
Year 2010
Where CISIS
Authors Alastair F. Donaldson, Uwe Dolinsky, Andrew Richards, George Russell
Comments (0)