@Override
  public void run() {
    for (int i = 0; i < warmupCycles; ++i) {
      task.run();
    }

    long[] results = new long[benchmarkCycles];
    for (int i = 0; i < benchmarkCycles; ++i) {
      task.run();
      results[i] = task.getResult();
    }

    result = average(results);
  }