NASA-AMMOS / aerie

A software framework for modeling spacecraft.
https://nasa-ammos.github.io/aerie-docs/
MIT License
73 stars 19 forks source link

In-memory checkpoint simulation #1323

Closed adrienmaillard closed 5 months ago

adrienmaillard commented 9 months ago

Description

The first part of this branch has been done by @mattdailis, it

Then, I took this work and integrated it into the scheduling agent. Here are some elements of this work:

Other stuff:

This is not visible in the tests because the metric for simulation performance in scheduling has changed but all of this is greatly decreasing the required simulation time (for the scheduling tests at least...).

Verification

Few tests were added.

Documentation

Needs some documentation, at least for the configuration of cache size.

Future work

adrienmaillard commented 9 months ago

Matt, I have not rewritten your part of the history. I think there is some stuff to squash, let me know what you want to do.

adrienmaillard commented 9 months ago

Just added breaking change tag because the mission models need to be updated. Custom tasks need to implement the duplicate() method.

adrienmaillard commented 5 months ago

I think I have made all the changes you have asked for. I am wondering about the commit history of this branch, it's pretty horrible at this point, maybe I should merge the whole thing together to avoid polluting Aerie's commit history ?

Mythicaeda commented 5 months ago

Is it feasible to fix the history up at all? If not, then given how big this is I think I'd prefer a bunch of commits than it all just flattened into one mega "Checkpoint Simulation" commit.

adrienmaillard commented 5 months ago

Hey @Mythicaeda I have done all the required changes.

adrienmaillard commented 5 months ago

I adressed 3 of the 4 comments. For the last one, I don't want to change the name of GlobalConstraintWithIntrospection.