To ensure consistency in this project, please follow these guidelines:
- Always document your changes in the relevant
README.mdfiles. - If you make changes that break the code, provide a fix for it.
- Use
pixifor managing Python environments, running scripts, and adding dependencies. - Always create a
tests/directory to house your tests, unless there is already one.
- Use
cmakefor building and managing these projects. - The project is consolidated into a single CMake project in the
Cpp/directory. - Build the entire suite from
Cpp/using:cmake -B build -S . cmake --build build -j - Testing with Catch2:
- Always create a
tests/directory within each component (e.g.,Cpp/Dot_Cpp_CUDA/tests/). - The
tests/CMakeLists.txtshould look like this:add_executable(test_component test_file.cu) target_link_libraries(test_component PRIVATE component_lib Catch2::Catch2WithMain) include(Catch) catch_discover_tests(test_component)
- Running Tests:
- Individual: Run the binary directly, e.g.,
./build/Dot_Cpp_CUDA/tests/test_dot. - All Tests: Run
ctestfrom thebuild/directory.
- Individual: Run the binary directly, e.g.,
- Always create a
- DO NOT USE
pixifor C++/CUDA