C 语言
- BuDDy
- sylvan
- cudd
Java 语言
- jdd
- JSylvan
- NDD
- NDD-SoA
- NDD-reuse
C# 语言
- DecisionDiagrams
在执行脚本前,需提前安装构建工具、pkg-config 以及 GMP 库。例如在 Debian/Ubuntu 上:
sudo apt update
sudo apt install build-essential pkg-config libgmp-dev openjdk-17-jdk python3 python3-pip若缺少 pkg-config 或 libgmp-dev,JSylvan/Sylvan 的构建会失败。
- clone 仓库(包含子模块):
若忘记加
git clone --recurse-submodules git@github.com:Augists/nqueensBenchmarkDDs.git
--recurse-submodules,clone 后可执行:git submodule update --init --recursive
- 运行测试
python3 scripts/run_nqueens_benchmarks.py
- 默认测试 N=4~12,若二进制尚未编译会自动构建
- 常用参数:
--sizes 8 9 10控制规模;--workers 0让 Sylvan/JSylvan 自动检测核心数(默认即 0);--targets BuDDy Sylvan NDD指定只运行部分实现(默认all) - 结果会输出到
results/nqueens_metrics.csv
- 绘图
会生成
python3 scripts/plot_nqueens_results.py --input results/nqueens_metrics.csv --output results
nqueens_time_sec.png、results/nqueens_time_sec_log.png、nqueens_max_rss_kb.png、nqueens_nodes.png





