binary-size-analysis

Analyze hermesvm binary size changes across a Git commit range.

11.2k|839|Updated Oct 22, 2018
One-click install
npx skills add https://github.com/facebook/hermes --skill binary-size-analysis
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: binary-size-analysis
Source: https://github.com/facebook/hermes/tree/main/.claude/skills/binary-size-analysis
Command: npx skills add https://github.com/facebook/hermes --skill binary-size-analysis

SYSTEM DOCUMENTATION & REQUIREMENTS

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

What problem does it solve?

This Skill helps developers understand how specific code changes impact the binary size of the hermesvm library, enabling them to identify and fix regressions.

Core Features & Use Cases

  • Per-commit Binary Size Tracking: Measures the size of the hermesvm shared library for each commit in a given range.
  • Size Regression Detection: Identifies commits that cause significant increases or decreases in binary size.
  • Detailed Analysis: Provides per-section breakdowns using bloaty for large size changes to pinpoint the source of the growth.
  • Use Case: Investigate why the hermesvm library size has unexpectedly increased over the last month by analyzing the binary size impact of each commit.

Quick Start

Analyze the binary size changes for hermesvm between commits b48b6cc and HEAD.

Frequently Asked Questions about binary-size-analysis

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

FAQPage Schema
How do I analyze binary size regressions in hermesvm across a range of commits?

You can analyze hermesvm binary size regressions by measuring ALLOC section sizes across a specified Git commit range. This Skill compiles the shared library for each commit and identifies exactly which commits caused size regressions or improvements.

What is the best way to pinpoint the source of a binary size increase in hermes?

The best way to pinpoint a hermes binary size increase is to perform a detailed per-section breakdown using bloaty. This Skill automatically runs bloaty on commits with large size changes to locate the specific code sections driving the growth.

Do I need cmake and ninja to track hermesvm shared library size changes?

Yes, you need cmake and ninja to build the hermesvm shared library for size measurement. You also need git to navigate the commit range and bloaty to perform the detailed per-section binary analysis.

How does per-commit binary size tracking work for build optimization?

Per-commit binary size tracking works by building the hermesvm library and measuring its size at each commit within a given range. This process isolates individual code changes that negatively impact build optimization and cause size regressions.

Can I investigate why the hermesvm library size unexpectedly increased over the last month?

Yes, you can investigate an unexpected hermesvm library size increase over the last month by analyzing the binary size impact of each commit. Simply specify the Git commit range from a month ago to HEAD to find the regression source.