compile-analysis

Analyze per-file ACE Engine compile efficiency and visualize header dependencies.

Updated Sep 22, 2023
One-click install
npx skills add https://github.com/eclipse-oniro-mirrors/arkui_ace_engine --skill compile-analysis-eclipse-oniro-mirrors
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: compile-analysis
Source: https://github.com/eclipse-oniro-mirrors/arkui_ace_engine/tree/main/.claude/skills/compile-analysis
Command: npx skills add https://github.com/eclipse-oniro-mirrors/arkui_ace_engine --skill compile-analysis-eclipse-oniro-mirrors

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve?

The Compile-Analysis skill helps teams quickly understand the cost of compiling individual source files in the ACE Engine, by capturing real-world metrics instead of estimates.

Core Features & Use Cases

  • Precise timing & memory profiling: measures compile time and peak memory for a single file.
  • Dependency visualization: generates a header-dependency tree by parsing .ii files.
  • Reusable scripts: creates standalone compile scripts for repeatable benchmarking.
  • Use Case: diagnose a slow file, compare optimization results, or validate changes by re-running targeted compilations.

Quick Start

  1. Run the analysis on a file:
  • ./.claude/skills/compile-analysis/scripts/analyze_compile.sh frameworks/core/components_ng/base/frame_node.cpp rk3568
  1. (Optional) Save a reusable script:
  • Add --save-script to generate out/rk3568/compile_single_file_<name>.sh
  1. View results in out/{product}/ and the parsed dependency tree.

Frequently Asked Questions about compile-analysis

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I measure ACE Engine compile time and peak memory for a single source file?

To measure ACE Engine compile time and memory usage for a single file, run the analyze_compile.sh script with the target file and product name. It executes an enhanced build to capture real-world profiling metrics instead of estimates.

What is the best way to visualize header dependencies during ACE Engine builds?

The best way to visualize header dependencies during ACE Engine builds is by parsing preprocessed .ii files with parse_ii.py. It generates a header-dependency tree to help diagnose complex include structures and reduce compilation overhead.

How do I diagnose a slow compiling file in an ACE Engine component?

To diagnose a slow compiling file in an ACE Engine component, run the compile-analysis script on the specific file. It captures precise timing and memory metrics, allowing you to isolate bottlenecks and compare optimization results.

Can I save a reusable script to benchmark ACE Engine compilation repeatedly?

Yes, you can save a reusable script for repeatable ACE Engine compilation benchmarking by adding the --save-script flag. This generates a standalone compile script under out/{product} to validate changes without rerunning full builds.

Do I need preprocessed .ii files to analyze ACE Engine build efficiency?

Yes, preprocessed .ii files are required to analyze header dependencies in ACE Engine builds. The skill executes enhanced builds to generate these files, which parse_ii.py then parses to visualize the header-dependency tree.

Related Skills