- C++17 compatible compiler (GCC 7+, Clang 5+, MSVC 2017+)
- Python 3.6+ with NumPy
- CMake 3.12+
- pybind11 (automatically fetched during build)
git clone <repository-url>
cd pycpp-eng# Make scripts executable
chmod +x build.sh run.sh setup.sh
# builds the engine
./build.sh# Run the inference engine
./run.shThe project uses CMake with the following default settings:
- C++ Standard: C++17
- Build Type: Release (with -O3 optimization)
- Python: Auto-detected Python 3.x with NumPy
- pybind11: Automatically fetched from GitHub
# Set Python path for model loading
export PYTHONPATH="${PYTHONPATH}:$(pwd)/models:$(pwd)"
# Optional: Set specific Python interpreter
export PYTHON_EXECUTABLE=/path/to/python# Run the main test suite
./run.sh
# Run with debug information
cd build
cmake .. -DCMAKE_BUILD_TYPE=Debug
make
./hybrid_inference- MNIST-like Classification: Tests SimpleNN with 784-dimensional input
- Binary Classification: Tests BinaryClassifier with 100-dimensional input
- Performance Comparison: Compares C++ vs Python operations
- Direct C++ Operations: Tests standalone C++ tensor operations
- fork the repository
- create a feature branch
- commit your changes
- push to the branch
- open a PR
# Clone and setup
git clone <repository-url>
cd pycpp-eng
./setup.sh
# Build in debug mode
cd build
cmake .. -DCMAKE_BUILD_TYPE=Debug
make
# Run tests
./hybrid_inferenceThis project is licensed under the MIT License - see the LICENSE file for details.
