about summary refs log tree commit diff
path: root/tvix/docs/src/TODO.md
diff options
context:
space:
mode:
authorFlorian Klink <flokli@flokli.de>2024-10-15T15·00+0300
committerclbot <clbot@tvl.fyi>2024-10-17T22·32+0000
commit4ebb8f42ed344ccad1890b71d9c29cb50d477c11 (patch)
tree78dbfc315c627aa760b56b60827c1d6d57f49dd5 /tvix/docs/src/TODO.md
parent1c80bc4b5b2736e9421fc8a6f833f1e592e08642 (diff)
docs(tvix/TODO): extend NAR rendering prefetching idea r/8826
With the seekable NAR renderer, figuring out the next few blobs to
render became possible.

Change-Id: I1214302f88e6f9aba74227f84df0f964d587baf2
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12652
Tested-by: BuildkiteCI
Reviewed-by: edef <edef@edef.eu>
Autosubmit: flokli <flokli@flokli.de>
Diffstat (limited to 'tvix/docs/src/TODO.md')
-rw-r--r--tvix/docs/src/TODO.md9
1 files changed, 7 insertions, 2 deletions
diff --git a/tvix/docs/src/TODO.md b/tvix/docs/src/TODO.md
index 8788d18d8c7e..b0fdc68a8b6d 100644
--- a/tvix/docs/src/TODO.md
+++ b/tvix/docs/src/TODO.md
@@ -75,8 +75,13 @@ correctness:
    This is somewhat the "spiritual counterpart" to our sequential ingestion
    code (`ConcurrentBlobUploader`, used by `ingest_nar`), which keeps
    "some amount of outgoing bytes" in memory.
-   This is somewhat blocked until the {Chunk/Blob}Service split is done, as then
-   prefetching would only be a matter of adding it into the one `BlobReader`.
+   Our seekable NAR AsyncRead implementation already removes most complexity in
+   rendering everything between blobs.
+   It should be possible to extend / write a wrapped version of it that
+   prefetches a configurable sliding window of blobs.
+   Per-blob prefetching itself is somewhat blocked until the {Chunk/Blob}Service
+   split is done, as then prefetching there would only be a matter of adding it
+   into the one `BlobReader`.
 
 ### Error cleanup
  - Currently, all services use tvix_castore::Error, which only has two kinds