introduce support for dynamic hugepage configuration
-------
hugepages aka kernel largepages are a feature of the linux kernel that allow the use of memory pages
grater then the default 4k size. By supporting larger page allocation the kernel allows better utilization of
the Translation look aside buffer(tlb) by reducing the total number of virtual to physical page mappings required
to be stored in the tlb.
use of kernel hugepages also gauntness that the virtual memory address backed by hugepage memory
will always be resident in main memory and not swapped to disk enabling userspace application to
access this memory via dma.
currently kolla does not support configuring huge pages on the host platform for consumption by guests or
other containers.
-------
This blueprint propose extending the kolla common playbook to configure hugepages on the platform so that it can then be consumed by tenet vms via nova. to support this 4 new parameters will be added.
(enable_hugepages, hugepage_
e.g.
enable_
hugepage_
hugepage_
hugepage_count=1024
by default hugepage allocation will be disabled to to maintain the current behavior.
deployment wide values will be supported via defining the values in the global.yml and
to support heterogeneous deployments with varying amount of ram the hugepage parameter could be overridden via the
inventory file on a per host basis.
extending the common playbook is suggested to allow reuses of this feature by ovs with dpdk if support is added in the future.
an alternative to this approach would be to include hugepage configuration in the new install playbook that is proposed
to configure the bare metal nodes with kolla dependencies (docker,
Blueprint information
- Status:
- Started
- Approver:
- Christian Berendt
- Priority:
- Undefined
- Drafter:
- sean mooney
- Direction:
- Needs approval
- Assignee:
- sean mooney
- Definition:
- Approved
- Series goal:
- None
- Implementation:
- Slow progress
- Milestone target:
- None
- Started by
- Christian Berendt
- Completed by
Related branches
Related bugs
Sprints
Whiteboard
moved to pike
instead of introducing new ansible vaiables for hugepages support can be enabled via
Work Items
Dependency tree
* Blueprints in grey have been implemented.