void (final String caption, final int bytesPerShot, final int averageDelayBetweenShotsNs, final int totalRoundsPerThread, final Histogram responseTimeUsHisto) { final double meanResponseTimeUs = responseTimeUsHisto.getMean(); final double averageDelayBetweenShotsUs = averageDelayBetweenShotsNs / 1000.0; final double totalTimePerRoundUs = Math.max(meanResponseTimeUs, averageDelayBetweenShotsUs); final double perThreadUtilizationPercents = meanResponseTimeUs * 100.0 / totalTimePerRoundUs; System.out.printf( "%-50s: %d bytes, %d threads, [%.1f us avg, %.0f us in between, u=%.1f%%] => {50%%: %d, 90%%: %d, 99%%: %d, max: %d } us\n", caption, bytesPerShot, THREADS, meanResponseTimeUs, averageDelayBetweenShotsUs, perThreadUtilizationPercents, responseTimeUsHisto.getValueAtPercentile(50), responseTimeUsHisto.getValueAtPercentile(90), responseTimeUsHisto.getValueAtPercentile(99), responseTimeUsHisto.getMaxValue() ); }