

Publisher: John Wiley & Sons Inc
ISSN: 1532-0626
Source: CONCURRENCY AND COMPUTATION: PRACTICE & EXPERIENCE (ELECTRONIC), Vol.27, Iss.6, 2015-04, pp. : 1564-1574
Disclaimer: Any content in publications that violate the sovereignty, the constitution or regulations of the PRC is not accepted or approved by CNPIEC.
Abstract
Current programming models for heterogeneous devices with disjoint physical memory spaces require explicit allocation of device memory and explicit data transfers. While it is quite easy to manually implement these operations for linear data objects like arrays, this task becomes more difficult for nonlinear objects, for example, linked lists or multiple inherited classes. The difficulties arise because of memory requirements known only at run‐time and the composition of complex data structures from basic types. In this paper, we present a novel method to build a graph‐based static data‐type description that is used to create code for injectable functions that automatically determine the memory footprint of data objects at run‐time. Our approach is extensible to implement automatically generated optimized data transfers across physical memory spaces. Copyright © 2014 John Wiley & Sons, Ltd.
Related content







