Bug 639780

Summary: Performance Tuning Guide: TRACKING BUG for [CPU] [NUMA and multi-core support]
Product: Red Hat Enterprise Linux 6 Reporter: Don Domingo <ddomingo>
Component: doc-Performance_Tuning_GuideAssignee: Laura Bailey <lbailey>
Status: CLOSED NEXTRELEASE QA Contact: ecs-bugs
Severity: medium Docs Contact:
Priority: low    
Version: 6.2CC: ddomingo, pkennedy, rmusil, williams
Target Milestone: rcKeywords: Documentation, Tracking
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-03-07 04:30:38 UTC Type: ---
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:    
Bug Blocks: 639779    
Deadline: 2012-01-06   
Attachments:
Description Flags
First draft of section 4.1 CPUs and NUMA Topology
none
first draft of section 4.2 NUMA and multi-core support
none
NUMA topology diagram
none
NUMA paper and charts used (Shak/Tim/Larry/Rik/Peter/Andy) none

Comment 13 Clark Williams 2011-04-01 20:18:04 UTC
Created attachment 489493 [details]
First draft of section 4.1 CPUs and NUMA Topology

Initial draft of section 4.1

Comment 14 Laura Bailey 2011-04-05 01:31:12 UTC
Clark, I commented on BZ 641009 about the content you've attached here. :) Thanks.

Draft content for the "NUMA and multi-core support" section has not been received, though. Any idea of a date for this?

Comment 15 Clark Williams 2011-04-05 15:07:39 UTC
Still working on NUMA and multi-core. possibly this week

Comment 18 Clark Williams 2011-07-06 15:20:45 UTC
Created attachment 511511 [details]
first draft of section 4.2 NUMA and multi-core support

Initial draft of section 4.2

Comment 30 Clark Williams 2011-08-29 17:52:03 UTC
Created attachment 520442 [details]
NUMA topology diagram

I'm not sure I like the example of numa topology in sectin 4.2:

"The performance of a NUMA system can be improved primarily by ensuring that information travels efficiently. To do so, you must be aware of your system's topology - the CPUs, the memory banks, and the paths between them. The numbered servers in Figure 4.1, “An example of NUMA topology” represent the CPUs and memory banks of a system, and the paths between them represent the interconnects between those CPUs and memory banks. If an application's code resides on memory bank 1, and CPU 2 wants to execute that code, then the most efficient path is 123."

This example doesn't really make sense with the diagram given. There are six servers shown in the diagram and if you assume that there is one core and one memory bank per server, then if "CPU 2 wants to execute that code" (on bank 1) then it's one hop between 1 and 2; 3 is not a component of that access path. 

I'm no graphic artist, but attached is a quick-n-dirty representation of a two node NUMA system with 4 cpus per node and one memory bank per node. In this example system, any cpu on node 1 has direct access to the memory on that node. If any cpu on node 1 wants to access the memory on node two it has to go through the node 2 controller, meaning that the access takes at least twice as long.

Comment 32 John Shakshober 2011-09-06 15:22:14 UTC
Created attachment 521689 [details]
NUMA paper and charts used (Shak/Tim/Larry/Rik/Peter/Andy)

Feel free to use openoffice paper and graphs to describe NUMA in RHEL6 and performance improvements.