profile

Profile Acorn prover execution time with perf or samply.

48|10|Updated Oct 3, 2024
One-click install
npx skills add https://github.com/acornprover/acorn --skill profile-acornprover
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: profile
Source: https://github.com/acornprover/acorn/tree/main/.claude/skills/profile
Command: npx skills add https://github.com/acornprover/acorn --skill profile-acornprover

SYSTEM DOCUMENTATION & REQUIREMENTS

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

What problem does it solve?

This Skill helps identify and diagnose performance bottlenecks within the Acorn prover by generating detailed, top-down performance reports.

Core Features & Use Cases

  • Prover Profiling: Generates performance summaries for specific prover workloads like reprove and reverify.
  • Platform-Specific Workflows: Adapts profiling techniques for Linux (using perf) and macOS (using samply).
  • Detailed Breakdown: Provides a clear, hierarchical view of where execution time is spent, highlighting key functions and call paths.
  • Use Case: When the prover is running slower than expected, use this Skill to pinpoint the exact functions or modules consuming the most time, enabling targeted optimization efforts.

Quick Start

Use the profile skill to generate a top-down performance report for the profile_reverify target.

Frequently Asked Questions about profile

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

FAQPage Schema
How do I profile Acorn prover performance bottlenecks on Linux and macOS?

To profile Acorn prover performance bottlenecks, use this Skill to generate top-down summaries. It supports Linux using the `perf` command and macOS using `samply`, requiring specific build flags for accurate call graph execution analysis.

What is a top-down performance summary for prover workloads?

A top-down performance summary is a hierarchical report analyzing execution time distribution across functions and call paths. It helps identify exactly where prover workloads like `reprove` and `reverify` spend time.

Do I need specific build flags to profile Rust execution time accurately?

Yes, you need specific build flags to profile Rust execution time accurately. These flags ensure the compiled binary retains the necessary debug symbols for `perf` and `samply` to map execution data to specific functions.

Can I use `samply` to diagnose slow prover performance on macOS?

Yes, you can use `samply` to diagnose slow prover performance on macOS. The Skill adapts its profiling workflow specifically for macOS using `samply` and for Linux using `perf` to generate detailed reports.

When should I run a profiling analysis on the Acorn prover?

You should run a profiling analysis on the Acorn prover when it is running slower than expected. Use this Skill to pinpoint the exact functions or modules consuming the most execution time for targeted optimization.