织忆 MemoryWeave — 性能基准报告
测试环境: i5-11260H @ 2.60GHz (12 核), Linux amd64
基准: go test -bench=. -benchtime=1s
1. 存储层
| 操作 |
吞吐 |
延迟 |
说明 |
| CosineSimilarity (1024-dim) |
4.6M ops/s |
254 ns |
纯向量计算,无外存 |
| MMR Rerank (50→10) |
1.1K ops/s |
847 μs |
50 文档逐对比较 |
| LargePayload Mem (10KB) |
187K ops/s |
6.3 μs |
内存分配开销 |
2. 治理层
冲突检测
| 操作 |
吞吐 |
延迟 |
说明 |
| Scan (100 existing) |
600K ops/s |
2.2 μs |
100 条已有记忆扫描 |
| IsContradiction |
1.8M ops/s |
622 ns |
否定词启发式 |
遗忘策略
| 操作 |
吞吐 |
延迟 |
说明 |
| DecayScore |
22M ops/s |
54 ns |
指数衰减计算 |
| ShouldForget |
36M ops/s |
32 ns |
核心保护短路径 |
知识图谱
| 操作 |
吞吐 |
延迟 |
说明 |
| AddNode |
2.2M ops/s |
535 ns |
内存哈希表 |
| AddEdge |
4.2M ops/s |
321 ns |
切片追加 |
| Navigate (5 hops, 200 nodes) |
9.2K ops/s |
108 μs |
BFS 3 边/节点 |
| Navigate (10 hops deep, 500 nodes) |
4.1K ops/s |
244 μs |
深链追踪 |
| Navigate (3 hops, 2000 nodes) |
2.1K ops/s |
485 μs |
大规模图谱 |
| Prune (500 nodes) |
7.4K ops/s |
135 μs |
孤立节点+低权重边清理 |
图谱导航是 O(V+E) BFS,2000 节点 3 跳仅 485 μs,远低于 1ms 目标。
3. 自优化层
仪表盘
| 操作 |
吞吐 |
延迟 |
说明 |
| Metrics (7 指标) |
6.6M ops/s |
187 ns |
7 项公式计算 |
| RecordRecall (parallel) |
15M ops/s |
75 ns |
原子计数 |
| RecordFeedback (parallel) |
15M ops/s |
74 ns |
原子计数 |
缺口检测
| 操作 |
吞吐 |
延迟 |
说明 |
| RecordMiss |
30M ops/s |
39 ns |
Map 计数 |
| List (100 gaps) |
776K ops/s |
1.5 μs |
遍历+过滤 |
| Close |
13M ops/s |
90 ns |
Map 标记 |
因果追踪
| 操作 |
吞吐 |
延迟 |
说明 |
| RecordVersion |
3.6M ops/s |
362 ns |
版本链追加 |
| GetAffected (100 链) |
13K ops/s |
74 μs |
递归依赖传播 |
| IsVolatile |
78M ops/s |
15 ns |
版本计数判断 |
记忆预取
| 操作 |
吞吐 |
延迟 |
说明 |
| RecordCoAccess |
36M ops/s |
33 ns |
双层 Map |
| GetPrefetch |
6.6M ops/s |
181 ns |
概率过滤 |
4. 分布式层
| 操作 |
吞吐 |
延迟 |
说明 |
| CRDT Merge |
4.1M ops/s |
325 ns |
时间戳+来源优先级 |
| RateLimiter Allow |
14.7M ops/s |
79 ns |
令牌桶 |
| RateLimiter Allow (parallel) |
7.9M ops/s |
149 ns |
锁竞争开销 |
| RateLimiter MultiAgent |
14.6M ops/s |
80 ns |
5 Agent 分桶 |
| EventBus Publish |
4.0M ops/s |
304 ns |
本地 handler 触发 |
| EventBus Publish (parallel) |
4.3M ops/s |
270 ns |
goroutine 安全 |
5. 性能评估
关键指标全量
| 瓶颈 |
当前延迟 |
目标 |
状态 |
| 图谱导航 (2000 节点) |
485 μs |
< 1ms |
✅ |
| CRDT 合并 |
325 ns |
< 1μs |
✅ |
| 冲突扫描 (100 条) |
2.2 μs |
< 10μs |
✅ |
| 因果传播 (100 链) |
74 μs |
< 1ms |
✅ |
| 仪表盘 (7 指标) |
187 ns |
< 1μs |
✅ |
| MMR 重排 (50→10) |
847 μs |
< 5ms |
✅ |
| LanceDB 召回 |
需实测 |
< 200ms |
⚠️ 待 LanceDB 环境 |
瓶颈分析
- MMR 重排 (847 μs):50 文档 O(n²) 逐对比较,是最大计算瓶颈。文档数 > 100 时需分治。
- LanceDB 召回:未经实测,这是全系统唯一不可控的延迟源(网络 I/O + ANN 搜索)。
- 图谱深度导航:10 跳 244 μs 尚可,BFS 复杂度 O(V+E),大规模时需索引优化。
综合评级
整体性能远超设计目标。 所有纯 CPU 操作均在纳秒/微秒级,瓶颈完全在外部 I/O(LanceDB API、Embedding 模型推理)。