Skip to content

Commit

Permalink
Add overhead_time_multiplier as a configurable option instead of hard…
Browse files Browse the repository at this point in the history
…coding to 2 (#612)
  • Loading branch information
Innixma authored Mar 19, 2024
1 parent cdd9ed5 commit 728d651
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 3 deletions.
4 changes: 2 additions & 2 deletions amlb/benchmark.py
Original file line number Diff line number Diff line change
Expand Up @@ -416,8 +416,8 @@ def __setattr__(self, name, value):
inference_time_extension = 0
if rconfig().inference_time_measurements.enabled:
inference_time_extension = rconfig().inference_time_measurements.additional_job_time
self.job_timeout_seconds = min(value * 2 + inference_time_extension,
value + rconfig().benchmarks.overhead_time_seconds + inference_time_extension)
overhead_time_multiplier = ns.get(rconfig(), "benchmarks.overhead_time_multiplier", 2)
self.job_timeout_seconds = min(value * overhead_time_multiplier, value + rconfig().benchmarks.overhead_time_seconds) + inference_time_extension
super().__setattr__(name, value)

def __json__(self):
Expand Down
4 changes: 3 additions & 1 deletion resources/config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,9 @@ benchmarks: # configuration namespace for the benchmarks def
# if 'fail' the benchmark will be immediately interrupted;
os_mem_size_mb: 2048 # the default amount of memory left to the OS when task assigned memory is computed automatically.
os_vol_size_mb: 2048 # the default amount of volume left to the OS when task volume memory is verified.
overhead_time_seconds: 3600 # amount of additional time allowed for the job to complete before sending an interruption signal
overhead_time_multiplier: 2 # multiplier to the time allowed for the job to complete before sending an interruption signal. Default is 2 if unspecified.
overhead_time_seconds: 3600 # amount of additional time allowed for the job to complete before sending an interruption signal.
# the total allowed time is min(value * overhead_time_multiplier, value + overhead_time_seconds)
metrics: # default metrics by dataset type (as listed by amlb.data.DatasetType),
# only the first metric is optimized by the frameworks,
# the others are computed only for information purpose.
Expand Down

0 comments on commit 728d651

Please sign in to comment.