The Eighteenth International Conference on
Raleigh, North Carolina. September 12-16, 2009.
DDM-VMc :The Data Driven Multithreading Virtual Machine for the Cell Processor
Advisor: Paraskevas Evripidou
Department of Computer Science, University of Cyprus
In this work we present the Data Driven Multithreading Virtual Machine for the Cell Processor (DDM-VMc). Data-Driven Multithreading is a non-blocking multithreading model that decouples the synchronization from the computation portions of a program allowing them to execute asynchronously in a data-flow manner. The core of the DDM model is the Thread Scheduling Unit (TSU) which schedules threads dynamically at runtime based on data availability. DDM-VMc implements the TSU as a software module running on the PPE core of the Cell, allowing the SPE cores to execute the program threads. DDM-VMc utilizes the CacheFlow policies of DDM to provide automatic management of the two memory hierarchies of the Cell.
We present the architecture of DDM-VMc and provide an in-depth performance analysis using a suit of benchmark programs. The evaluation shows that the platform scales well and tolerates scheduling and synchronization overheads effectively. Furthermore, the DDM-VMc platform compares favorably with other platforms targeting the Cell processor. This demonstrates the potential of models like DDM, that combine Data-Flow concurrency with efficient sequential thread execution, to be adopted as the execution model for Multi-Core systems.