A Light-Weight Approach to Dynamical Runtime Linking Supporting Heterogenous, Parallel, and Reconfigurable Architectures
Universitat Karlsruhe (TH), Institut fur Technische Informatik, Lehrstuhl fur Rechnerarchitektur, 76128 Karlsruhe, Germany
Architecture of Computing Systems – ARCS 2009, Lecture Notes in Computer Science, 2009, Volume 5455/2009, 60-71
@article{buchty2009light,
title={A light-weight approach to dynamical runtime linking supporting heterogenous, parallel, and reconfigurable architectures},
author={Buchty, R. and Kramer, D. and Kicherer, M. and Karl, W.},
journal={Architecture of Computing Systems–ARCS 2009},
pages={60–71},
year={2009},
publisher={Springer}
}
When targeting hardware accelerators and reconfigurable processing units, the question of programmability arises, i.e. how different implementations of individual, configuration-specific functions are provided. Conventionally, this is resolved either at compilation time with a specific hardware environment being targeted, by initialization routines at program start, or decision trees at run-time. Such technique are, however, hardly applicable to dynamically changing architectures. Furthermore, these approaches show conceptual drawbacks such as requiring access to source code and requiring upfront knowledge of future system configurations, as well as overloading the code with reconfiguration-related control routines. We therefore present a low-overhead technique enabling on-demand resolving of individual functions; this technique can be applied in two different manners; we will discuss the benefits of the individual implementations and show how both approaches can be used to establish code compatibility between different heterogeneous, reconfigurable, and parallel architectures. Further we will show, that both approaches are exposing an insignificant overhead.
September 16, 2011 by hgpu