Closed
Description
When performing a benchmark, we can currently use SetBytes(int64)
to set the number of input or output bytes per run, and get a measurement like X MB/s
in the output.
It would be nice to be able to set an arbitrary unit instead of "bytes", and to provide multiple scales instead of just "mega" (1e6).
Example 1: pixels per second (px/s): b.SetUnits(1920*1080, "px/s")
when benchmarking a full-HD image would print to the output one of the following, depending on the scale of the result:
- "X px/s"
- "X kpx/s"
- "X Mpx/s"
- "X Gpx/s"
Example 2: frames per second (fps): b.SetUnits(1, "fps")
when benchmarking one frame operation.
The existing implementation of SetBytes(b int64)
could just call SetUnits(b, "B/s")
for backwards compatibility.