功能价格文档下载
获取 mote
基准测试 · 预发布版本 · 测于 2026-09-02 和 2026-09-03

这些数字,我们能告诉你如何复现。

首页列出了三项数据。这里说明各自如何测量、使用什么硬件,以及另外三款编辑器在同一台电脑、同一份文档上的表现。测试工具会随测试版发布。

0
空闲帧 / 10 s
9.7 ms
按键至像素,p95
211 ms
冷启动,100 KB 文件

环境

本页所有数据均来自同一台电脑:开发这款应用的笔记本,一套普通的集成显卡配置。macOS 和 Windows 版本仍在开发,完成后会在此添加对应数据。

机器操作系统显示器备注
笔记本,Intel i5-11300H,23 GB,Iris Xe(Mesa 25.2)Ubuntu 24.04,GNOME,X112560×1440 @ 60 Hz发布构建,提交 04cf7dc

测试文档:tools/perf/fixtures/doc100k.md(100 KB,874 行)· 运行 3 次,取中位数 · 指针停在窗口外 · 真实会话总线。

空闲帧

主张:没有操作时,mote 不进行绘制。在即时视图中打开文档,让编辑器失去焦点(插入符不闪烁),并在 10 秒内无任何输入(启动后 t = 5–15 s),统计编辑器自身的快照次数,即 GTK 每次要求编辑器绘制的次数。

平台10 s 内的帧数CPU,平均方法
Linux00.0%通过 tools/perf/gate.sh 统计编辑器快照

启用插入符闪烁时(窗口获得焦点时的默认状态),每次闪烁只会触发一次编辑器重绘 — 变化的只有插入符 — 窗口失去焦点后立即停止。这个闪烁是应用唯一允许保留的计时器;空闲时没有其他重复触发源。

输入延迟

主张:从按键到像素的第 95 百分位延迟为 9.7 ms。按键 → 处理完成:p95 0.29 ms。按键 → 像素(包含垂直同步):p95 9.7 ms。由 tools/perf/typing.sh 在进程内测量,使用 100 KB 文档和即时视图。

“处理完成”指输入事件已更新文档,并使受影响的布局失效;“像素”指下一次快照结束,由于需要等待帧时钟,因此下限受垂直同步约束(60 Hz 时为 16.7 ms)。在 300 次按键中,两组分布分别为 p50 0.01 / p95 0.29 / max 0.48 ms 和 p50 2.6 / p95 9.7 / max 12.7 ms;于 2026-09-02 在 M3 构建上测得,该提交早于下方的门槛测试。输入测试尚未放入结果目录,信任该数据前请重新运行。未计入显示器自身的响应时间;我们尚未测量。

冷启动

主张:启动并打开 100 KB 文件,到窗口出现用时 211 ms。冷启动指启动全新进程并同时打开文件;不做任何预热,也不清理页面缓存。计时从 exec 开始,到窗口映射时结束;首次绘制使用同一时钟,并在编辑器首次生成文档快照时停止。

平台exec → 窗口首次绘制二进制大小载入后的 RSS(PSS)
Linux211 ms231 ms3.1 MB69 MB

方法:tools/perf/gate.sh,冷启动 = 全新进程,启动时打开 100 KB 文件。PSS 在十五秒后从 /proc 读取,此时文档布局已完成,应用进入空闲状态。

同一台电脑,同一份文档

Typora、Obsidian 和 MarkText 分别在各自的行内编辑视图中打开同一份 100 KB 文档(Typora 的 WYSIWYG、Obsidian 的 Live Preview、MarkText),在上述电脑上由同一脚本测试。内存取启动十二秒后整个进程树的 PSS;空闲 CPU 取窗口获得焦点且无输入时第 5–10 秒的进程树 CPU;输入 CPU 取以每 30 ms 一个字符的速度输入约 150 个字符期间的进程树 CPU。每款编辑器运行七次,舍弃一次预热结果后取平均值。

编辑器版本PSS空闲 CPU输入 CPU进程数
mote预发布,提交 b17c3bf78 MB0.0%10.9%1
Typora1.14.9453 MB0.1%102.6%8
Obsidian1.12.7361 MB0.8%152.5%7
MarkText0.19.1416 MB0.6%135.8%6

Typora 的空闲 CPU 与我们一样低 — 我们如实说明。Chromium 在真正空闲时会节流,因此空闲一栏区分的是 mote 与 Obsidian、MarkText,而非 Typora。引擎间真正拉开差距的是内存和输入开销:一个进程对六至八个进程,每次按键的 CPU 开销约为十分之一。此处的 78 MB 高于上方的 69 MB,是因为这里统计了另一次会话中的完整进程树;GTK 和 Mesa 的基础占用在不同会话间会浮动十几兆字节。

MarkText 使用 --no-sandbox 运行(其沙盒无法在此内核上启动);Obsidian 在仅启用三个核心插件的新建库中运行。原始数据:experiments/2026-09-03-apps-idle-startup/raw.csv

复现测试

测试工具、语料、原始 CSV 和结果 JSON 将随测试版发布到 GitHub 上的公开基准测试仓库。tools/perf/gate.sh <binary> :1 3 运行门槛测试;tools/perf/bench-apps.sh 运行对比测试。如果你的结果与我们相差超过 15 %,请告诉我们;我们会公布差异。

最近运行:门槛测试于 2026-09-03,针对提交 04cf7dc;对比测试针对 b17c3bf;输入延迟于 2026-09-02 在 M3 构建上测试。每次发布均重新运行。

随时开着。几乎不占资源。
简体中文
© 2026 mote
我们使用 Google Analytics 了解哪些页面有用。是否加载?