[Bug fix of NUMA feature] Add vNode run in pNode runtime information
by Shi, Xiao-Lei (Bruce, HP Servers-PSC-CQ)
--_000_08AA403C8399104A89AF710307FA78AE24411BD5G5W2717americas_
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
Hi all,
I'm working on the NUMA feature of oVirt.
The feature is already merged in oVirt 3.5.0 alpha 1. Currently, it only ha=
s the virtual numa node (vNode) pin to host numa node(pNode) information wh=
ich is configured by user. We plan to collect the runtime information from =
vdsm that vNode run in which pNodes. Since this information is dynamic and =
changes more often, we want to let this information reported in the process=
of vm stats report.
According to the above requirement, we will do the following development in=
both engine and vdsm:
Vdsm side:
1. In vm module, we will add a function to collect and calculate the =
real-time information that vNode run in pNodes. From caps module, we can ge=
t the cpu mapping information of each pNode; from vm conf, we can get the v=
cpu mapping information of each vNode; from libvirt api, we can get each vc=
pu run in which physical cpu runtime. According to the information, we can =
calculate the vNode run in pNodes information runtime.
2. Add a key in vm stat map to hold the information and report it to =
engine.
Engine side:
1. Currently we have the structure to store the vNode run in pNode in=
formation. In the structure, we have a field "ispinned" to represent if the=
vNode is configured by user to pin to the pNode, or it is runtime run in t=
he pNode. Now we only need to parse the reported information from vdsm and =
update it in db.
We will open a bug to implement the requirement and merge it into 3.5.0.
Any comments and suggestions are welcome.
Thanks & Best Regards
Shi, Xiao-Lei (Bruce)
Hewlett-Packard Co., Ltd.
HP Servers Core Platform Software China
Telephone +86 23 65683093
Mobile +86 18696583447
Email xiao-lei.shi(a)hp.com<mailto:shiguo.li@hp.com>
--_000_08AA403C8399104A89AF710307FA78AE24411BD5G5W2717americas_
Content-Type: text/html; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
<html xmlns:v=3D"urn:schemas-microsoft-com:vml" xmlns:o=3D"urn:schemas-micr=
osoft-com:office:office" xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" xmlns=3D"http:=
//www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Dus-ascii"=
>
<meta name=3D"Generator" content=3D"Microsoft Word 14 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
{font-family:SimSun;
panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
{font-family:SimSun;
panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
{font-family:SimSun;
panose-1:2 1 6 0 3 1 1 1 1 1;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:blue;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{mso-style-priority:99;
color:purple;
text-decoration:underline;}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
{mso-style-priority:34;
margin-top:0in;
margin-right:0in;
margin-bottom:0in;
margin-left:.5in;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri","sans-serif";}
span.EmailStyle17
{mso-style-type:personal-compose;
font-family:"Calibri","sans-serif";
color:windowtext;}
.MsoChpDefault
{mso-style-type:export-only;
font-family:"Calibri","sans-serif";}
@page WordSection1
{size:8.5in 11.0in;
margin:1.0in 1.25in 1.0in 1.25in;}
div.WordSection1
{page:WordSection1;}
/* List Definitions */
@list l0
{mso-list-id:804659359;
mso-list-type:hybrid;
mso-list-template-ids:97009934 67698703 67698713 67698715 67698703 6769871=
3 67698715 67698703 67698713 67698715;}
@list l0:level1
{mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level2
{mso-level-number-format:alpha-lower;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level3
{mso-level-number-format:roman-lower;
mso-level-tab-stop:none;
mso-level-number-position:right;
text-indent:-9.0pt;}
@list l0:level4
{mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level5
{mso-level-number-format:alpha-lower;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level6
{mso-level-number-format:roman-lower;
mso-level-tab-stop:none;
mso-level-number-position:right;
text-indent:-9.0pt;}
@list l0:level7
{mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level8
{mso-level-number-format:alpha-lower;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l0:level9
{mso-level-number-format:roman-lower;
mso-level-tab-stop:none;
mso-level-number-position:right;
text-indent:-9.0pt;}
@list l1
{mso-list-id:910582668;
mso-list-type:hybrid;
mso-list-template-ids:-1548443178 67698703 67698713 67698715 67698703 6769=
8713 67698715 67698703 67698713 67698715;}
@list l1:level1
{mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l1:level2
{mso-level-number-format:alpha-lower;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l1:level3
{mso-level-number-format:roman-lower;
mso-level-tab-stop:none;
mso-level-number-position:right;
text-indent:-9.0pt;}
@list l1:level4
{mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l1:level5
{mso-level-number-format:alpha-lower;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l1:level6
{mso-level-number-format:roman-lower;
mso-level-tab-stop:none;
mso-level-number-position:right;
text-indent:-9.0pt;}
@list l1:level7
{mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l1:level8
{mso-level-number-format:alpha-lower;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;}
@list l1:level9
{mso-level-number-format:roman-lower;
mso-level-tab-stop:none;
mso-level-number-position:right;
text-indent:-9.0pt;}
ol
{margin-bottom:0in;}
ul
{margin-bottom:0in;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang=3D"EN-US" link=3D"blue" vlink=3D"purple">
<div class=3D"WordSection1">
<p class=3D"MsoNormal">Hi all,<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p> </o:p></p>
<p class=3D"MsoNormal">I’m working on the NUMA feature of oVirt.<o:p>=
</o:p></p>
<p class=3D"MsoNormal">The feature is already merged in oVirt 3.5.0 alpha 1=
. Currently, it only has the virtual numa node (vNode) pin to host numa nod=
e(pNode) information which is configured by user. We plan to collect the ru=
ntime information from vdsm that vNode
run in which pNodes. Since this information is dynamic and changes more of=
ten, we want to let this information reported in the process of vm stats re=
port.<o:p></o:p></p>
<p class=3D"MsoNormal">According to the above requirement, we will do the f=
ollowing development in both engine and vdsm:<o:p></o:p></p>
<p class=3D"MsoNormal">Vdsm side:<o:p></o:p></p>
<p class=3D"MsoListParagraph" style=3D"text-indent:-.25in;mso-list:l1 level=
1 lfo1"><![if !supportLists]><span style=3D"mso-list:Ignore">1.<span style=
=3D"font:7.0pt "Times New Roman""> &=
nbsp;
</span></span><![endif]>In vm module, we will add a function to collect and=
calculate the real-time information that vNode run in pNodes. From caps mo=
dule, we can get the cpu mapping information of each pNode; from vm conf, w=
e can get the vcpu mapping information
of each vNode; from libvirt api, we can get each vcpu run in which physica=
l cpu runtime. According to the information, we can calculate the vNode run=
in pNodes information runtime.<o:p></o:p></p>
<p class=3D"MsoListParagraph" style=3D"text-indent:-.25in;mso-list:l1 level=
1 lfo1"><![if !supportLists]><span style=3D"mso-list:Ignore">2.<span style=
=3D"font:7.0pt "Times New Roman""> &=
nbsp;
</span></span><![endif]>Add a key in vm stat map to hold the information an=
d report it to engine.<o:p></o:p></p>
<p class=3D"MsoNormal">Engine side:<o:p></o:p></p>
<p class=3D"MsoListParagraph" style=3D"text-indent:-.25in;mso-list:l0 level=
1 lfo2"><![if !supportLists]><span style=3D"mso-list:Ignore">1.<span style=
=3D"font:7.0pt "Times New Roman""> &=
nbsp;
</span></span><![endif]>Currently we have the structure to store the vNode =
run in pNode information. In the structure, we have a field “ispinned=
” to represent if the vNode is configured by user to pin to the pNode=
, or it is runtime run in the pNode. Now we
only need to parse the reported information from vdsm and update it in db.=
<o:p></o:p></p>
<p class=3D"MsoNormal">We will open a bug to implement the requirement and =
merge it into 3.5.0.<o:p></o:p></p>
<p class=3D"MsoNormal">Any comments and suggestions are welcome. <o:p></o:p=
></p>
<p class=3D"MsoNormal"><o:p> </o:p></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><b><span style=3D"font=
-size:12.0pt">Thanks & Best Regards</span></b><span style=3D"font-size:=
12.0pt"><o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><b><span style=3D"font=
-size:12.0pt">Shi, Xiao-Lei (Bruce)<o:p></o:p></span></b></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><b><span style=3D"font=
-size:12.0pt"><o:p> </o:p></span></b></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><b><span style=3D"font=
-size:12.0pt;color:black">Hewlett-Packard Co., Ltd.<br>
HP Servers Core Platform Software China</span></b><b><span style=3D"font-si=
ze:12.0pt">
<o:p></o:p></span></b></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><b><span style=3D"font=
-size:12.0pt">Telephone</span></b><span style=3D"font-size:12.0pt"> +86=
23 65683093<o:p></o:p></span></p>
<p class=3D"MsoNormal" style=3D"text-autospace:none"><b><span style=3D"font=
-size:12.0pt">Mobile
</span></b><span style=3D"font-size:12.0pt">+86 18696583447<o:p></o:p><=
/span></p>
<p class=3D"MsoNormal"><b><span style=3D"font-size:12.0pt">Email </span></b=
><span style=3D"font-size:12.0pt"><a href=3D"mailto:shiguo.li@hp.com"><span=
style=3D"color:blue">xiao-lei.shi(a)hp.com</span></a></span><o:p></o:p></p>
<p class=3D"MsoNormal"><o:p> </o:p></p>
</div>
</body>
</html>
--_000_08AA403C8399104A89AF710307FA78AE24411BD5G5W2717americas_--