LiveCDUnionCompression
NOTE: This page is part of the Ubuntu Specification process. Please check the status and details in Launchpad before editing. If the spec is Approved then you should contact the Assignee, or another knowledgeable person, before making changes.
Launchpad entry:
Packages affected:
Summary
This specification describes a method of reducing LiveCD memory usage by compressing the writable temporary file data created during a live session.
Rationale
Files created during LiveCD sessions have to go into RAM; however, RAM is limited and often scarce. By compressing these files we can reduce the amount of RAM used and potentially get a speed gain by increasing disk cache.
Use cases
Any use of the LiveCD under any conditions should show an improvement in memory usage; some improvements will be very minor.
Scope
We are only concerned with the temporary storage overlain on the LiveCD file system. Other areas such as hard disks and USB devices are not handled in this way.
Design
LayerFS will be used for compression.
Implementation
When the LiveCD is initially brought up, the tmpfs used to store changes will be mounted at an indirect mount point. LayerFS will then be used to mount that mount point on the normal directory, with transparent compression. Boot-up will continue as normal.
Unresolved issues
LayerFS is not currently workable multi-threaded; it must be forced single-threaded (-s), which probably is responsible for some of the performance loss during writes. (Priority inheriting semaphores would probably help too...)
- LayerFS is not currently given a proper license; I have contacted the author, it seems he may be willing to LGPL it.
BoF agenda and discussion
LayerFS is http://north.one.pl/~kazik/pub/LZOlayer/
LiveCDUnionCompression (last edited 2008-08-06 16:29:22 by localhost)