Skip to content
/ CHAI Public

Copy-hiding array abstraction to automatically migrate data between memory spaces

License

Notifications You must be signed in to change notification settings

LLNL/CHAI

Folders and files

NameName
Last commit message
Last commit date
Feb 13, 2025
Feb 5, 2025
Apr 16, 2024
Feb 5, 2025
Feb 5, 2025
Feb 5, 2025
Feb 5, 2025
Feb 5, 2025
Feb 13, 2025
Feb 11, 2025
Feb 11, 2025
Oct 4, 2018
Apr 19, 2019
Feb 14, 2024
Feb 13, 2025
Aug 3, 2021
Jul 25, 2017
Feb 13, 2025
Feb 5, 2025
Jul 28, 2017
Jul 28, 2017
Oct 16, 2019
Jul 25, 2024
Feb 5, 2025
Jun 1, 2018
Feb 5, 2025
Feb 11, 2025
Jul 26, 2024

CHAI v2024.07.0

Azure Build Status Build Status Documentation Status

CHAI is a library that handles automatic data migration to different memory spaces behind an array-style interface. It was designed to work with RAJA and integrates with it. CHAI could be used with other C++ abstractions, as well.

CHAI uses CMake and BLT to handle builds. Make sure that you have a modern compiler loaded and the configuration is as simple as:

$ git submodule update --init --recursive
$ mkdir build && cd build
$ cmake -DCUDA_TOOLKIT_ROOT_DIR=/path/to/cuda ../

CMake will provide output about which compiler is being used, and what version of CUDA was detected. Once CMake has completed, CHAI can be built with Make:

$ make

For more advanced configuration you can use standard CMake variables.

More information is available in the CHAI documentation.

Authors

The original developers of CHAI are:

Contributors include:

Release

Copyright (c) 2016, Lawrence Livermore National Security, LLC. Produced at the Lawrence Livermore National Laboratory

All rights reserved.

Unlimited Open Source - BSD Distribution

For release details and restrictions, please read the LICENSE file. It is also linked here: LICENSE

  • LLNL-CODE-705877
  • OCEC-16-189