You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The credit scaling in the impl was backwards from the prototype
The credit scaling for levelling vs teiring use different formulas. The
implementation's version of this scaling had the two cases swapped. This
will have resulted in supplying too few credits to levelling runs (and
thus having to complete too much at the end) and too many to teiring
runs (thus completing too early). In both cases it will have resulted in
IO not being spread out evenly, and thus higher peak latency for
updates.
We can now successfully assert that upon expecting a merging run to be
complete we have supplied credits equalling the total debt. Previously
this assertion failed, which led to the discovery of the bug.
We need to find a test to ensure we are spreading out merging work and
not supplying too many credits. We supply credits for the worst case,
which currently means we supply excess in typical cases. We should scale
the credit supply to the actual debt for each merge, based on the size
of the input runs.
0 commit comments