Research

 

CSI ]   [ ETH ]


Lab Manager ]

LST Home ]     [ People ]     [ Research ]     [ Teaching ]
[ Publications ]     [ Research Opportunities ]     [ Partners & Supporters ]     [ Earlier Work ]

CellVM: A Homogeneous Virtual Machine Runtime System for a Heterogeneous Single-Chip Multiprocessor

Albert Noll,  Andreas Gal,  Michael Franz,  CellVM: A Homogeneous Virtual Machine Runtime System for a Heterogeneous Single-Chip Multiprocessor, Workshop on Cell Based Systems and Applications (WCSA 2008), June 2008. [WCSA_2008.pdf]
The Cell Broadband Engine Architecture (Cell) is a hardware platform for high performance parallel computing. Due to its architectural features and programming model, efficiently programming the Cell processor implies a detailed knowledge of the underlying hardware architecture, carefully designed communication protocols to minimize the synchronization and communication overhead between the individual processing units as well as an elaborate layout of the vector s local stores. In order to take the burden from the programmer of having to deal with such low-level architecture-specific details, the Cell compiler toolchain implements the OpenMP standard, which allows for seamless parallelization of applications by offloading workloads to the SPEs. In this paper we report on the design and implementation of a middleware for the Cell processor that goes one step further and completely abstracts the heterogeneity of the underlaying hardware architecture and allows programmers to employ higher-level and more intuitive programming constructs than the OpenMP approach. In particular, we implemented a virtual machine (VM) that mimics the behavior of a homogeneous, shared-memory multiprocessor. Internally, our VM schedules individual threads to be executed on the vector cores which offers the same parallelism as compared to the traditional programming models of the Cell processor/
[ Publications ]     [ Research Opportunities ]     [ Partners & Supporters ]     [ Earlier Work ]