Interface & Features — Query Benchmark

Walk through the main screens, tabs, and controls you will use day to day.

Cache Modes

  • Production safe (default) — No cache clearing. Safe on shared/production servers.
  • Warm cacheCHECKPOINT + DBCC DROPCLEANBUFFERS once before measured runs. Clears the buffer pool; plan cache remains.
  • Cold cache — Warm mode plus DBCC FREEPROCCACHE. Lab environments only; needs elevated rights.

Think Time

Optional delay between iterations for each virtual user: None, Fixed ms, or Random between min/max. Use this to avoid unrealistically aggressive hammering and to simulate client pacing.

Functional Validation

In compare mode, optionally verify Query A and Query B return equivalent results (not only speed):

  • Row count — Same number of rows.
  • Checksum / SHA256 — Hash of result values.
  • Detailed compare — Stronger fingerprinting to help locate differences.

Execution Engine

Each iteration opens its own SQL connection (so session wait stats stay isolated). Metrics are deltas from sys.dm_exec_sessions / task space usage, plus post-run lookup of grant/DOP from sys.dm_exec_query_stats when available. Wait types come from sys.dm_exec_session_wait_stats before/after each execution on that session.

Results

The Results tab shows a verdict banner, KPI cards, detailed metrics (avg / min / max), iteration grid, wait stats, live charts (if enabled), plan buttons, and Performance Tuning Tips.

  • Single — Metrics + query text side by side; Show Plan opens one plan.
  • Compare — Query A vs Query B panels, visual bars, Open Plan Comparison.

Metrics Explained

  • Duration — Client-measured wall time for the statement (avg / min / max across successful iterations).
  • Logical / Physical reads — Session counters (avg / min / max).
  • DOP — Actual degree of parallelism from query stats when available.
  • Query grant memory (KB) — Memory grant from sys.dm_exec_query_stats (last_grant_kb). This is the meaningful workspace grant; older “session memory_usage” deltas are often zero for short queries.
  • CPU / TempDB — Session CPU and TempDB page allocation deltas.

Wait Stats

Waits are collected per iteration session and aggregated per query. In compare mode the grid shows A and B columns for the same wait type so you can see which side waited more (separate sessions — not a shared server-wide wait snapshot).

Plans & Tuning Tips

  • Show Plan / Plan Comparison — Graphical operators, diffs, missing indexes.
  • Performance Tuning Tips — Heuristic analysis of SQL text + plan (anti-patterns, scans, lookups, spills, etc.) with optional rewrite suggestions.

Capacity Estimate

Uses server CPU/memory/MAXDOP to suggest conservative / recommended / aggressive concurrent users for lab-style load tests. Apply recommended users to populate the concurrency field.

History & Export

Runs are saved locally under History with retention controls. Export CSV, PDF, JSON, HTML, Markdown, or Excel from Results.