# tmm1/stackprof

a sampling call-stack profiler for ruby 2.2+

Repository: https://github.com/tmm1/stackprof
Canonical: https://ross.abutalabs.com/products/stackprof
Language: Ruby
License: MIT
License Family: permissive
Last push: 2026-03-24T03:05:42+00:00

## Health v2 (maintenance only)
Score: 65/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 73, release rhythm 35, longevity 100
- inputs: {"age_days": 4710, "days_push": 162, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_releases
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 2192, forks 136 (observed 2026-08-28T04:06:24.968474+00:00)

## What it is
Stackprof is a sampling call-stack profiler for Ruby 2.2+ inspired by gperftools. It collects CPU, wall, object, and other profile samples with low overhead and provides CLI reporting including flamegraph generation.

## Use cases
- profile cpu usage of a ruby application
- find slow methods in a rails app
- generate flamegraphs from ruby stack samples
- profile memory allocations in ruby
- add sampling profiling middleware to a rack app
- analyze which callers invoke a hot method

## When to choose
- you need low-overhead production or development profiling for Ruby 2.2+
- you want flamegraph or per-method sample reports from a CLI
- you need rack middleware to profile web requests

## When to avoid
- you are profiling non-Ruby code
- you need a graphical profiler UI out of the box (see stackprof-webnav)
- you are on a non-Linux OS

## Facets
- artifact type: library
- maturity: stable
- function: benchmarking, monitoring, developer-tools, cli
- domain: performance, developer-tools, backend
- platform: ruby, cli
- tags: profiler, sampling-profiler, call-stack, flamegraph, rack-middleware, linux

## Member repositories
- tmm1/stackprof (main) score 65

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:06:24.968474+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T02:47:27.294048+00:00, confidence not recorded.
  - readme: https://github.com/tmm1/stackprof (fetched 2026-08-28T04:06:24.968474+00:00, sha 74b6c4871ae9)
- Data as of 2026-08-30T08:39:29.467469+00:00.
