开发与工程 ✓ Microsoft · 官方 cpu-profilechrome-tracev8performance-analysisbottleneck-detectionlayout-rendering

CPU 性能剖析分析器

从 V8 和 DevTools 性能文件中定位性能瓶颈。

FollowSkills 评估 · FSRS-2.0
不推荐
52/ 100 五分制 2.6 / 5
信任安全16 / 25 · 3.2/5

技能主要读取并分析本地性能文件,未要求凭据、网络服务或高权限;但小文件步骤会直接覆盖原始 profile/trace,未要求用户确认、备份或回滚,也未说明性能数据可能包含敏感代码路径,因此扣分。

可靠稳定8 / 20 · 2.0/5

格式识别、数据结构和分析流程较连贯,且包含超大文件处理思路;但没有针对关键路径的技能专属测试,解析代码对精确 JSON 格式有隐含假设,异常输入、缺失字段和解析失败的反馈不足,静态评估按上限限制扣分。

适用触发10 / 15 · 3.3/5

明确覆盖 cpuprofile、Chrome trace、CPU、布局、渲染、GC、输入延迟和多进程场景,触发条件较清楚;但未充分声明不适用范围、输入变体、输出契约或中文/本地网络环境适配,因此扣分。

规范维护8 / 15 · 2.7/5

文档结构清晰,采用分部分和渐进式步骤,包含格式、示例、限制及大型文件说明;但缺少技能专属版本、变更记录、维护责任、更新路径、安装说明和常见故障排查,仓库级 MIT 与 Microsoft 信息不能补足这些缺口。

有效结果6 / 15 · 2.0/5

提供了可直接改写为 Node.js 分析脚本的流程、指标和报告结构,核心分析任务具有明显实用价值;但技能本身不提供现成命令、可验证输出或样例结果,部分代码仍需用户自行整合和校正,边际收益与结果完整性证据有限。

证据核验4 / 10 · 2.0/5

SKILL.md 是可审计的一手材料,仓库也提供一般性 CI 和测试基础设施;但所给 CI 与该技能关键路径无直接覆盖,未见技能专属测试、真实执行结果或第三方复核,因此只能给予有限静态证据分。

证据充分度: 评估于 2026年7月20日 审查版本 5b3e1be7be9e
使用前请注意
  • 小文件重格式化示例会直接写回输入文件;使用前应复制文件并要求用户确认。
  • 超大文件解析示例依赖严格的 JSON 键格式,可能无法处理空白、转义字符串或格式变体。
  • 未提供技能专属测试、可执行入口或示例结果;应将输出视为近似分析,并人工核验时间线、采样和 trace 关联。
  • 性能 profile 和 trace 可能包含文件路径、函数名、用户行为或业务数据;共享前应脱敏。
查看完整评分方法 →

它能做什么 & 适用场景

该技能专用于分析 V8 采样分析器生成的 .cpuprofile 文件,以及 Chrome/Electron DevTools 生成的 Trace-*.json 文件。它可重建调用栈和时间线,计算函数自耗时与总耗时,并比较不同代码路径。对于 DevTools trace,它还可分析长任务、布局与绘制、用户计时标记、垃圾回收、输入延迟以及 Browser、Renderer 和 GPU 进程。它属于 microsoft/vscode 仓库中的独立技能,仓库采用 MIT 许可证。

读取并解析 .cpuprofile 或 Trace-*.json 文件;根据文件大小选择 JSON.parse 或基于 Buffer 的分段解析;为 CPU profile 建立节点和父子关系、从 timeDeltas 重建时间戳并遍历采样调用栈;在 trace 中识别 Renderer 的 CrRendererMain 线程、用户计时标记、超过 50 毫秒的长任务、较慢的 FunctionCall、布局和绘制事件、GC 事件及输入事件;必要时从 ProfileChunk 重建嵌入式 CPU profile;通过 Node.js 脚本生成时间线、持续时间、函数耗时、关键调用栈和进程分解等分析结果。

  1. VS Code 开发者拿到 .cpuprofile 文件,需要找出消耗 CPU 时间最多的函数。
  2. 工程师比较同一份 profile 中的旧实现和新实现,定位两条代码路径的成本差异。
  3. 性能调查人员分析 Trace-*.json 中的长任务、布局抖动、绘制开销或渲染瓶颈。
  4. 开发者需要根据 code/willResolveTextFileEditorModel 和 code/didResolveTextFileEditorModel 等用户计时标记测量阶段耗时。
  5. 需要了解 VS Code Renderer、Browser 和 GPU 进程在一次性能记录中分别执行了哪些工作。

优缺点一览

优点
  • 同时覆盖 V8 CPU profile 和 Chrome/Electron DevTools trace 两种格式。
  • 分析范围从调用栈和函数耗时扩展到长任务、用户计时、布局绘制、GC、输入延迟和多进程行为。
  • 明确区分 self time、total time、wall-clock duration 和 thread duration,有助于解释 CPU 成本与线程等待。
  • 为超大文件提供基于 Buffer 的解析策略,并建议过滤到相关进程和线程以降低噪声。
局限
  • SKILL.md 主要提供分析流程和示例脚本,不包含独立可执行的分析工具或测试套件。
  • 需要本地文件读取、写入和 Node.js 运行环境;代理还需要能够执行分析脚本。
  • 采样分析并不记录每个函数,函数名可能缺失或因打包、压缩而混淆,结果应视为近似和模式分析。
  • 源材料未说明在除 VS Code 相关场景之外的应用程序或平台上的验证情况。

如何安装

该仓库包含 61 个技能;本技能位于 .github/skills/cpu-profile-analysis/SKILL.md。提供的 README 未记录独立安装命令或将该文件复制到其他客户端的步骤,因此应按所用 Agent Skills 客户端的技能加载方式使用该目录。仓库源代码采用 MIT 许可证。

如何使用

将 .cpuprofile 或 Trace-*.json 文件提供给支持该技能的代理,并提出具体问题,例如:“分析这个 Trace-*.json,找出 Renderer 主线程中超过 50ms 的长任务、最耗时的函数调用和布局事件。” 对大于约 400MB 的文件,应使用 Buffer 分段解析,并用 node --max-old-space-size=16384 运行分析脚本;这些分析命令和脚本由 SKILL.md 给出。

常见问题

这个技能需要网络访问吗?
源文档中的分析流程只读取本地 profile 或 trace 文件,并运行本地 Node.js 脚本;没有说明需要网络访问。
它能分析哪些输入文件?
它分析顶层包含 nodes、samples 和 timeDeltas 的 .cpuprofile 文件,以及包含 traceEvents 数组的 Trace-*.json 文件。
大文件会有什么限制?
约 400MB 以下可使用 JSON.parse;更大的文件应使用 Buffer-based parsing。文档还建议使用 node --max-old-space-size=16384,并在 trace 解析时过滤不相关事件。
它会自动修复性能问题吗?
不会。它定位时间线、耗时函数、调用栈和渲染或进程活动,并报告发现;源文档没有描述自动修改代码或修复性能问题的功能。

同仓库的其他 Skills

均来自 microsoft/vscode

开发与工程 ✓ Microsoft · 官方

工具重命名兼容性检查

防止内置工具重命名破坏现有提示词与工具配置。

开发与工程 ✓ Microsoft · 官方

Copilot Chat OpenTelemetry 埋点指南

为 Copilot Chat 统一设计和维护 OpenTelemetry 埋点。

开发与工程 ✓ Microsoft · 官方

VS Code 配置策略维护助手

规范 VS Code 企业配置策略的注册、导出与验证。

设计与前端 ✓ Microsoft · 官方

VS Code 设计哲学

用价值、原则和设计动作,把“看起来不对”转化为可执行的界面改进。

开发与工程 ✓ Microsoft · 官方

Agent 主机端到端测试助手

用严格的回放夹具维护 VS Code Agent 主机端到端测试。

开发与工程 ✓ Microsoft · 官方

VS Code 集成浏览器架构指南

帮助开发者安全理解和修改 VS Code 集成浏览器的跨进程架构。

开发与工程 ✓ Microsoft · 官方

VS Code Agents 窗口会话架构

帮助代理安全实现和修复 VS Code Agents 窗口功能。

开发与工程 ✓ Microsoft · 官方

智能提交助手

根据仓库惯例生成提交信息并安全提交代码变更。

开发与工程 ✓ Microsoft · 官方

Agent Host 日志分析

定位 Agent Host 导出日志中的会话、传输与主机问题。

开发与工程 ✓ Microsoft · 官方

VS Code 单元测试助手

在 VS Code 源码仓库中按文件、测试名称或匹配模式运行单元测试。

开发与工程 ✓ Microsoft · 官方

VS Code Agent 定制助手

帮助创建、修复和排查 VS Code Agent 定制文件及其加载问题。

开发与工程 ✓ Microsoft · 官方

Code OSS 启动与调试

为 VS Code 源码构建提供隔离启动、Playwright 自动化和多进程调试端口。

开发与工程 ✓ Microsoft · 官方

VS Code 无障碍开发助手

为 VS Code 交互式功能提供可执行的无障碍实现规范。

设计与前端 ✓ Microsoft · 官方

VS Code CSS 布局规范

用 VS Code 规范构建稳健的 CSS 布局与文本截断体验

开发与工程 ✓ Microsoft · 官方

VS Code Chat 性能实验室

基准测试聊天渲染性能,并检测会话中的内存泄漏。

开发与工程 ✓ Microsoft · 官方

组件夹具与截图测试

帮助你为 VS Code 组件创建稳定、可主题化的截图测试夹具。

开发与工程 ✓ Microsoft · 官方

VS Code 冒烟测试助手

运行、筛选并调试 VS Code 端到端冒烟测试。

开发与工程 ✓ Microsoft · 官方

VS Code 崩溃转储符号化

将原生 VS Code 崩溃转储转换为带方法名的可读回溯。

开发与工程 ✓ Microsoft · 官方

VS Code 本地 Web 工作台

在本地 vscode.dev 中验证 VS Code 工作台和 Agents 窗口改动。

开发与工程 ✓ Microsoft · 官方

反馈执行器

读取当前会话反馈并落实对应代码修改。

相关 Skills