Allow specifying cpu model in flavor extra-specs or image metadata
An end-user may want to write high-performance software that depends on certain CPU features (SSE4.2, AVX, AVX2, LZCNT, FMA, BMI, etc) being available. Currently we only allow specifying the CPU model as part of the compute node configuration, and there is no easy way to select hosts based on the CPU model.
This feature will allow specifying the desired CPU model as "hw:cpu_
A new scheduler filter will be written to filter out hosts with CPUs that are lower-grade than the specified model (or that can't provide the specified features), and libvirt will be modified to set the instance CPU model to the specified model.
As far as API changes, I'm not sure if the metadata/extra specs stuff counts as an API change or not since it's basically arbitrary data that happens to have meaning. Also, depending on implementation there could be new exception messages returned as part of the existing error code due to setting incompatible CPU models on both flavor and image.
Blueprint information
- Status:
- Not started
- Approver:
- None
- Priority:
- Undefined
- Drafter:
- Chris Friesen
- Direction:
- Needs approval
- Assignee:
- Chris Friesen
- Definition:
- New
- Series goal:
- Proposed for liberty
- Implementation:
- Unknown
- Milestone target:
- None
- Started by
- Completed by
Whiteboard
Gerrit topic: https:/
Addressed by: https:/
Allow specifying cpu model in flavor extra-specs or image metadata