Agent skill
performance-analyzer
Analyze Rust code for performance issues, allocation hot spots, and optimization opportunities
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/other/other/performance-analyzer
SKILL.md
Performance Analyzer
Analyze performance-critical code in this secret scanning engine.
When to Use
- After writing hot-path code (scanning, decoding, validation)
- Before committing changes to
src/engine/modules - When benchmark results show unexpected regressions
- During optimization work on data structures in
src/stdx/
Analysis Checklist
Memory & Allocation
- Unnecessary allocations in loops (Vec, String, Box)
- Missing
with_capacity()for known-size collections - Cloning where borrowing would suffice
- Large structs passed by value instead of reference
CPU & Cache
- False sharing in concurrent data structures
- Cache-unfriendly access patterns (strided, random)
- Missing
#[inline(always)]on hot functions - Branch-heavy code that could use branchless alternatives
Async & Concurrency
- Blocking operations in async contexts
- Lock contention patterns
- Oversized futures (check with
std::mem::size_of) - Unnecessary
ArcwhenRcor ownership would work
Rust-Specific
- Bounds checks in hot loops (consider
get_uncheckedwith proof) - Iterator vs manual loop performance
-
&strvsStringin function signatures - Zero-cost abstraction violations
Project-Specific Patterns
This codebase uses these performance patterns:
NONE_U32 = u32::MAXas sentinel (avoid Option overhead)#[inline(always)]on hot-path functionsdebug_assert!for invariant checks (zero cost in release)- Const generics (
G) for compile-time granularity selection
Output Format
## Performance Analysis: [file/function]
### Findings
| Severity | Issue | Location | Impact |
|----------|-------|----------|--------|
| HIGH | Allocation in hot loop | line:XX | ~Xns per call |
| MEDIUM | Missing inline hint | line:XX | Potential call overhead |
### Recommendations
1. **[Issue]**: [Specific fix with code example]
```rust
// Before
// After
Validation
Run these benchmarks to verify:
cargo bench --bench <relevant_bench>
## Related Skills
- `bench-compare` - Before/after measurement
- `rust-hotspot-finder` - Systematic hotspot scanning
- `perf-regression` - Full regression workflow
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
Didn't find tool you were looking for?