LLAMA: The Low Level Abstraction of Memory Access


LLAMA: The Low Level Abstraction of Memory Access

Matthes, A.; Gruber, B. M.; Widera, R.

LLAMA is a C++17 template header-only library for the abstraction of memory access patterns. It distinguishes between the view of the algorithm on the memory and the real layout in the background. This enables performance portability for multicore, manycore and gpu applications with the very same code.

Keywords: HPC; C++; memory layout; heterogeneous computing; performance portability

  • Software in external data repository
    Publication year 2021
    Programming language: C++
    System requirements: OS: Linux, Windows or MacOS, C++17, Boost 1.70+
    License: LGPL3+
    Hosted on Zenodo: Link to location
    DOI: 10.5281/zenodo.4911494
  • Software in external data repository
    Publication year 2022
    Programming language: C++
    System requirements: OS: Linux, Windows or MacOS, C++17, Boost 1.70+
    License: LGPL3+
    Hosted on Zenodo: Link to location
    DOI: 10.5281/zenodo.5901241
  • Software in external data repository
    Publication year 2023
    Programming language: C++
    System requirements: OS: Linux, Windows or MacOS, C++17, Boost 1.70+
    License: LGPL3+
    Hosted on Zenodo: Link to location
    DOI: 10.5281/zenodo.7590825

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