Skip to content
Back to skills

Vllm Benchmark Result Analysis

ASecurity

Compare vLLM serving benchmark outputs before and after a code change. Parses plain-text vLLM benchmark output (the "Serving Benchmark Result" block), computes per-metric percentage changes with improvement/regression markers, generates a Markdown report with a full metrics table and a key-changes summary, and saves it to ./outputs/. Use when the user pastes or provides vLLM benchmark output and asks to compare, summarize, or analyze performance differences between two runs (e.g., "before thi...

  • 19 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 29, 2026
ai-agentspythonbashperformance

Security analysis

A100/100

Pro scans all 9 files and shows the line behind each finding

Scanned September 29, 2026

npx -y skills add shen-shanshan/vllm-dev-skills --skill vllm-benchmark-result-analysis --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Vllm Benchmark Result Analysis?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Vllm Benchmark Result Analysis
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/shen-shanshan-vllm-benchmark-result-analysis/badge)](https://www.skillsdirectory.com/skills/shen-shanshan-vllm-benchmark-result-analysis)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: vllm-benchmark-result-analysis
description: Compare vLLM serving benchmark outputs before and after a code change. Parses plain-text vLLM benchmark output (the "Serving Benchmark Result" block), computes per-metric percentage changes with improvement/regression markers, generates a Markdown report with a full metrics table and a key-changes summary, and saves it to ./outputs/. Use when the user pastes or provides vLLM benchmark output and asks to compare, summarize, or analyze performance differences between two runs (e.g., "before this PR" vs "after this PR", or any before/after wording).
---

# vLLM Benchmark Summary

## Workflow

1. **Identify the input** — the user pastes combined text containing a "before" block and an "after" block (or provides two separate files).
2. **Save the input** to `/tmp/bench_input.txt`, then run the script.
3. **Run the script** using the bundled `./scripts/compare_benchmarks.py`. This generates the Performance Metrics table.
4. **Generate the Summary** — after the script runs, analyze the table data and write a narrative `## AI Summary` section (see guidelines below).
5. **Assemble and save** — append the Summary to the output file, then show the complete report to the user.

## Running the Script

### Combined text input (most common)

Save the user's pasted text to `/tmp/bench_input.txt`, then:

```bash
python3 /Users/shanshan-shen/.claude/skills/vllm-benchmark-result-analysis/scripts/compare_benchmarks.py \
    /tmp/bench_input.txt \
    --output-dir /Users/shanshan-shen/.claude/skills/vllm-benchmark-result-analysis/outputs \
    --title "vLLM Benchmark Comparison"
```

### Two separate files

```bash
python3 /Users/shanshan-shen/.claude/skills/vllm-benchmark-result-analysis/scripts/compare_benchmarks.py \
    --before before.txt --after after.txt \
    --output-dir /Users/shanshan-shen/.claude/skills/vllm-benchmark-result-analysis/outputs \
    --title "vLLM Benchmark Comparison"
```

## Input Format

The script expects the standard vLLM benchmark output block:

```
Before this PR:          ← any line containing "before" (case-insensitive)

============ Serving Benchmark Result ============
Metric Name:                     value
...
==================================================

After this PR:           ← any line containing "after" (case-insensitive)

============ Serving Benchmark Result ============
...
==================================================
```

Metric lines must follow the pattern `Metric Name: <number>`. Section separator lines (`===`, `---`) are ignored automatically.

## Output

The script creates a report file under `/Users/shanshan-shen/.claude/skills/vllm-benchmark-result-analysis/outputs/` containing:

- **Performance Metrics table** — metrics grouped into **Throughput** and **Latency** sections, with left-aligned columns and percentage comparison (e.g. `+0.54% ↑`, `-9.86% ↓`)

After the script runs, **read the output file path from the script's stdout**, then **append a `## AI Summary` section** with narrative bullet points, and save the complete report.

### Comparison column format

- Two decimal places with sign and direction arrow: `+0.54% ↑`, `-9.86% ↓`
- Arrow indicates direction of change only (↑ = value increased, ↓ = value decreased), not whether it is an improvement

### Summary Writing Guidelines

Write 4–6 narrative bullet points covering:
- The standout improvement (largest positive delta for a "lower is better" metric, or largest increase for "higher is better")
- Notable TTFT / TPOT / ITL changes with before→after values
- Overall throughput trend (flat, improved, or regressed)
- Any minor regressions worth flagging, noting if they may be within noise
- Any peak or burst metric anomalies with context

Direction conventions — use these to frame improvements vs. regressions:
- **Lower is better**: TTFT, TPOT, ITL (all variants), Benchmark duration, Failed requests
- **Higher is better**: Request throughput, Output/Total token throughput

Style rules:
- Use `**bold**` to emphasize key percentages and before→after values (e.g. `**-18.45%**`, `439ms → 359ms`)
- Do **not** use ✅/❌ markers — write in plain narrative style
- Keep bullets concise (1–2 sentences each)

### Table format

Refer to the `reference/reference.md` file for a full example of the generated report format and content.

## Notes

- Always use `--title "vLLM Benchmark Comparison"` unless the user specifies a different title.
- Save the output file into `/Users/shanshan-shen/.claude/skills/vllm-benchmark-result-analysis/outputs`.
- The script requires only the Python standard library — no extra dependencies.

Files in this skill

  • SKILL.md4.6 KB
  • outputs/benchmark_comparison_20260311_173447.md2 KB
  • outputs/benchmark_comparison_20260317_195906.md2.3 KB
  • outputs/benchmark_comparison_20260323_150830.md2.4 KB
  • outputs/benchmark_comparison_20260323_152935.md2.3 KB
  • outputs/benchmark_comparison_20260727_225600.md2.6 KB
  • outputs/benchmark_comparison_20260727_232600.md2.6 KB
  • reference/reference.md2 KB
  • scripts/compare_benchmarks.py8.1 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…