A C++ implementation of gradient boosting algorithms, with an emphasis on flexibility, composability, and performance.
This project uses environment variables to locate resources:
IB_PROJECT_ROOT: Path to the project root directory (set automatically by scripts)IB_DATA_DIR: Path to the data directory (defaults to ~/Data)
You can set these variables manually or use the provided setup script:
source setup_env.sh# Set up environment variables
source setup_env.sh
# Build using CMake
cmake -S . -B build && cmake --build build./build/tests/gtest_all./build/benchmarks/benchmarkssrc/cpp: C++ implementation of core algorithmssrc/python: Python utilities for data processing and visualizationsrc/script: Shell scripts for running experimentssrc/rust: Rust utilities and experimentsbenchmarks: Performance benchmarksdocs: Documentationtest_data: Test datasets used by unit tests- Contains smaller datasets for testing algorithms
The project uses relative paths based on environment variables:
- C++ code: Uses the
path_utils.hpputility to resolve paths - Python code: Uses the
path_utils.pyutility to resolve paths - Shell scripts: Uses the
IB_PROJECT_ROOTenvironment variable
This allows the code to run correctly regardless of where the repository is cloned.
This project is for research purposes only.