Search NASA⌕ Search

DOE OSTI · 1030867

Exploring Fine-Grained Task-based Execution on Multi-GPU Systems

Abstract

Many-core Graphics Processing Units (GPUs) have been utilized as the computation engine in many scientific fields due to the high peak performance, cost effectiveness, and the availability of user friendly programming environments, e.g., NVIDIA CUDA. However, the conventional data parallel GPU programming paradigm cannot satisfactorily address issues such as load balancing and GPU resource utilization due to the irregular and unbalanced workload patterns exhibited in some applications. In this paper, we explore the design space of task-based solutions for multi-GPU systems. By employing finer-grained tasks than what is supported in the current CUDA, and allowing task sharing, our solutions enable dynamic load balancing. We evaluate our solutions with a Molecular Dynamics application with different atom distributions (from uniform distribution to highly non-uniform distribution). Experimental results obtained on a 4-GPU system show that, for non-uniform distributed systems, our solutions achieve excellent speedup, and significant performance improvement over other solutions based on the standard CUDA APIs.

Explore related subjects

Keep this discovery

Explore connections, maps & timelines

BibTeXRIS

Chen, Long, Villa, Oreste, Gao, Guang R. 2011-09-25. Exploring Fine-Grained Task-based Execution on Multi-GPU Systems. https://doi.org/10.1109/cluster.2011.50

Cite the original work for its findings. Save a collection to share your selection of sources.

KEEP EXPLORING

Related reports

Fire Protection Design

The purpose of this project is to design the demolition and installation of a deluge valve swap from a DV-5 to a DV-5A valve.

99 GENERAL AND MISCELLANEOUS↗