Repository navigation
Announcing Hyperlight 0.19.0 - #18
Conversation
Signed-off-by: Yosh <github@yosh.is>
| ``` | ||
|
|
||
| As a result of this change snapshots no longer contain a zero-filled heap | ||
| region, making them smaller and faster to create, save, and load. Note that |
There was a problem hiding this comment.
I think this is the change that made things significantly faster? should we share those numbers too @ludfjig
There was a problem hiding this comment.
I've applied Ludvig's comment in #18 (comment) and mentioned that guest heap operations are now faster. There is some risk in overwhelming people with too many numbers, so if we were to add a table here I'd probably remove the other section.
jsturtevant
left a comment
There was a problem hiding this comment.
approve with one comment
ludfjig
left a comment
There was a problem hiding this comment.
Thanks for writing this up. Reads great
| There are however some downsides to these changes: the `load_snapshot` benchmark | ||
| has seen a 14% regression, and the `save_snapshot` benchmark has seen a 10–22% | ||
| regression. We believe those regressions are acceptable given how much faster | ||
| it’s made the other snapshot operations. And we expect to be able to speed these | ||
| operations up again in future patches. |
There was a problem hiding this comment.
I'm not sure these regressions are true if you consider the full 4-pr stack. IIRC this was only 1 of the prs regression. I think perhaps these did not regress in the grand scheme of things.
There was a problem hiding this comment.
Fair enough; I'll omit.
| ## Guest heap is now backed by scratch memory | ||
|
|
||
| Heap memory in the guest is now backed by the scratch region, providing a single | ||
| value to control. The heap size is now also *variable*, meaning it can continue |
There was a problem hiding this comment.
I'm not sure I'm a big fan of the word "variable". I guess you're referring to the fact that both stack and heap share scratch and how much heap you have depends on how much stack you're using?
There was a problem hiding this comment.
Yeah, that's what I meant. Do you think we should rephrase this or is it better to omit?
There was a problem hiding this comment.
I think dropping just this sentence hsould be fine
| size. Running out of scratch aborts the guest with `MallocFailed`, rather than | ||
| returning a failed allocation. |
There was a problem hiding this comment.
I'd maybe drop this final sentence, it's pretty implementation specific
| snapshot or restore. Though note that this value is guest-controlled, and should | ||
| be used for diagnostics only. | ||
|
|
||
| ## Guest heap is now backed by scratch memory |
There was a problem hiding this comment.
Guest heap allocations is also faster than before, I think we should call that out, even if just in a sentence (. See hyperlight-dev/hyperlight#1968
Signed-off-by: Yosh <github@yosh.is>
Creates the 0.19.0 release post. Thanks!