An Execution Model and Runtime For Heterogeneous Many-Core Systems
School of Electrical and Computer Engineering, Georgia Institute of Technology
School of Electrical and Computer Engineering, Georgia Institute of Technology, 2011
@article{diamos2011execution,
title={An Execution Model and Runtime For Heterogeneous Many-Core Systems},
author={Diamos, G. and Yalamanchili, S.},
year={2011}
}
The emergence of heterogeneous and many-core architectures presents a unique opportunity to deliver order of magnitude performance increases to high performance applications by matching certain classes of algorithms to specifically tailored architectures. However, their ubiquitous adoption has been limited by a lack of programming models and management frameworks designed to reduce the high degree of complexity of software development inherent to heterogeneous architectures. This proposal introduces Harmony, an execution model for heterogeneous systems that provides: (1) semantics for simplifying heterogeneity management, (2) dynamic scheduling of compute intensive kernels to heterogeneous processor resources, and (3) online monitoring driven performance optimization for heterogeneous many core systems. This work focuses on simplifying development and ensuring binary portability and scalability across system configurations and sizes. Results from a prototype implementation of the Harmony execution model demonstrate binary compatibility with systems with different GPU and CPU configuration. Results are also presented from an integrated dynamic compiler that allows the same low-level PTX representation of a kernel to be executed on both CPU and GPU processors.
October 2, 2011 by hgpu