A library and framework for developing CPU-CUDA compatible applications under one unified code.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Kenneth Jao 26473892e9 Updated docs build process to make docs 2 years ago
docs Updated docs build process to make docs 2 years ago
include Added error message colors and updated Eigen and Python definition macros 2 years ago
samples Updated directory structure and Makefile 2 years ago
tests Updated directory structure and Makefile 2 years ago
.clang-format Initial commit with first version of library 2 years ago
.gitignore Initial commit with first version of library 2 years ago
DEPENDENCIES Now compatible with new library structure 2 years ago
Makefile Updated docs build process to make docs 2 years ago
Makefile.template Now compatible with new library structure 2 years ago
README.rst Added CUDA Graphs support 2 years ago
SETUP Now compatible with new library structure 2 years ago

README.rst

CudaTools

This is the documentation for CudaTools, a header-only library and framework for the development of CPU-CUDA compatible applications. Using CudaTools enables the creation of a single unified code that has both CPU and CUDA compilation targets with minimal need to introduce #ifdef statements when code is essentially identical between the targets.

For information on the library itself and its usage, view documentation. The small code snippets and samples seen in the documentation are in the folder samples.

Dependencies

  • Eigen

In the future, we will make this dependency optional, but still provide support for it. As of now, it is necessary.

Building the Documentation

The documentation is built with Doxygen and Sphinx. So, first make sure you have Doxygen installed on your system, and make sure it is added to your system path. Then, you will have to create a Python virtual environment in the repository folder

$ python3 -m venv .venv

After installing the required Python packages

$ pip install -r requirements.txt

you can now run the script

$ ./build_docs