• DocumentCode
    2440382
  • Title

    Executing task graphs using work-stealing

  • Author

    Agrawal, Kunal ; Leiserson, Charles E. ; Sukha, Jim

  • Author_Institution
    Washington Univ. in St Louis, St. Louis, MO, USA
  • fYear
    2010
  • fDate
    19-23 April 2010
  • Firstpage
    1
  • Lastpage
    12
  • Abstract
    NABBIT is a work-stealing library for execution of task graphs with arbitrary dependencies which is implemented as a library for the multithreaded programming language Cilk++. We prove that Nabbit executes static task graphs in parallel in time which is asymptotically optimal for graphs whose nodes have constant in-degree and out-degree. To evaluate the performance of Nabbit, we implemented a dynamic program representing the Smith-Waterman algorithm, an irregular dynamic program on a two-dimensional grid. Our experiments indicate that when task-graph nodes are mapped to reasonably sized blocks, Nabbit exhibits low overhead and scales as well as or better than other scheduling strategies. The Nabbit implementation that solves the dynamic program using a task graph even manages in some cases to outperform a divide-and-conquer implementation for directly solving the same dynamic program. Finally, we extend both the Nabbit implementation and the completion-time bounds to handle dynamic task graphs, that is, graphs whose nodes and edges are created on the fly at runtime.
  • Keywords
    directed graphs; divide and conquer methods; dynamic programming; multi-threading; software libraries; specification languages; Cilk++ language; NABBIT; Smith-Waterman algorithm; constant in-degree; divide-and-conquer implementation; irregular dynamic program; multithreaded programming language; out-degree; static task graph; task-graph node; two-dimensional grid; work-stealing library; Computer interfaces; Computer languages; Concurrent computing; Dynamic scheduling; Heuristic algorithms; Libraries; Multithreading; Parallel processing; Processor scheduling; Runtime; Cilk; dag; dynamic multithreading; parallel computing; work/span analysis;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Parallel & Distributed Processing (IPDPS), 2010 IEEE International Symposium on
  • Conference_Location
    Atlanta, GA
  • ISSN
    1530-2075
  • Print_ISBN
    978-1-4244-6442-5
  • Type

    conf

  • DOI
    10.1109/IPDPS.2010.5470403
  • Filename
    5470403