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 cache —
CHECKPOINT+DBCC DROPCLEANBUFFERSonce 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.