From f504027bd66487f1dca26167dfdec2e0cd8a5224 Mon Sep 17 00:00:00 2001 From: Kirill Bespalov Date: Wed, 4 Nov 2026 09:18:55 +0300 Subject: [PATCH] Release notes for v5.0.0-warmctl.2 --- doc/warmctl-release-notes.md | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/doc/warmctl-release-notes.md b/doc/warmctl-release-notes.md index 34e937b8fa..ef9a2436da 100644 --- a/doc/warmctl-release-notes.md +++ b/doc/warmctl-release-notes.md @@ -1,4 +1,6 @@ -# Unreleased +# v5.0.0-warmctl.2 + +Smaller images and faster restarts for processes holding resident zeros. - The checkpoint writer records resident all-zero MiBs of private anonymous memory as zero runs instead of saving them. Images are smaller and restarts @@ -8,8 +10,8 @@ the helpers in batches, so a large area cut by zero runs is still read in parallel. Smaller and read-only payloads are read as before. -On a CPU test process like the H200 worker (a 12 GiB area with a 25% zero -tail, plus 10,000 small areas), 16 readers and huge pages: the image fell from +On a CPU test process (a 12 GiB private area with a 25% zero tail, plus 10,000 +small areas), 16 readers and huge pages: the image fell from 14.07 to 11.07 GiB and the checkpoint from 16.5 to 14.3 s; the memory pass from 8.66 to 6.86 s with a cold file cache and from 1.35 to 1.19 s with a warm one. With zeros in every other 64 MiB stripe of 12 GiB, the image halved and the @@ -23,6 +25,10 @@ greedy answers. Pinned CUDA host memory is a shared mapping, whose zeros the content scan already skipped, so the H200 Qwen3.8 worker's pinned embedding table gains nothing from the writer change. +Bake new snapshots with this release: donor and receiver need the same DMTCP. +Images it writes also restart under v5.0.0-warmctl.1, and its restarts read +v5.0.0-warmctl.1 images. + # v5.0.0-warmctl.1 First versioned TensorRails fork release, based on DMTCP 5.0. It includes the