Java Profiling Workflow / Step 2 / Analyze profiling data
Analyze profiling results systematically: inventory results (flamegraphs, JFR, GC logs, thread dumps), identify problems (memory leaks, CPU hotspots, threading issues), document findings using standardized templates (profiling-problem-analysis-YYYYMMDD.md, profiling-solutions-YYYYMMDD.md), prioritize using Impact/Effort scores, and correlate multiple profiling files for validation.
What is covered in this Skill?
- Inventory: scan profiler/results/ for allocation-flamegraph, heatmap-cpu, memory-leak, *.jfr, *.log, *.txt
- Problem identification: memory (leaks, excessive allocations, GC pressure), performance (CPU hotspots, blocking), threading (deadlocks, contention, pool saturation)
- Documentation: docs/profiling-problem-analysis-YYYYMMDD.md, docs/profiling-solutions-YYYYMMDD.md
- Prioritization: Impact (1–5) / Effort (1–5), focus on high priority first
- Tools: async-profiler, JFR, JProfiler/YourKit, GCViewer, flamegraphs, heatmaps
Scope: Validate profiling results represent realistic load scenarios. Cross-reference multiple files. Include quantitative metrics.
Constraints
Validate profiling results represent realistic load before analysis. Document assumptions and limitations. Cross-reference multiple files.
- VALIDATE: Ensure profiling results represent realistic load scenarios before analysis
- DOCUMENT: Record assumptions and limitations in analysis reports
- CROSS-REFERENCE: Use multiple profiling files to validate findings
- BEFORE APPLYING: Read the reference for problem analysis and solutions templates
- EDGE CASE: If request scope is ambiguous, stop and ask a clarifying question before applying changes
- EDGE CASE: If required inputs, files, or tooling are missing, report what is missing and ask whether to proceed with setup guidance
When to use this skill
- Analyze JFR profile
- Analyze the profile
- Analyze the performance
- Analyze the memory
- Analyze the threading
- Analyze the GC
- Analyze the profiling
- Analyze the profiling
- Performance analysis
Workflow
- Read analysis reference and inventory inputs
Read references/162-java-profiling-analyze.md and inventory profiling artifacts in profiler/results/.
- Validate data quality and assumptions
Confirm datasets represent realistic load conditions and record assumptions/limitations before drawing conclusions.
- Identify and prioritize bottlenecks
Analyze memory/CPU/threading findings, cross-reference multiple files, and prioritize issues by Impact/Effort.
- Document findings and solution options
Create docs/profiling-problem-analysis-YYYYMMDD.md and docs/profiling-solutions-YYYYMMDD.md with quantitative evidence.
Reference
For detailed guidance, examples, and constraints, see references/162-java-profiling-analyze.md.
1---2name: 162-java-profiling-analyze3description: Use when you need to analyze Java profiling data collected during the detection phase — including interpreting flamegraphs, memory allocation patterns, CPU hotspots, threading issues, systematic problem categorization, evidence documentation with profiling-problem-analysis and profiling-solutions markdown files, or prioritizing fixes using Impact/Effort scoring. This should trigger for requests such as Analyze JFR profile; Analyze the profile; Analyze the performance; Analyze the memory. Part of cursor-rules-java project4license: Apache-2.05---6# Java Profiling Workflow / Step 2 / Analyze profiling data
7
8Analyze profiling results systematically: inventory results (flamegraphs, JFR, GC logs, thread dumps), identify problems (memory leaks, CPU hotspots, threading issues), document findings using standardized templates (profiling-problem-analysis-YYYYMMDD.md, profiling-solutions-YYYYMMDD.md), prioritize using Impact/Effort scores, and correlate multiple profiling files for validation.
9
10**What is covered in this Skill?**
11
12- Inventory: scan profiler/results/ for allocation-flamegraph, heatmap-cpu, memory-leak, *.jfr, *.log, *.txt
13- Problem identification: memory (leaks, excessive allocations, GC pressure), performance (CPU hotspots, blocking), threading (deadlocks, contention, pool saturation)
14- Documentation: docs/profiling-problem-analysis-YYYYMMDD.md, docs/profiling-solutions-YYYYMMDD.md
15- Prioritization: Impact (1–5) / Effort (1–5), focus on high priority first
16- Tools: async-profiler, JFR, JProfiler/YourKit, GCViewer, flamegraphs, heatmaps
17
18**Scope:** Validate profiling results represent realistic load scenarios. Cross-reference multiple files. Include quantitative metrics.
19
20## Constraints
21
22Validate profiling results represent realistic load before analysis. Document assumptions and limitations. Cross-reference multiple files.
23
24- **VALIDATE**: Ensure profiling results represent realistic load scenarios before analysis
25- **DOCUMENT**: Record assumptions and limitations in analysis reports
26- **CROSS-REFERENCE**: Use multiple profiling files to validate findings
27- **BEFORE APPLYING**: Read the reference for problem analysis and solutions templates
28- **EDGE CASE**: If request scope is ambiguous, stop and ask a clarifying question before applying changes
29- **EDGE CASE**: If required inputs, files, or tooling are missing, report what is missing and ask whether to proceed with setup guidance
30
31## When to use this skill
32
33- Analyze JFR profile
34- Analyze the profile
35- Analyze the performance
36- Analyze the memory
37- Analyze the threading
38- Analyze the GC
39- Analyze the profiling
40- Analyze the profiling
41- Performance analysis
42
43## Workflow
44
451. **Read analysis reference and inventory inputs**
46
47Read `references/162-java-profiling-analyze.md` and inventory profiling artifacts in `profiler/results/`.
48
492. **Validate data quality and assumptions**
50
51Confirm datasets represent realistic load conditions and record assumptions/limitations before drawing conclusions.
52
533. **Identify and prioritize bottlenecks**
54
55Analyze memory/CPU/threading findings, cross-reference multiple files, and prioritize issues by Impact/Effort.
56
574. **Document findings and solution options**
58
59Create `docs/profiling-problem-analysis-YYYYMMDD.md` and `docs/profiling-solutions-YYYYMMDD.md` with quantitative evidence.
60
61## Reference
62
63For detailed guidance, examples, and constraints, see [references/162-java-profiling-analyze.md](references/162-java-profiling-analyze.md).