Open Mema5 opened 9 months ago
This paper (Feitelson 1997) seems to be defining makespan as max(finish_time)
...
It depends on the use case I believe, in some cases you may want to include to your makespan the platform initialization. In this case, max(finish_time) looks good. Otherwise, from scheduling perspective your update makes sens to me.
We discussed about that this morning with @mpoquet ..
max(finish_time)
is technically a DATE, not a duration. The makespan is a DURATION, the time needed to complete all the workload. So at least it should be conceptually max(finish_time) - TIME_ORIGIN
.
In most cases, the origin is t=0
and my change doesn't make a difference. But I think in most use case the new definition is the most correct.. But indeed, people should recalculate the metrics they want, depending on their use case, we are just here trying to assume the most common use of makespan
...
I realized that the definition of makespan chosen for batsim outputs is
max(finish_time)
(https://batsim.readthedocs.io/en/latest/output-schedule.html?highlight=makespan#schedule ). I think the most common definition ismax(finish_time) - min(submission_time)
.These definitions are the same if our time origin is 0 (first job submitted at t=0), but there is an offset otherwise.
Solutions proposed:
Personally, I don't see when the current definition can be better than the common one.