• DocumentCode
    2175720
  • 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
  • fYear
    2010
  • fDate
    17-19 Feb. 2010
  • Firstpage
    205
  • Lastpage
    212
  • 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;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Parallel, Distributed and Network-Based Processing (PDP), 2010 18th Euromicro International Conference on
  • Conference_Location
    Pisa
  • ISSN
    1066-6192
  • Print_ISBN
    978-1-4244-5672-7
  • Electronic_ISBN
    1066-6192
  • Type

    conf

  • DOI
    10.1109/PDP.2010.24
  • Filename
    5452492