Beyond do loops: Data transfer generation with convex array regions

6Citations
Citations of this article
2Readers
Mendeley users who have this article in their library.
Get full text

Abstract

Automatic data transfer generation is a critical step for guided or automatic code generation for accelerators using distributed memories. Although good results have been achieved for loop nests, more complex control flows such as switches or while loops are generally not handled. This paper shows how to leverage the convex array regions abstraction to generate data transfers. The scope of this study ranges from inter-procedural analysis in simple loop nests with function calls, to inter-iteration data reuse optimization and arbitrary control flow in loop bodies. Generated transfers are approximated when an exact solution cannot be found. Array regions are also used to extend redundant load store elimination to array variables. The approach has been successfully applied to GPUs and domain-specific hardware accelerators. © Springer-Verlag Berlin Heidelberg 2013.

Cite

CITATION STYLE

APA

Guelton, S., Amini, M., & Creusillet, B. (2013). Beyond do loops: Data transfer generation with convex array regions. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 7760 LNCS, pp. 249–263). https://doi.org/10.1007/978-3-642-37658-0_17

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free