DOE OSTI · 1393474
Work stealing for GPU-accelerated parallel programs in a global address space framework
Also available from
Abstract
Task parallelism is an attractive approach to automatically load balance the computation in a parallel system and adapt to dynamism exhibited by parallel systems. Exploiting task parallelism through work stealing has been extensively studied in shared and distributed-memory contexts. In this paper, we study the design of a system that uses work stealing for dynamic load balancing of task-parallel programs executed on hybrid distributed-memory CPU-graphics processing unit (GPU) systems in a global-address space framework. We take into account the unique nature of the accelerator model employed by GPUs, the significant performance difference between GPU and CPU execution as a function of problem size, and the distinct CPU and GPU memory domains. We consider various alternatives in designing a distributed work stealing algorithm for CPU-GPU systems, while taking into account the impact of task distribution and data movement overheads. These strategies are evaluated using microbenchmarks that capture various execution configurations as well as the state-of-the-art CCSD(T) application module from the computational chemistry domain
Explore related subjects
Keep this discovery
Explore connections, maps & timelines
Arafat, Humayun, Dinan, James, Krishnamoorthy, Sriram, Balaji, Pavan, Sadayappan, P.. 2016-01-06. Work stealing for GPU-accelerated parallel programs in a global address space framework. https://doi.org/10.1002/cpe.3747
Cite the original work for its findings. Save a collection to share your selection of sources.