Characterizing and Mitigating Work Time Inflation in Task Parallel Programs
- Department of Computer Science, University of North Carolina at Chapel Hill, Chapel Hill, NC, USA
- Lawrence Livermore National Laboratory, Livermore, CA, USA
Task parallelism raises the level of abstraction in shared memory parallel programming to simplify the development of complex applications. However, task parallel applications can exhibit poor performance due to thread idleness, scheduling overheads, and work time inflation – additional time spent by threads in a multithreaded computation beyond the time required to perform the same work in a sequential computation. We identify the contributions of each factor to lost efficiency in various task parallel OpenMP applications and diagnose the causes of work time inflation in those applications. Increased data access latency can cause significant work time inflation in NUMA systems. Our locality framework for task parallel OpenMP programs mitigates this cause of work time inflation. Our extensions to the Qthreads library demonstrate that locality-aware scheduling can improve performance up to 3X compared to the Intel OpenMP task scheduler.
- Sponsoring Organization:
- USDOE
- Grant/Contract Number:
- AC52-07NA27344
- OSTI ID:
- 1197887
- Journal Information:
- Scientific Programming, Journal Name: Scientific Programming Journal Issue: 3-4 Vol. 21; ISSN 1058-9244
- Publisher:
- Hindawi Publishing CorporationCopyright Statement
- Country of Publication:
- Egypt
- Language:
- English
Similar Records
Critical Path-Based Thread Placement for NUMA Systems
Critical Path-Based Thread Placement for NUMA Systems