https://github.com/llnl/chai
Copy-hiding array abstraction to automatically migrate data between memory spaces
https://github.com/llnl/chai
blt cpp data-abstraction gpu memory-management portability radiuss raja
Last synced: about 1 month ago
JSON representation
Copy-hiding array abstraction to automatically migrate data between memory spaces
- Host: GitHub
- URL: https://github.com/llnl/chai
- Owner: LLNL
- License: bsd-3-clause
- Created: 2017-07-25T20:29:59.000Z (almost 8 years ago)
- Default Branch: develop
- Last Pushed: 2025-03-27T17:04:56.000Z (about 2 months ago)
- Last Synced: 2025-03-27T18:22:56.056Z (about 2 months ago)
- Topics: blt, cpp, data-abstraction, gpu, memory-management, portability, radiuss, raja
- Language: C++
- Size: 1.61 MB
- Stars: 107
- Watchers: 14
- Forks: 23
- Open Issues: 34
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
[comment]: # (#################################################################)
[comment]: # (Copyright 2016-25, Lawrence Livermore National Security, LLC)
[comment]: # (and CHAI project contributors. See the CHAI LICENSE file for)
[comment]: # (details.)
[comment]: #
[comment]: # (# SPDX-License-Identifier: BSD-3-Clause)
[comment]: # (#################################################################)# CHAI v2025.03.0
[](https://dev.azure.com/davidbeckingsale/CHAI/_build/latest?definitionId=2&branchName=develop)
[](https://travis-ci.org/LLNL/CHAI)
[](https://chai.readthedocs.io/en/develop/?badge=develop)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](https://github.com/LLNL/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](https://chai.readthedocs.io/en/develop/).
## Authors
The original developers of CHAI are:
- Holger Jones ([email protected])
- David Poliakoff ([email protected])
- Peter Robinson ([email protected])Contributors include:
- David Beckingsale ([email protected])
- Riyaz Haque ([email protected])
- Adam Kunen ([email protected])## Release
Copyright (c) 2016, Lawrence Livermore National Security, LLC.
Produced at the Lawrence Livermore National LaboratoryAll rights reserved.
Unlimited Open Source - BSD Distribution
For release details and restrictions, please read the LICENSE file.
It is also linked here: [LICENSE](./LICENSE)- `LLNL-CODE-705877`
- `OCEC-16-189`