memoryweave/BENCHMARK.md

4.0 KiB
Raw Permalink Blame History

织忆 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) BFS2000 节点 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 环境

瓶颈分析

  1. MMR 重排 (847 μs)50 文档 O(n²) 逐对比较,是最大计算瓶颈。文档数 > 100 时需分治。
  2. LanceDB 召回:未经实测,这是全系统唯一不可控的延迟源(网络 I/O + ANN 搜索)。
  3. 图谱深度导航10 跳 244 μs 尚可BFS 复杂度 O(V+E),大规模时需索引优化。

综合评级

整体性能远超设计目标。 所有纯 CPU 操作均在纳秒/微秒级,瓶颈完全在外部 I/OLanceDB API、Embedding 模型推理)。