开发工作流¶
环境准备¶
CPU 构建¶
cd QRAM-Simulator
mkdir build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Release
make -j$(nproc)
GPU 构建(需要 CUDA 12+)¶
cmake .. -DCMAKE_BUILD_TYPE=Release -DUSE_CUDA=ON
make -j$(nproc)
Python 绑定¶
pip install .
核心代码结构¶
添加新实验¶
创建实验目录结构:
Experiments/ └── MyAlgorithm/ ├── MyAlgorithmTest.cpp └── CMakeLists.txt编写
CMakeLists.txt:add_executable(MyAlgorithmTest MyAlgorithmTest.cpp) target_link_libraries(MyAlgorithmTest PRIVATE SparQ SparQ_Algorithm Common)
在
Experiments/CMakeLists.txt中注册:add_subdirectory(MyAlgorithm)
Git 工作流¶
创建分支并开发:
# 创建功能分支
git checkout -b feat/my-algorithm origin/main
# 开发、测试...
# 推送到 fork
git push origin feat/my-algorithm
CI 验证后提交 PR 到 upstream。
运行测试¶
# 运行所有测试
cd build && ctest --output-on-failure
# 运行特定测试
./build/bin/MyAlgorithmTest