← MemStorageBench: measuring memory bandwidth and storage throughput on HarmonyOS

This article has no English version yet; the original Chinese text follows. Chart labels are in Chinese as well.

MemStorageBench 图表数据

chart-data.json 是统一入口。文件中的数值来自 2026-10-17 在 SGU-AL10 上的留存运行记录,本次整理没有重新运行测试。

正文图片JSON 字段CSV含义
run-results.pngmeasurementssummary.csv同一天的两次独立运行,各四个速率;同组两种内存口径来自同一次复制
storage-rounds.pngstorageRoundsstorage-rounds.csvA 记录的三轮读取、三轮写入及对应耗时
storage-workload.pngworkloadworkload.csv测量方法规定的请求数据量

全部速率以 MiB/s 保存,乘 1.048576 得 MB/s。耗时为 ms,字节数为 byte。measurements 中 A 有完整原生逐轮数据,B 来自最终速率界面的字段投影,没有逐轮数据。

verificationA.elapsedMs 是准备至清理的整个存储任务时长;storageRounds[].elapsedMs 是各轮测量时长,速率只按后者计算。每轮整数 MiB/s 取三轮算术平均。

cancellation 是单独的停止验证,速率为 null,不参与性能统计;保留 null,不填充零。workload 中的预热和校验属于实际 I/O 请求,不作为正式读写轮次计分。

const data = await fetch('./data/chart-data.json').then(r => {
  if (!r.ok) throw new Error(`HTTP ${r.status}`);
  return r.json();
});
const readRounds = data.storageRounds.filter(row => row.kind === 'read');
const points = readRounds.map(row => ({ x: row.round, y: row.rateMiBps }));

三张参考图同时提供 PNG 和 SVG。下载包不包含原内存引擎、应用签名材料或设备标识。