Search papers, labs, and topics across Lattice.
Valinor introduces a hardware-OS cooperative memory allocation substrate designed to minimize the overhead of physical memory allocation in modern systems. By implementing a programmable hardware allocation engine that executes OS-supplied allocation libraries, Valinor achieves significant performance improvements, accelerating allocation by 17x and enhancing end-to-end performance by 16% while reducing energy consumption by up to 8%. This approach effectively balances the need for flexibility in allocation policies with the demand for high-speed execution, making it particularly beneficial for short-lived workloads like serverless functions and microservices.
Achieving 17x faster memory allocation without sacrificing programmability could revolutionize how we handle memory in serverless architectures.
Physical memory allocation establishes virtual-to-physical mappings on demand. In current systems, each minor page fault traps into the kernel and triggers pipeline flushes, stalls, and a long sequence of allocation steps that can cost tens of thousands of cycles. These overheads are increasingly significant for short-lived workloads such as serverless functions and microservices, where minor faults can account for up to 54% of runtime and up to 40% of system energy. Prior hardware allocation proposals avoid traps and context switches, but either sacrifice useful placement optimizations or rely on fixed-function logic that cannot adapt to new policies or changing hardware conditions. We present Valinor, a hardware-OS cooperative memory allocation substrate that combines software flexibility with hardware-class performance. Valinor introduces a programmable hardware allocation engine that executes compact OS-supplied allocation libraries at close to fixed-hardware speed. It supports diverse policies, including short-lived object allocators, integrity mechanisms, and hardware-telemetry-guided placement. We implement Valinor on a BOOM RISC-V soft core running Linux and in a full-system simulator. On real hardware, Valinor accelerates allocation by 17x, improves end-to-end performance by 16%, and reduces energy consumption by up to 8%. Full-system simulation further evaluates the programmable allocation engine and six allocation libraries, showing that Valinor provides hardware-class performance without sacrificing programmability.