Dynamically Managed Data for CPU-GPU Architectures
Princeton University, Princeton, New Jersey, USA
2012 International Symposium on Code Generation and Optimization (CGO), 2012
@article{jablin2012dynamically,
title={Dynamically Managed Data for CPU-GPU Architectures},
author={Jablin, Thomas B. and Jablin, James A. and Prabhu, Prakash and Liu, Feng and August, David I.},
year={2012}
}
GPUs are flexible parallel processors capable of accelerating real applications. To exploit them, programmers must ensure a consistent program state between the CPU and GPU memories by managing data. Manually managing data is tedious and error-prone. In prior work on automatic CPU-GPU data management, alias analysis quality limits performance, and type-inference quality limits applicability. This paper presents Dynamically Managed Data (DyManD), the first automatic system to manage complex and recursive data-structures without static analyses. By replacing static analyses with a dynamic run-time system, DyManD overcomes the performance limitations of alias analysis and enables management for complex and recursive data-structures. DyManD-enabled GPU parallelization matches the performance of prior work equipped with perfectly precise alias analysis for 27 programs and demonstrates improved applicability on programs not previously managed automatically.
January 19, 2012 by hgpu