Explicit use of hugepages with libvirt

Registered by Diego Parrilla

Transparent hugepages are nice and easy to get working, but do not survive memory pressure on the host. I/O pressure on the host breaks the 2M pages back to 4k pages, and therefore renders transparent hugepages useless for long-lived processes, as nothing will reassemble the 4k pages back to 2M pages after memory pressure has ceased. Basically, Transparent hugepages are not valid for production environments where memory pressure is normal.

To use hugepages we need to set up 'memorybacking' to 'hugepages' in libvirt.xml. We need also to create a new option flag ('libvirt_hugepages' for example) to toogle the hugepages on and off.

Extra configuration at OS level is needed (AppArmor for example in debian-ite distros).

Blueprint information

Status:
Not started
Approver:
None
Priority:
Undefined
Drafter:
Diego Parrilla
Direction:
Needs approval
Assignee:
None
Definition:
Drafting
Series goal:
None
Implementation:
Unknown
Milestone target:
None

Related branches

Sprints

Whiteboard

If you are still working on this, please re-submit via nova-specs. If not, please mark as obsolete, and add a quick comment to describe why. --johnthetubaguy (20th April 2014)

(?)

Work Items