Bug 1782077 - [RFE] More Flexible RHV CPU Allocation Policy with HyperThreading
Summary: [RFE] More Flexible RHV CPU Allocation Policy with HyperThreading
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Virtualization Manager
Classification: Red Hat
Component: ovirt-engine
Version: 4.3.6
Hardware: Unspecified
OS: Unspecified
unspecified
medium
Target Milestone: ovirt-4.5.1
: ---
Assignee: Liran Rotenberg
QA Contact: Polina
URL:
Whiteboard:
: 1957551 (view as bug list)
Depends On:
Blocks: 1729464
TreeView+ depends on / blocked
 
Reported: 2019-12-11 06:14 UTC by Kumar Mashalkar
Modified: 2022-07-14 12:55 UTC (History)
15 users (show)

Fixed In Version: ovirt-engine-4.5.1
Doc Type: Enhancement
Doc Text:
An "isolated threads" CPU pinning policy has been added. This policy pins a physical core exclusively to a virtual CPU, enabling a complete physical core to be used as the virtual core of a single virtual machine.
Clone Of:
Environment:
Last Closed: 2022-07-14 12:54:30 UTC
oVirt Team: Virt
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Github oVirt ovirt-engine-api-model pull 20 0 None Merged Introduce host CPU units details 2022-04-12 16:46:18 UTC
Github oVirt ovirt-engine-api-model pull 25 0 None Merged Add Dedicated cpu policy to CpuPinningPolicy 2022-04-12 16:46:18 UTC
Github oVirt ovirt-engine pull 118 0 None Merged restapi: fix vm mapper 2022-04-12 16:46:18 UTC
Github oVirt ovirt-engine pull 119 0 None Merged core: fix NPE on cpuTopology 2022-04-12 16:46:18 UTC
Github oVirt ovirt-engine pull 128 0 None Merged core: consider offline cpus for dedicated 2022-04-12 16:46:18 UTC
Github oVirt ovirt-engine pull 135 0 None Merged Add migration support for dedicated policy 2022-04-12 16:46:18 UTC
Github oVirt ovirt-engine pull 152 0 None Merged core: consider user defined topology 2022-04-12 16:46:18 UTC
Github oVirt ovirt-engine pull 154 0 None Merged Disable dedicated cpu pinning policy for vms with pinned numa nodes 2022-04-12 16:46:18 UTC
Github oVirt ovirt-engine pull 165 0 None Merged Add dedicate policy mapping 2022-04-12 16:46:18 UTC
Github oVirt ovirt-engine pull 189 0 None Merged Add numa to dedicated 2022-04-12 16:46:18 UTC
Github oVirt ovirt-engine pull 200 0 None Merged Add migration support for dedicated cpus with numa 2022-04-12 16:46:18 UTC
Github oVirt ovirt-engine pull 207 0 None Merged Follow up fix for dedicate numa 2022-04-12 16:46:18 UTC
Github oVirt ovirt-engine pull 218 0 None Merged Consider NUMA pending resources for a dedicated VM 2022-04-12 16:46:18 UTC
Github oVirt ovirt-engine pull 260 0 None Draft Introduce isolated threads CPUs 2022-04-12 16:46:18 UTC
Github oVirt ovirt-engine pull 65 0 None Merged Dedicated CPUs 2022-04-12 16:46:18 UTC
Github oVirt ovirt-engine pull 94 0 None Merged core: dedicated cpus - parse and save cpu topology 2022-04-12 16:46:18 UTC
Red Hat Knowledge Base (Solution) 6006121 0 None None None 2021-04-30 04:45:13 UTC
Red Hat Product Errata RHSA-2022:5555 0 None None None 2022-07-14 12:55:15 UTC
oVirt gerrit 116415 0 master MERGED virt: store CPU policy and pinned CPUs in metadata 2021-11-30 19:37:23 UTC
oVirt gerrit 116714 0 master MERGED virt: shared pool creation 2021-11-30 19:37:25 UTC
oVirt gerrit 116715 0 master MERGED virt: update shared pool on VM start/stop 2021-12-14 19:09:33 UTC
oVirt gerrit 116716 0 master MERGED virt: migration support for dedicated CPUs 2021-12-14 19:09:35 UTC
oVirt gerrit 117554 0 master MERGED virt: CPU hotplugging support for dedicated CPUs 2021-12-14 19:10:42 UTC

Description Kumar Mashalkar 2019-12-11 06:14:41 UTC
Description of problem:
Need the flexibility of using threading as vCPU as well as complete pCPU as vCPU in the same cluster.

The CPU intense VMs should use the complete pCPU and less CPU-Intense VMS will use pCPU threads as vCPU.

Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1.
2.
3.

Actual results:


Expected results:


Additional info:
Looking for more options CPU allocation options as Openstack

Valid CPU-POLICY values are:

    shared: (default) The guest vCPUs will be allowed to freely float across host pCPUs, albeit potentially constrained by NUMA policy.
    dedicated: The guest vCPUs will be strictly pinned to a set of host pCPUs. In the absence of an explicit vCPU topology request, the drivers typically expose all vCPUs as sockets with one core and one thread. When strict CPU pinning is in effect the guest CPU topology will be setup to match the topology of the CPUs to which it is pinned. This option implies an overcommit ratio of 1.0. For example, if a two vCPU guest is pinned to a single host core with two threads, then the guest will get a topology of one socket, one core, two threads.

Valid CPU-THREAD-POLICY values are:

    prefer: (default) The host may or may not have an SMT architecture. Where an SMT architecture is present, thread siblings are preferred.
    isolate: The host must not have an SMT architecture or must emulate a non-SMT architecture. If the host does not have an SMT architecture, each vCPU is placed on a different core as expected. If the host does have an SMT architecture - that is, one or more cores have thread siblings - then each vCPU is placed on a different physical core. No vCPUs from other guests are placed on the same core. All but one thread sibling on each utilized core is therefore guaranteed to be unusable.
    require: The host must have an SMT architecture. Each vCPU is allocated on thread siblings. If the host does not have an SMT architecture, then it is not used. If the host has an SMT architecture, but not enough cores with free thread siblings are available, then scheduling fails.
~~~

Comment 2 Ryan Barry 2019-12-12 00:31:01 UTC
This is a large feature request, and we are nearing the end of RFE fulfillment for 4.4. Targeting to 4.5

It's possible to approximate this with CPU pinning and reasonable templates

Comment 19 Arik 2022-03-27 16:21:10 UTC
*** Bug 1957551 has been marked as a duplicate of this bug. ***

Comment 20 Sandro Bonazzola 2022-03-29 16:16:40 UTC
We are past 4.5.0 feature freeze, please re-target.

Comment 21 Sandro Bonazzola 2022-04-01 16:06:54 UTC
Arik I see you marked this as fixed in ovirt-engine-4.5.0.1 but bug is still in POST state. Can you please check?

Comment 22 Arik 2022-04-03 11:13:30 UTC
Yeah, that's because it lacked Doc Text

Comment 27 Arik 2022-04-12 16:21:54 UTC
The isolate policy that was requested here is not yet in
Should be fairly easy to get it based on the changes in 4.5.0

Comment 31 Polina 2022-06-21 16:37:11 UTC
Verified on ovirt-engine-4.5.1.2-0.11.el8ev.noarch according to the attached Polarion Plan

Comment 35 errata-xmlrpc 2022-07-14 12:54:30 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (Moderate: RHV Manager (ovirt-engine) [ovirt-4.5.1] security, bug fix and update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHSA-2022:5555


Note You need to log in before you can comment on or make changes to this bug.