module Benchmark::IPS::Helpers

def humanize_duration(duration_ns)

def humanize_duration(duration_ns)
  if duration_ns < 1000
    "%.2f ns" % duration_ns
  elsif duration_ns < 1_000_000
    "%.2f μs" % (duration_ns / 1000)
  elsif duration_ns < 1_000_000_000
    "%.2f ms" % (duration_ns / 1_000_000)
  else
    "%.2f s" % (duration_ns / 1_000_000_000)
  end
end

def scale(value)

def scale(value)
  scale = (Math.log10(value) / 3).to_i
  scale = 0 if scale < 0 || scale >= SUFFIXES.size
  suffix = SUFFIXES[scale]
  scaled_value = value.to_f / (1000 ** scale)
  "%10.3f#{suffix}" % scaled_value
end