FORGE KUI / docs

记录与分析性能

先在固定机器、窗口尺寸、字体和包版本下复现卡顿。

版本 3.61.7

使用方式

先在固定机器、窗口尺寸、字体和包版本下复现卡顿。性能记录区分 wall time、工作量计数、提交帧和资源采样。截图只能证明外观,不能证明交互流畅。

接入和限制

DevTools 记录按场景启用,避免把采样开销当作应用负载。估算 cost 排名不等于每节点 CPU/GPU 实测;性能字段的单位和分母按对应版本说明解释。修复后在相同场景复测,并记录内存代价。

帧工作与呈现

Performance.renderStats 的 workFps 描述引擎产生帧的速率,presentFps 描述呈现速率。没有 vsync 的 headless 环境不能用 presentFps 证明真实窗口流畅。framesReused 的整帧复用与局部 damage 命中率也属于不同指标。

录制模式与字段

summary、timeline、attribution、deep-trace 是逐级增加信息的录制模式。请求 categories 可能提升实际模式,读取 effectiveConfig.mode 确认。脏区比例以对应字段的视口分母为准,不能混用布局视口、surface 和外部脚本的派生指标。

KUI DevTools 的性能与资源记录

第一次打开的界面

Windows GPU 路径提供 kui-preload,可放在 template 或隐藏内容上,在首帧之后准备相关绘制程序。预热会增加启动后的工作和内存,应只用于大概率会打开的界面。使用 KUI_DISABLE_PRELOAD_WARMUP=1 做同场景对照,具体收益由应用实测。

html
<template kui-preload>
  <dialog class="settings-dialog">
    <h2>Settings</h2>
    <button>Save</button>
  </dialog>
</template>

做一次可信的性能对照

固定窗口、数据、构建配置和操作。一次只改变一个条件。

  1. 记录版本、Release/Debug、窗口尺寸、缩放和数据量。
  2. 分别测第一次打开和重复操作,不把预热后的值当作首用值。
  3. 对比帧时序与工作量,同时记录进程内存。
  4. 检查无操作时是否还在持续更新,排查循环计时器或动画。
  5. 保留原始记录,注明测量方法;不要把无窗口数据等同于真实桌面流畅度。

按耗时阶段排查

按现象缩小范围,再修改对应文件。

按耗时阶段排查
现象检查与处理
大量节点或滚动慢先减少常驻 DOM,使用虚拟列表;观察渲染行数是否随视口而非数据总量增长。
每次输入都重新布局大区域检查回调是否重建整页,改为更新必要的状态和文本。
第一次打开弹窗慢分别录制首次与二次打开,核对资源和绘制准备;预热有内存代价。

文档有误或遗漏?

反馈此页问题 →