-
Notifications
You must be signed in to change notification settings - Fork 6
Open
Description
After a lot of testing, I continue to believe that our revolve implementation might not be doing the "right" thing. For 4 timesteps and 4 checkpoints, here is the schedule pyrevolve came up with:
Save
Forward from 0 to 1
Save
Forward from 1 to 2
Save
Forward from 2 to 3
Forward from 3 to 4
Reverse from 4 to 3
Load
Reverse from 3 to 2
Load
Reverse from 2 to 1
Load
Reverse from 1 to 0
Notice that there is no save between F(2, 3)
and F(3, 4)
and this is, I think, wrong. Even though we had 4 checkpoints, we wasted one by not storing this timestep.
Guillaume's utility, on the other hand, gave the following schedule for the same inputs (4 timesteps, 4 checkpoints):
Sequence: [WM_0, F_0->0, WM_1, F_1->1, WM_2, F_2->2, WM_3, F_3, B_4, RM_3, B_3, DM_3, RM_2, B_2, DM_2, RM_1, B_1, DM_1, RM_0, B_0, DM_0]
Metadata
Metadata
Assignees
Labels
No labels