@rwmjones
Latest commit 4aa577e Jun 13, 2020 History
Add a new allocator which uses zstd.  This is derived from the sparse
allocator, with the difference being that each page is compressed in
memory using the Zstandard fast compression library.

Creating ordinary filesystems filled with mostly text content gives me
excellent compression ratios (up to 10:1), so this should allow much
larger RAM disks.  Of course since this is based on the sparse array
work, it already supports huge virtual sizes.

Note this means that nbdkit-basic-plugins (downstream in Fedora) will
now depend on libzstd.  This is an extra dependency, but seems OK
since the library is small and doesn't depend on anything else except
glibc.  The alternative would be more awkward packaging - either
splitting nbdkit-memory-plugin and nbdkit-data-plugin into separate
subpackages, or somehow working out how to package the allocators as
plugin-plugins.
2 contributors

Users who have contributed to this file

@rwmjones @ebblake