-
Notifications
You must be signed in to change notification settings - Fork 4
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Release v2.14.0 * upgrade guide for v2.14.0 * restore png assets from develop (??) * clarify that 2.14 configs are optional --------- Co-authored-by: joswig <[email protected]> Co-authored-by: dandelany <[email protected]>
- Loading branch information
1 parent
49df579
commit f1f7467
Showing
2 changed files
with
20 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
# 2.13.0 to 2.14.0 | ||
|
||
No special instructions are **necessary** to upgrade to `v2.14.0`. The following sections describe newly available Aerie configurations, which are optional. | ||
|
||
## In-Memory Checkpoint Simulation | ||
|
||
Aerie 2.14.0 includes an experimental [In-Memory Checkpoint Simulation](https://github.com/NASA-AMMOS/aerie/pull/1323) feature which is intended to improve the performance of the **scheduler** by setting "simulation checkpoints" from which the simulation engine can restart, rather than always re-running the entire simulation. This improved performance comes at the cost of memory usage, which may be quite significant for larger models/plans, so it is disabled by default. If you don't want to use this feature, no changes to your deployment or models are necessary. | ||
|
||
**To use this feature in your Aerie deployment, you must:** | ||
|
||
1. Modify the `MAX_NB_CACHED_SIMULATION_ENGINES` environment variable for the Aerie Scheduler Worker to be larger than `1`. The higher this value is, the more checkpoints may be set, resulting in increased performance at the cost of higher memory usage. If the number is too high, you may encounter out-of-memory errors on larger models and plans. | ||
2. Implement a `duplicate()` method on any custom tasks that are used by your model. The `duplicate()` method is called when a checkpoint is created, and should return a duplicate/"deep copy" of the task, which can be stepped independently of the original task. This is required because the checkpoint creates a duplicate copy of the entire simulation engine, including its tasks. For more information, see the [documentation for this method](https://github.com/NASA-AMMOS/aerie/blob/2b8a5945fdb51c724768d55abc84ea9cab86338c/merlin-sdk/src/main/java/gov/nasa/jpl/aerie/merlin/protocol/model/Task.java#L37). | ||
|
||
An example implementation of a `duplicate()` method on a task can be found in Aerie's `ReplayingTask` class, [located here](https://github.com/NASA-AMMOS/aerie/blob/develop/merlin-framework/src/main/java/gov/nasa/jpl/aerie/merlin/framework/ReplayingTask.java#L75). | ||
|
||
## Configuring Sequence Expansion Workers | ||
|
||
[PR #1476](https://github.com/NASA-AMMOS/aerie/pull/1476) exposes a new environment variable in the sequencing server that can be used to limit the maximum number of workers the server uses for sequence expansion. This is set to a default value of `8` if not provided, but can be increased to improve performance of sequence expansion at the cost of additional memory usage. | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters