# jhawthorn/vernier

📏 next generation CRuby profiler

Repository: https://github.com/jhawthorn/vernier
Canonical: https://ross.abutalabs.com/products/vernier
Homepage: https://vernier.prof/
Language: Ruby
License: MIT
License Family: permissive
Topics: flamegraph, memory-profiler, profiler, ruby, cpu-profiler
Last push: 2026-08-17T17:34:49+00:00

## Health v2 (maintenance only)
Score: 93/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 98, release rhythm 82, longevity 100
- inputs: {"age_days": 1590, "days_push": 16, "days_rel": 120, "gap_med": 22, "n_releases_24m": 12}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1117, forks 36 (observed 2026-08-28T04:03:38.933787+00:00)

## What it is
Vernier is a next-generation sampling profiler for Ruby 3.2.1+ that tracks time, allocations, multiple threads, GVL activity, GC pauses, and idle time. Profiles can be recorded via CLI, block API, or Rack middleware and viewed as flame graphs or stack charts in a Firefox Profiler-based web viewer.

## Use cases
- profile a slow ruby script
- generate flame graphs for a rails app
- find memory allocation hotspots in ruby
- profile puma web requests in production
- profile sidekiq background jobs
- measure gc pauses and thread contention in ruby

## When to avoid
- you are on Ruby older than 3.2.1
- you need a profiler for Windows (Unix-like OS required)
- you need a deterministic line-by-line tracer rather than a sampling profiler

## Facets
- artifact type: library
- maturity: active
- function: benchmarking, monitoring, cli, middleware
- domain: developer-tools, performance, web-development
- platform: ruby, cli
- tags: profiler, flamegraph, sampling-profiler, memory-profiler, cpu-profiler, rack-middleware, firefox-profiler, linux, macos

## Member repositories
- jhawthorn/vernier (main) score 93

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:03:38.933787+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-30T06:41:53.861345+00:00, confidence not recorded.
  - readme: https://github.com/jhawthorn/vernier (fetched 2026-08-28T04:03:38.933787+00:00, sha 12d2af229cd2)
  - homepage: https://vernier.prof/ (fetched 2026-08-29T12:45:32.557336+00:00, sha 0ecac0a80b87)
- Data as of 2026-08-30T08:39:29.467469+00:00.
