Bug 1457239

Summary: [RFE] Provide "High Performance VM" Profile to ovirt
Product: [oVirt] ovirt-engine Reporter: Martin Tessun <mtessun>
Component: BLL.VirtAssignee: Sharon Gratch <sgratch>
Status: CLOSED CURRENTRELEASE QA Contact: Artyom <alukiano>
Severity: high Docs Contact:
Priority: high    
Version: futureCC: ahadas, alukiano, bugs, djdumas, dmoessne, eheftman, fgarciad, mavital, michal.skrivanek, mkoch, mpoledni, sfroemer
Target Milestone: ovirt-4.2.0Keywords: FutureFeature, Performance, Triaged
Target Release: ---Flags: rule-engine: ovirt-4.2+
alukiano: testing_plan_complete+
mtessun: planning_ack+
michal.skrivanek: devel_ack+
mavital: testing_ack+
Hardware: All   
OS: All   
URL: https://github.com/oVirt/ovirt-site/pull/1021
Whiteboard:
Fixed In Version: Doc Type: Enhancement
Doc Text:
Previously, it was difficult to configure a virtual machine (VM) to run with high performance workloads via the Administration Portal as it involved understanding and configuring a large number of settings. In addition, several features that were essential for improving the VM's performance were not supported at all, for example, huge pages and IO thread pinning. In this release, a new optimization type called High Performance is available when configuring VMs. It is capable of running a VM with the highest possible performance, with performance metrics as close to bare metal as possible. When the customer selects High Performance optimization, some of the the VMs settings are automatically configured while other settings are suggested for manual configuration.
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-12-20 11:12:31 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: Virt RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1461476, 1481246, 1498187, 1498465    
Bug Blocks: 1444998, 1457250, 1505927, 1571024, 1619210    

Description Martin Tessun 2017-05-31 12:03:28 UTC
For providing high performance VMs, a new Profile is requested for adding a configuration for this type of VMs.
The idea is to have VMs that have performance metrics as close to bare metal as possible for running huge VMs.

This profile should be able to check available and configured hugepages and run the VM in these Hugepages, if possible.

Initial thoughts on the needed functionality in the High Performance Profile:
- Headless (Serial Console or VNC only)
- Disable Soundcard
- Host CPU passthrough
- Backed by Hugepages (2M or 1G as configured at Hypervisor Boot Time)
- 1 IOThread pinned to the CPU doing the IO on the Host
  alternatively pinned to CPU#0 as this is typically the one.
- emulatorpin should also be pinned to the same CPU(s) as the iothread
- If CPU supports it, forward also the invtsc flag to the VM
- Disable KSM and Ballooning for a cluster running these types of VMs.
- Do vNUMA with appropriate NUMA pinning according to the Host NUMA topology.

This VM will no longer be migratable. For adding this feature another BZ will be opened.

Comment 1 Red Hat Bugzilla Rules Engine 2017-05-31 12:03:37 UTC
Target release should be placed once a package build is known to fix a issue. Since this bug is not modified, the target version has been reset. Please use target milestone to plan a fix for a oVirt release.

Comment 2 Michal Skrivanek 2017-05-31 12:22:31 UTC
profile == a user configurable preset in New/Edit VM dialog in addition to current Server/Desktop

Comment 3 Michal Skrivanek 2017-06-13 13:36:42 UTC
see also https://trello.com/c/MHRDD8ZO

Comment 4 Martin Polednik 2017-07-18 13:46:29 UTC
The hugepages part of the feature is ready in master - please start working on a test plan.

Comment 6 meital avital 2017-09-14 08:58:51 UTC
(In reply to Martin Polednik from comment #4)
> The hugepages part of the feature is ready in master - please start working
> on a test plan.

Sure

Comment 7 Sharon Gratch 2017-10-03 16:15:34 UTC
All issues are in except io + emulator threads pinning which is posted but not merged yet (waiting for code review), so I will mark this bug as MODIFIED so that all other issues will be tested.

Please don't test iothread + emulator threads pinning yet.

Comment 12 Artyom 2017-12-05 11:24:59 UTC
Verified on rhvm-4.2.0-0.5.master.el7.noarch

Comment 14 Sandro Bonazzola 2017-12-20 11:12:31 UTC
This bugzilla is included in oVirt 4.2.0 release, published on Dec 20th 2017.

Since the problem described in this bug report should be
resolved in oVirt 4.2.0 release, published on Dec 20th 2017, it has been closed with a resolution of CURRENT RELEASE.

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