std::tuple measure()

in fatal/benchmark/benchmark.h [263:282]


  std::tuple<duration, duration, iterations> measure(entry &i) const {
    iterations iterations = 1;
    duration net_duration(0);
    duration gross_duration(0);

    for (std::size_t tries = 0; tries < tries_threshold_; ++tries) {
      if (tries) {
        iterations *= 2;
      }

      net_duration = i.run(iterations);
      gross_duration += net_duration;

      if (net_duration >= duration_threshold_) {
        break;
      }
    }

    return std::make_tuple(net_duration, gross_duration, iterations);
  }