Context
When running asbench with the --output-file flag, asbench logs will print the following log lines in the output file.
// output file
write_hist 2025-01-22T19:08:48Z, 1.00006s, 366, 200:3, 300:9, 400:218, 500:124, 600:8, 700:2, 1000:1, 1800:1
write_hist 2025-01-22T19:08:48Z, 0.999996s, 367, 200:3, 300:7, 400:233, 500:115, 600:9
// hdr histogram
hdr: write 2025-01-22T19:08:48Z 1, 366, 274, 1879, 478, 550, 686, 1879, 1879
hdr: write 2025-01-22T19:08:48Z 2, 733, 274, 1879, 477, 551, 631, 1098, 1879
Method
This is format of the hdr histograms:
hdr: <transaction_type> <timestamp> <elapsed_seconds_since_start> <total_latencies_since_start> <lowest_latency_in_us> <highest_latency_in_us> <p90_highest_latency> <p95_highest_latency_us> <p99_highest_latency_us>Notes
-
We suggest running with --hdr-hist as the asbench hdr histogram log line is more of a summary and may not be as insightful as the histograms printed from the histogram file
-
hrd histograms are standard, so we can utilize tools that already exist to plot our p95/p99. For example, we can use this tool, HdrHistogram Plotter, to parse the output and graph it for us.