Page MenuHomeFreeBSD

mkimg: Add support for stream-optimized VMDK
ClosedPublic

Authored by cperciva on Tue, Sep 29, 8:14 PM.
Tags
None
Referenced Files
F175717573: D60151.id.diff
Mon, Oct 12, 6:19 PM
Unknown Object (File)
Sun, Oct 11, 8:03 PM
Unknown Object (File)
Sat, Oct 10, 11:54 AM
Unknown Object (File)
Fri, Oct 9, 5:00 PM
Unknown Object (File)
Fri, Oct 9, 12:28 PM
Unknown Object (File)
Fri, Oct 9, 9:26 AM
Unknown Object (File)
Thu, Oct 8, 11:18 PM
Unknown Object (File)
Thu, Oct 8, 2:17 PM
Subscribers

Details

Summary

FreeBSD VM/cloud images tend to be highly compressible: The generic VM
images compress roughly 3.5:1, and cloud images typically even more
since they have significant unused space in their virtual disks. This
generally doesn't matter for users who can download compressed release
images and extract them locally, but for EC2 in particular relying on
uncompressed image formats is painful: We now upload over 500 GB/week
to AWS.

This commit adds the "stream-optimized" version of the VMDK format,
which compresses each 64 kB "grain" individually (and omits grains
which are all zeroes). Compared to uncompressed formats, this can
produce much smaller images; experiments indicate that using this
format for EC2 image uploads will reduce the weekly traffic to under
100 GB/week.

Co-authored-by: Claude Opus 5.5
Sponsored by: Amazon

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 77501
Build 74384: arc lint + arc unit