1 INTRODUCTION With Moore's Law declining, modern computing systems become increasingly heterogeneous, containing processing devices, such as CPUs, GPUs, or FPGAs as well as associated memories with vastly different characteristics. While CPUs have a high single thread performance and great flexibility, GPUs can quickly compute highly parallelized tasks and FPGAs may implement dataflow processing units, which are well suited for processing data streams in multiple computation steps.