Task

Write a program which uses a timer (with the least granularity available
on your system) to time how long a function takes to execute.

Whenever possible, use methods which measure only the processing time used
by the current process; instead of the difference in system time
between start and finish, which could include time used by
other processes on the computer.

This task is intended as a subtask for Measure relative performance of sorting algorithms implementations.




F do_work(x)
   V n = x
   L(i) 10000000
      n += i
   R n
 
F time_func(f)
   V start = time:perf_counter()
   f()
   R time:perf_counter() - start
 
print(time_func(() -> do_work(100)))