agent-substrate / agent-substrate/substrate

Start sandbox creation before the image pull / checkpoint download completes

未關閉
#968 2 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視
area/node kind/feature
主要語言
Go
星號
1.8k
分支
316
平均合併
2 天 43 分鐘
30 天內合併 PR
287

描述

ateom doesn't hear anything until all of atelet's prep is done, so sentry startup is serialized after the image pull (cold start) or the checkpoint download (restore).

- Restore: download and bundle prep run concurrently, but [g.Wait()](https://github.com/agent-substrate/substrate/blob/89b83a5c89db8b189401645a645b01c144b7d728/cmd/atelet/main.go#L1090) gates the `RestoreWorkload` RPC on both.
- Cold start: `prepareOCIBundles` completes before `RunWorkload` is sent

Nothing about the sandbox itself depends on the actor image or the checkpoint. The sandbox could be booting while those are still downloading.

## Proposal

Split sandbox creation out of `RunWorkload` / `RestoreWorkload` into its own RPC that atelet can send as soon as the sandbox-level config is ready, then have the existing RPC start the containers.

It helps cold start and DATA-scope restore. Does not help FULL / DATA_ON_GOLDEN restore, where the sentry comes from the memory image.

貢獻指南

開啟貢獻指南

評估

這個 Issue 還沒有評估資料。

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。