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

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

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