Bug 1667854

Summary: Performance regression with CPU pinning
Product: Container Native Virtualization (CNV) Reporter: Fabian Deutsch <fdeutsch>
Component: VirtualizationAssignee: Martin Sivák <msivak>
Status: CLOSED DUPLICATE QA Contact: Xenia Lisovskaia <xlisovsk>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 1.4CC: cnv-qe-bugs, fdeutsch, ipinto, msivak, pousley
Target Milestone: ---   
Target Release: 2.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Known Issue
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-02-26 13:38:35 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1664466    
Bug Blocks:    

Description Fabian Deutsch 2019-01-21 10:06:26 UTC
Description of problem:
If CPU Pinning / CPUManager is used, then currently it can lead to performance regressions.

This is caused by the fact, that the CPU topology of the cores elected for pinning is not considered. Thus if the cores reside on different sockets, then there will be performance issues.

Due to this, the CPU pinning / CPUManager will be disabled until bug 1664466 is resolved (or a different mitigatio nis found).

Comment 2 Fabian Deutsch 2019-01-21 10:08:10 UTC
Pan, this should be documented as a known issue.

Comment 3 Pan Ousley 2019-01-21 22:56:58 UTC
(In reply to Fabian Deutsch from comment #2)
> Pan, this should be documented as a known issue.

Sure thing. Thanks, Fabian. Please review my PR: https://github.com/openshift/openshift-docs/pull/13374

That PR will be used for all Known Issues, but you're the only one so far :)

Let me know if that Known Issue text accurately describes the issue. I'm not familiar with CPU 
pinning so I wasn't sure if there are multiple ways to do it or if CPU Manager is the only 
relevant one. I wrote it with the former in mind. 

One main question, regarding this statement:
"This is caused by the fact, that the CPU topology of the cores elected for pinning is not considered."

It is not considered by what in particular? Ideally, I want to phrase this in the active voice:
"<blank> does not consider the topology."

Cheers :)

Comment 4 Fabian Deutsch 2019-01-22 09:19:53 UTC
"CPU Pinning is achieved by using OpenShifts CPUManager, however, CPUManager does not consider the physical CPU topolgoy."

Martin, can you please review the text.

Comment 5 Martin Sivák 2019-01-22 09:30:43 UTC
"CPU Pinning is achieved by using OpenShift's CPUManager, however, CPUManager does not consider the physical CPU topology and can use suboptimal pinning when hyper-threading is enabled."

Something like this might be more explanatory and more in alignment with what Jenifer said I think.

Comment 6 Pan Ousley 2019-01-22 17:29:59 UTC
Thanks, Fabian and Martin. How's this?

* CPU Manager, a feature that provides CPU pinning in {product-title}, is 
currently disabled in {ProductName} due to performance regressions. CPU Manager 
does not consider the physical CPU topology, resulting in sub-optimal pinning 
when hyper-threading is enabled. 
https://bugzilla.redhat.com/show_bug.cgi?id=1667854[(BZ#1667854)]

Note that {product-title} expands to OpenShift Container Platform 
(or OKD, depending on where the doc is, but our docs aren't in the OKD doc set), 
and {ProductName} expands to Container-native Virtualization.

Comment 7 Martin Sivák 2019-01-24 09:46:29 UTC
Thanks Pan, I like it.

Comment 8 Israel Pinto 2019-02-26 13:38:35 UTC

*** This bug has been marked as a duplicate of bug 1664466 ***