A Low-Level Abstraction of Memory Access


A Low-Level Abstraction of Memory Access

Gruber, B. M.

Abstract

Choosing the best memory layout for each hardware architecture is
increasingly important as more and more programs become memory
bound. Memory related optimizations typically depend on full control
over data layout. Thus, for portable codes that run across
heterogeneous hardware architectures, such a data layout is ideally
decoupled from the rest of a program.

The low-level abstraction of memory access (LLAMA) is a C++ library
that provides a zero-runtime-overhead abstraction layer, underneath
which memory layouts can be freely exchanged, focusing on
multidimensional arrays of nested, structured data. It provides a
framework for defining and switching custom memory mappings at compile
time to define data layouts, data access and access instrumentation,
making LLAMA an ideal tool to tackle memory-related optimization
challenges in heterogeneous computing.

  • Eingeladener Vortrag (Konferenzbeitrag)
    ZIH Doktorandenklausur, 25.-26.11.2022, Tharandt, Germany

Permalink: https://www.hzdr.de/publications/Publ-36176