Collection of examples and links that uses different profiling tools to show memory usage and timings.
Shows how to use the profiler and what the output looks like. Includes only tools that are maintained.
npx skills add rudolfolah/profiling-code --all installs every skill, including the advanced
Python skills that document process attachment and privileged DTrace workflows. Security scanners
therefore rate those skills more cautiously than skills that only explain an interactive profiler.
The rating is a prompt-risk assessment, not a report of a vulnerable npm dependency; review the
skill content and grant only the capabilities that fit your environment.
Prefer installing only the skills you need rather than using --all. To see the current CLI's
selection syntax, run npx skills add rudolfolah/profiling-code --help, then select skills by name.
The lower-risk starting set is:
browser-javascript-profilinggame-profilinggpu-profilingjavascript-profilingjvm-profilingpython-memory-profilingreact-profilingsystems-profiling
Add python-cpu-profiling only when external process sampling is needed, and add
python-dtrace-profiling only on a controlled macOS host where privileged DTrace access is
acceptable. python-profiling is an overview that links to both advanced workflows, so review
those referenced skills before enabling it. Pin or inspect the repository revision before
installing, re-run the assessments after updates, and never approve an elevation or process attach
solely because a skill suggested it.
awesome-profiling: Great list of profiling tools, though includes some tools for Python that are no longer maintained.
- Game Development: C#, Unity, Godot
- Node.js: JavaScript, TypeScript
- Python: examples using cProfile, guppy3, psutil, memray, pyinstrument, tracemalloc, yappi, filprofiler, DTrace
- gprof: GNU Profiler
- Tracy Profiler: supports C, C++, Lua, Python with 3rd party bindings for Rust, Zig, C#
- valgrind
- memcheck: memory error detection
- cachegrind: CPU cache profiling
- callgrind is cachegrind with a call graph and branch prediction profiler
- massif for heap profiling
- Apple Instruments
- VisualVM: Java profiling tool
- Java Flight Recorder and JDK Mission Control: Java profiling tool
- Chrome DevTools, JavaScript in the Web Browser
- AI: Claude Skill "performance profiler" for various performance profiling tools
- NVIDIA Visual Profiler
- NVIDIA Nsight Systems
- NVIDIA Nsight Compute
- Android GPU Inspector (AGI)
- Metal debugger
- AMD uProf
- Intel VTune Profiler
- "BPF Performance Tools", Brendan Gregg
- "Systems Performance: Enterprise and the Cloud, 2nd Edition", Brendan Gregg
- "All my favorite tracing tools: eBPF, QEMU, Perfetto, new ones I built and more", Tristan Hume
- "Flame Graphs: The future of performance analysis", Brendan Gregg
- "Flame Graphs", Brendan Gregg
- "Sampling v. tracing", Dan Luu
- Memory and CPU profiling, "The Hacker's Guide to Scaling Python", Julien Danjou
- ebpf-apps: sample apps for eBPF for C, C++, Python, Go, and Rust.
- Python profiling and performance tuning in production
- Memray: The endgame Python memory profiler
- GopherCon 2021: Go Profiling and Observability from Scratch
- eBPF
The repository bundles the following agent skills in .claude/skills/:
| Skill directory | Purpose | Notable bundled reference files |
|---|---|---|
browser-javascript-profiling |
Diagnose page-load cost, interaction latency, rendering jank, long tasks, and browser-retained objects with Chrome DevTools. | — |
game-profiling |
Profile Unity and Godot frame hitches, frame rate, allocations, memory, and rendering cost. | — |
gpu-profiling |
Select and use vendor and platform tools for GPU timelines, kernels, graphics captures, and counters. | nvidia.md, amd.md, intel.md, android.md, metal.md |
javascript-profiling |
Profile Node.js CPU use, allocations, retained heap, garbage collection, and event-loop latency. | — |
jvm-profiling |
Investigate JVM CPU, allocation, garbage collection, locks, safepoints, and memory with JFR, JMC, and related tools. | — |
python-cpu-profiling |
Compare and apply Python CPU and runtime profilers for call timing, sampling, and benchmarking. | cprofile.md, py-spy.md, pyinstrument.md, pyperformance.md, yappi.md |
python-dtrace-profiling |
Trace CPython function and source-line events with DTrace on macOS. | — |
python-memory-profiling |
Investigate Python allocations, object retention, heap growth, and process memory. | — |
python-profiling |
Choose an appropriate Python CPU, wall-clock, memory, or interpreter-event profiling workflow. | — |
react-profiling |
Measure React renders, commit duration, re-render frequency, and browser-trace correlations. | — |
systems-profiling |
Profile native programs with gprof, Linux perf, Tracy, Valgrind, and Apple Instruments. | gprof.md, linux-perf.md, tracy.md, valgrind.md, apple-instruments.md |
Install the skills from the public GitHub repository with the skills CLI:
npx skills add rudolfolah/profiling-codeTo install only one skill, use the CLI's --skill selection option:
npx skills add rudolfolah/profiling-code --skill gpu-profilingThe published collection is listed on the profiling-code skills.sh registry page.