HAMR - Heterogeneous Accelerator Memory Resource (HAMR) v1.0

RESOURCE

Abstract

HAMR is a library defining an accelerator technology agnostic memory model that bridges between accelerator technologies (CUDA, HIP, ROCm, OpenMP, Sycl, OpenCL, Kokos, etc) and traditional CPUs in heterogeneous computing environments. HAMR is light weight and implemented in modern C++. HAMR can be used to manage memory with in a single code or as a data model for coupling codes in a technologically agnostic way. HAMR provides a Python module for coupling C++ and Python codes which implements zero-copy data transfers to and from Python using the Numpy array interface and Numba CUDA array interface protocols.
Developers:
Loring, Burlen [1]
  1. Lawrence Berkeley National Laboratory (LBNL), Berkeley, CA (United States)
Release Date:
2022-04-12
Project Type:
Open Source, Publicly Available Repository
Software Type:
Scientific
Licenses:
BSD 3-clause "New" or "Revised" License
Sponsoring Org.:
Code ID:
110812
Site Accession Number:
2022-046
Research Org.:
Lawrence Berkeley National Laboratory (LBNL), Berkeley, CA (United States)
Country of Origin:
United States

RESOURCE

Citation Formats

Loring, Burlen. HAMR - Heterogeneous Accelerator Memory Resource (HAMR) v1.0. Computer Software. https://github.com/LBL-EESA/HAMR. USDOE. 12 Apr. 2022. Web. doi:10.5281/zenodo.6471012.
Loring, Burlen. (2022, April 12). HAMR - Heterogeneous Accelerator Memory Resource (HAMR) v1.0. [Computer software]. https://github.com/LBL-EESA/HAMR. https://doi.org/10.5281/zenodo.6471012.
Loring, Burlen. "HAMR - Heterogeneous Accelerator Memory Resource (HAMR) v1.0." Computer software. April 12, 2022. https://github.com/LBL-EESA/HAMR. https://doi.org/10.5281/zenodo.6471012.
@misc{ doecode_110812,
title = {HAMR - Heterogeneous Accelerator Memory Resource (HAMR) v1.0},
author = {Loring, Burlen},
abstractNote = {HAMR is a library defining an accelerator technology agnostic memory model that bridges between accelerator technologies (CUDA, HIP, ROCm, OpenMP, Sycl, OpenCL, Kokos, etc) and traditional CPUs in heterogeneous computing environments. HAMR is light weight and implemented in modern C++. HAMR can be used to manage memory with in a single code or as a data model for coupling codes in a technologically agnostic way. HAMR provides a Python module for coupling C++ and Python codes which implements zero-copy data transfers to and from Python using the Numpy array interface and Numba CUDA array interface protocols.},
doi = {10.5281/zenodo.6471012},
url = {https://doi.org/10.5281/zenodo.6471012},
howpublished = {[Computer Software] \url{https://doi.org/10.5281/zenodo.6471012}},
year = {2022},
month = {apr}
}