Overview
Coursera Flash Sale
40% Off Coursera Plus for 3 Months!
Grab it
Learn about a userspace daemon that automatically manages virtual machine memory allocation by integrating with Linux kernel's Pressure Stall Information (PSI) mechanism to monitor memory pressure events and dynamically request memory blocks from the host without administrative intervention. Explore how the daemon detects increasing memory demand by registering to PSI events and monitoring pressure buildup during memory allocations, using predefined thresholds to trigger requests for additional memory from the host when minimal pressure indicates active memory-intensive use cases. Discover the process for detecting decreasing memory pressure through monitoring pressure decay and PSI averages (avg10, avg60, avg300) along with other memory statistics to make educated decisions about releasing memory blocks back to the host when memory use cases have ended. Understand how the virtio-mem interface facilitates communication with the host for adding and removing memory blocks, and examine the separate threading approach used for tracking memory pressure reduction and memory release processes. Gain insights into the detailed design principles and logic behind this dynamic memory management solution for virtual machine environments.
Syllabus
Dynamic VM Memory Resizing daemon (vmrd) - Sudarshan Rajagopalan, Qualcomm
Taught by
Linux Foundation