Getting started¶
This project is Docker-first. Build, test, benchmark, and run demos inside the development container so host CUDA toolkits, compilers, and Python packages do not affect results.
Prerequisites¶
- Docker Engine or Docker Desktop with Compose v2.
- NVIDIA driver compatible with CUDA 13.x when using GPU tests or the GPU demo.
nvidia-container-toolkiton Linux hosts that need GPU passthrough.- No host compiler, CUDA toolkit, or CMake installation is required.
Verify Docker Compose from the repository root:
Repository layout¶
| Path | Purpose |
|---|---|
src/core/ |
CPU feature maps, solvers, and model compositions |
src/cuda/ |
CUDA primitive kernels and RAII wrappers |
src/io/ |
Dataset loading, preprocessing, and drift streams |
src/app/ |
Demo HTTP backend |
tests/ |
GoogleTest unit and integration tests |
bench/ |
Google Benchmark microbenchmarks |
docs/ |
Narrative docs and API entry point |
docker/ |
Development and demo images |
First commands¶
# Configure and run the full CPU test suite
docker compose run --rm dev ctest --output-on-failure
# Run the docs link and Mermaid sanity gate
docker compose run --rm dev ./scripts/docs_check.sh
# Run benchmarks and write JSON to data/benchmarks/latest/
docker compose run --rm dev ./scripts/run_benchmarks.sh
GPU runtime note¶
The CUDA image builds without a GPU. Runtime GPU tests and the GPU demo require a compatible NVIDIA driver and container toolkit. If no GPU is visible, CUDA tests skip cleanly instead of failing.