
--_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@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"=
</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=
<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= style=3D"color:blue">xiao-lei.shi@hp.com</span></a></span><o:p></o:p></p> <p class=3D"MsoNormal"><o:p> </o:p></p> </div> </body> </html> --_000_08AA403C8399104A89AF710307FA78AE24411BD5G5W2717americas_--