Title :
Dynamic Task Scheduling and Load Balancing on Cell Processors
Author :
Hoffmann, Ralf ; Prell, Andreas ; Rauber, Thomas
Author_Institution :
Dept. of Comput. Sci., Univ. of Bayreuth, Bayreuth, Germany
Abstract :
The shift to multicore processors demands efficient parallel programming on a diversity of architectures, including homogeneous and heterogeneous chip multiprocessors (CMPs). Task parallel programming is one approach that maps well to CMPs. In this model, the programmer focuses on identifying parallel tasks within an application, while a runtime system takes care of managing, scheduling, and balancing the tasks among a number of processors or cores. Heterogeneous CMPs, such as the Cell Broadband Engine, present new challenges to task parallel programming and corresponding runtime systems. In this paper, we present a library based on task pools for dynamic task scheduling and load balancing on Cell processors. In contrast to other approaches, our task pools include support for creating tasks using the Synergistic Processing Elements (SPEs), which enables the implementation of a wide range of task parallel applications. Our experiments show that task pools provide flexible and efficient support for task parallel programming on Cell processors. In addition, we show that offloading the process of task creation from the PPE to the SPEs provides much potential for exploiting fine-grained parallelism.
Keywords :
dynamic scheduling; multiprocessing systems; parallel architectures; parallel programming; processor scheduling; program processors; resource allocation; software libraries; CMP; PPE; SPE; architecture diversity; cell processors; dynamic task scheduling; fine-grained parallelism; heterogeneous chip multiprocessors; homogeneous chip multiprocessors; library; load balancing; multicore processors; power processing element; runtime system; synergistic processing elements; task parallel programming; task pools; Dynamic scheduling; Job shop scheduling; Libraries; Load management; Multicore processing; Parallel processing; Parallel programming; Processor scheduling; Programming profession; Yarn; Cell processor; Task parallelism; dynamic load balancing; task pools;
Conference_Titel :
Parallel, Distributed and Network-Based Processing (PDP), 2010 18th Euromicro International Conference on
Conference_Location :
Pisa
Print_ISBN :
978-1-4244-5672-7
Electronic_ISBN :
1066-6192
DOI :
10.1109/PDP.2010.24