Let's consider the metrics only on a smaller time window on the simulation outputs to avoid border effects.
Let's consider the metrics only on a smaller time window on the simulation outputs to avoid border effects.
**Warm up time.** The *max turnaround time* in the original log is 62 days 11:39:03. Let's leave at least this time for the plateform to "warm up". Since the first job in SDSC log is submitted at 1998-05-01 07:26:33 which is a Friday, let's start to calculate our metrics on the Monday two month after ie **Monday 1998-07-06 00:00:00**
**Warm up time.** The *max turnaround time* in the original log is 62 days 11:39:03. Let's leave at least this time for the plateform to "warm up". Since the first job in SDSC log is submitted at 1998-05-01 07:26:33 which is a Friday, let's start to calculate our metrics on the Monday two month after ie **Monday 1998-07-06 00:00:00**
**Simulation tail.** Since we simulate conditions that can greatly affect the pace at which the log is consumed (doubling the speed of the machine..), let's exclude a couple of month in the end of the log, to be safe. We suggest to **give the metrics for the 6, 9, 12, 15 and 18 first month of the simulation** ie until (Sunday 1998-12-27 23:59:59) + 13k weeks.
**Simulation tail.** Since we simulate conditions that can greatly affect the pace at which the log is consumed (doubling the speed of the machine..), let's exclude a couple of month in the end of the log, to be safe. We suggest to **give the metrics for the 6, 9, 12, 15 and 18 first month of the simulation** ie until (Sunday 1998-12-27 23:59:59) + 13k weeks.
throughput.plot(kind="barh",title="average #jobs finished per day",color=col1,ax=ax[0])
throughput.plot(kind="barh",title="average #jobs finished per day",color=col1,ax=ax[0])
mean_util.plot(kind="barh",title="mean utilization (in %)",color=col2,ax=ax[1])
mean_util.plot(kind="barh",title="mean utilization (in %)",color=col2,ax=ax[1])
ax[0].grid();ax[1].grid()
ax[0].grid();ax[1].grid()
ax[0].invert_yaxis()
ax[0].invert_yaxis()
ax[0].legend(loc='lower left')
ax[0].legend(loc='lower left')
```
```
%% Cell type:markdown id: tags:
%% Cell type:markdown id: tags:
The graph above shows that our metrics are still completely dictated by the log, despite our replay model: when we mutliply or devide our infra by two, the **utilization** scales accordingly, but the **throughput** remains roughly the same.
The graph above shows that our metrics are still completely dictated by the log, despite our replay model: when we mutliply or devide our infra by two, the **utilization** scales accordingly, but the **throughput** remains roughly the same.
**Our replay model is not sufficient to capture the rebound effect.**
**Our replay model is not sufficient to capture the rebound effect.**