'Constructor:
- max_time: Maximum wanted duration of the whole benchmark
(default: 5 seconds, minimum: 1 second).
- min_count: Minimum number of function calls to get good statistics
(defaut: 5, minimum: 1).
- progress_time: Time between each "progress" message
(default: 1 second, minimum: 250 ms).
- max_count: Maximum number of function calls (default: no limit).
- verbose: Is verbose? (default: False)
- disable_gc: Disable garbage collector? (default: False)'

def __init__(self, max_time=5.0, min_count=5, max_count=None, progress_time=1.0):

    self.max_time = max(max_time, 1.0)
    self.min_count = max(min_count, 1)
    self.max_count = max_count
    self.progress_time = max(progress_time, 0.25)
    self.verbose = False
    self.disable_gc = False
