Replies: 7 comments
-
I think this is a great idea. However, I don't have any ideas on how to implement it. Do you have any ideas for pointers to get started on this? If you're feeling adventurous, a draft PR to update the github workflow would be much appreciated! |
Beta Was this translation helpful? Give feedback.
-
Sorry, I guess I didn't use my brain before I responded... Thinking about this a bit more... Do you think it would work to do the following
I am not very familiar with the checkpoint upgrader, so I hope that someone with more knowledge can step in and check to see if this makes sense. |
Beta Was this translation helpful? Give feedback.
-
Yes, this is exactly what i had in mind. Sorry my previous description was a bit vage.
yes
yes, it runs all pending upgrades. A bit of testing on this would be good, but that is how it is meant to work.
I don't think so, should be marginal wrt any of the tests using a checkpoint. |
Beta Was this translation helpful? Give feedback.
-
Better idea (unless i'm missing something): Why don't we just embed the upgrader in gem5 and if gem5 is presented with an old checkpoint will parse upgrade it prior to loading. That we we can use old checkpoints indefinitely. This way if a checkpointing test fails, you only need to update the internal upgrader. |
Beta Was this translation helpful? Give feedback.
-
I think that is OK, but it is a bit more intrusive. I am a bit paranoid, but I'd rather keep my checkpoints untouched and get an error, than getting checkpoints upgraded automatically (without me explicitly choosing to do so). Even if a message is printed saying checkpoints have been upgraded, it can be easily missed on batch runs, and maybe results are not reproducible for whatever reason anymore. |
Beta Was this translation helpful? Give feedback.
-
Is this really a valid thing to be paranoid about? It seems to be a moot point being paranoid about checkpoints changing if you're using checkpoints generated from version X of gem5 and use them in Version >X. Across gem5 versions literally anything can change. |
Beta Was this translation helpful? Give feedback.
-
Been thinking about situations where this could be problematic, and you are probably right, i.e.,cChanging versions usually means updating checkpoints. |
Beta Was this translation helpful? Give feedback.
-
Currently, if a PR modifies the checkpoint format CI testing will fail until the checkpoint is manually upgraded.
It would be great that if a PR also includes a cpt_upgrader patch, all checkpoints used for CI testing apply the cpt_upgrader before running the test, enabling seamless CI testing for such PRs.
Beta Was this translation helpful? Give feedback.
All reactions