• DocumentCode
    2352343
  • Title

    The uintah framework: a unified heterogeneous task scheduling and runtime system

  • Author

    Qingyu Meng ; Humphrey, Alan ; Berzins, Martin

  • Author_Institution
    Sci. Comput. & Imaging Inst., Univ. of Utah, Salt Lake City, UT, USA
  • fYear
    2012
  • fDate
    10-16 Nov. 2012
  • Firstpage
    2441
  • Lastpage
    2448
  • Abstract
    The development of a new unified, multi-threaded runtime system for the execution of asynchronous tasks on heterogeneous systems is described in this work. These asynchronous tasks arise from the Uintah framework, which was developed to provide an environment for solving a broad class of fluid-structure interaction problems on structured adaptive grids. Uintah has a clear separation between its MPI-free user-coded tasks and its runtime system that ensures these tasks execute efficiently. This separation also allows for complete isolation of the application developer from the complexities involved with the parallelism Uintah provides. While we have designed scalable runtime systems for large CPU core counts, the emergence of heterogeneous systems, with additional on-node accelerators and co-processors presents additional design challenges in terms of effectively utilizing all computational resources on-node and managing multiple levels of parallelism. Our work addresses these challenges for Uintah by the development of new hybrid runtime system and Unified multi-threaded MPI task scheduler, enabling Uintah to fully exploit current and emerging architectures with support for asynchronous, out-of-order scheduling of both CPU and GPU computational tasks. This design coupled with an approach that uses MPI to communicate between nodes, a shared memory model on-node and the use of novel lock-free data structures, has made it possible for Uintah to achieve excellent scalability for challenging fluid-structure problems using adaptive mesh refinement on as many as 256K cores on the DoE Jaguar XK6 system. This design has also demonstrated an ability to run capability jobs on the heterogeneous systems, Keeneland and TitanDev. In this work, the evolution of Uintah and its runtime system is examined in the context of our new Unified multi-threaded scheduler design. The performance of the Unified scheduler is also tested against previous Uintah scheduler and runtime designs over - range of processor core and GPU counts.
  • Keywords
    application program interfaces; data structures; message passing; multi-threading; processor scheduling; shared memory systems; CPU core counts; DoE Jaguar XK6 system; GPU computational tasks; Keeneland; MPI-free user-coded tasks; TitanDev; Uintah framework; adaptive mesh refinement; asynchronous out-of-order scheduling; asynchronous task execution; coprocessors; fluid-structure interaction problems; heterogeneous systems; hybrid runtime system; lock-free data structures; multithreaded runtime system; on-node accelerators; shared memory model on-node; structured adaptive grids; unified heterogeneous task scheduling; unified multithreaded MPI task scheduler design;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    High Performance Computing, Networking, Storage and Analysis (SCC), 2012 SC Companion:
  • Conference_Location
    Salt Lake City, UT
  • Print_ISBN
    978-1-4673-6218-4
  • Type

    conf

  • DOI
    10.1109/SCC.2012.6674233
  • Filename
    6674233