Selects most appropriate TimeUnit for given duration and formats it accordingly
Measures elapsed time for executing a block in nanoseconds