實測比較 codebase-memory-mcp-pro(cbm,win4r fork)與 CodeGraph 在 C 程式碼上的能力, 題目為 wpa_supplicant(函式指標分派表 + 條件編譯極密集的真實 C 專案)。
- ★ 呼叫關係(誰呼叫誰):CodeGraph 壓倒性勝——直接呼叫圖召回 93% vs 0%;cbm 的 CALLS 邊 99% 掛在「檔案」而非「函式」(函式級僅 1%)。
- 函式指標分派(
drv->ops->scan()):CodeGraph 合成器召回 3/5,cbm 0/5。 - 基本建構召回(struct/enum/function):兩者皆 85–100%,平手。
- cbm 的強項:巨集(3,395 Macro 節點)、openCypher 查詢、索引速度(4.2s vs 14s)。
- 泛化驗證:在 redis 上 cbm 呼叫圖更極端(0% 函式級)→ 檔案級限制非 wpa 特有(
results/redis/generalization.md)。 - 完整分析見
REPORT.md(含主比較大表、內網相依性、8 項 C 語法特性、傳統工具、索引時間)。 - 架構/協定/Claude Code 對接見
ARCHITECTURE.md;實用決策指南見PLAYBOOK.md。 - 詳細結果:
results/ctest8/features8.md(8 特性)、results/timing.md(索引時間+傳統工具)、results/redis/compile-commands-test.md。
依本 benchmark 結論做出的自製工具 ccq(clangd+fnptr啟發式+編輯+warm daemon,Go 零相依)→ swchen44/ccq;對照見 results/ccq/ccq-bench.md(8 特性唯一全過)。
./setup.sh # 裝 codegraph(bundled) + build cbm + brew cscope/cflow
bash bench/bench.sh repos/subset subset # 子集(12檔)驗證方法
bash bench/bench.sh repos/wpa_supplicant full # 整包(620檔)看規模結果在 results/{subset,full}/,原始輸出在 results/raw/(已 gitignore 大型 db)。
setup.sh— 安裝工具與 clonebench/lib.sh— 共用 helperbench/bench.sh— 主 harness(索引兩工具 + 結構指標 + 考題 Q1-Q6)results/subset/SUBSET.md— 子集檔案與 ground truthREPORT.md— ★ 完整報告(使用步驟、比較、限制、人類決策)