  Vilamb provides efficient asynchronous systemredundancy for direct access
(DAX) non-volatile memory (NVM) storage. Production storage deployments often
use system-redundancy in form of page checksums and cross-page parity.
State-of-the-art solutions for maintaining system-redundancy for DAX NVM either
incur a high performance overhead or require specialized hardware. The Vilamb
user-space library maintains system-redundancy with low overhead by delaying
and amortizing the system-redundancy updates over multiple data writes. As a
result, Vilamb provides 3--5x the throughput of the state-of-the-art software
solution at high operation rates. For applications that need system-redundancy
with high performance, and can tolerate some delaying of data redundancy,
Vilamb provides a tunable knob between performance and quicker redundancy. Even
with the delayed coverage, Vilamb increases the mean time to data loss due to
firmware-induced corruptions by up to two orders of magnitude in comparison to
maintaining no system-redundancy.
