<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="Generator" content="Microsoft Word 15 (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:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:"HP Simplified";
        panose-1:2 11 6 4 2 2 4 2 2 4;}
@font-face
        {font-family:"YaHei Consolas Hybrid";
        panose-1:2 11 5 9 2 2 4 2 2 4;}
@font-face
        {font-family:SimSun;
        panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
        {font-family:"\@YaHei Consolas Hybrid";
        panose-1:2 11 5 9 2 2 4 2 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        text-align:justify;
        text-justify:inter-ideograph;
        font-size:10.5pt;
        font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
p.MsoPlainText, li.MsoPlainText, div.MsoPlainText
        {mso-style-priority:99;
        mso-style-link:"Plain Text Char";
        margin:0cm;
        margin-bottom:.0001pt;
        font-size:10.5pt;
        font-family:"HP Simplified","sans-serif";}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
        {mso-style-priority:34;
        margin:0cm;
        margin-bottom:.0001pt;
        text-align:justify;
        text-justify:inter-ideograph;
        text-indent:21.0pt;
        font-size:10.5pt;
        font-family:"Calibri","sans-serif";}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"HP Simplified","sans-serif";
        color:windowtext;}
span.PlainTextChar
        {mso-style-name:"Plain Text Char";
        mso-style-priority:99;
        mso-style-link:"Plain Text";
        font-family:"HP Simplified","sans-serif";}
.MsoChpDefault
        {mso-style-type:export-only;}
/* Page Definitions */
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 90.0pt 72.0pt 90.0pt;}
div.WordSection1
        {page:WordSection1;}
/* List Definitions */
@list l0
        {mso-list-id:1440225503;
        mso-list-type:hybrid;
        mso-list-template-ids:-598169600 1424391416 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;}
@list l0:level1
        {mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:18.0pt;
        text-indent:-18.0pt;}
@list l0:level2
        {mso-level-number-format:alpha-lower;
        mso-level-text:"%2\)";
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:42.0pt;
        text-indent:-21.0pt;}
@list l0:level3
        {mso-level-number-format:roman-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:right;
        margin-left:63.0pt;
        text-indent:-21.0pt;}
@list l0:level4
        {mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:84.0pt;
        text-indent:-21.0pt;}
@list l0:level5
        {mso-level-number-format:alpha-lower;
        mso-level-text:"%5\)";
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:105.0pt;
        text-indent:-21.0pt;}
@list l0:level6
        {mso-level-number-format:roman-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:right;
        margin-left:126.0pt;
        text-indent:-21.0pt;}
@list l0:level7
        {mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:147.0pt;
        text-indent:-21.0pt;}
@list l0:level8
        {mso-level-number-format:alpha-lower;
        mso-level-text:"%8\)";
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:168.0pt;
        text-indent:-21.0pt;}
@list l0:level9
        {mso-level-number-format:roman-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:right;
        margin-left:189.0pt;
        text-indent:-21.0pt;}
@list l1
        {mso-list-id:2059089049;
        mso-list-type:hybrid;
        mso-list-template-ids:148561564 103326546 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;}
@list l1:level1
        {mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:18.0pt;
        text-indent:-18.0pt;
        mso-fareast-font-family:SimSun;}
@list l1:level2
        {mso-level-number-format:alpha-lower;
        mso-level-text:"%2\)";
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:42.0pt;
        text-indent:-21.0pt;}
@list l1:level3
        {mso-level-number-format:roman-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:right;
        margin-left:63.0pt;
        text-indent:-21.0pt;}
@list l1:level4
        {mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:84.0pt;
        text-indent:-21.0pt;}
@list l1:level5
        {mso-level-number-format:alpha-lower;
        mso-level-text:"%5\)";
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:105.0pt;
        text-indent:-21.0pt;}
@list l1:level6
        {mso-level-number-format:roman-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:right;
        margin-left:126.0pt;
        text-indent:-21.0pt;}
@list l1:level7
        {mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:147.0pt;
        text-indent:-21.0pt;}
@list l1:level8
        {mso-level-number-format:alpha-lower;
        mso-level-text:"%8\)";
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        margin-left:168.0pt;
        text-indent:-21.0pt;}
@list l1:level9
        {mso-level-number-format:roman-lower;
        mso-level-tab-stop:none;
        mso-level-number-position:right;
        margin-left:189.0pt;
        text-indent:-21.0pt;}
ol
        {margin-bottom:0cm;}
ul
        {margin-bottom:0cm;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="ZH-CN" link="#0563C1" vlink="#954F72" style="text-justify-trim:punctuation">
<div class="WordSection1">
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">Hi All,<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">Now we are working on the NUMA tune feature development for oVirt 3.5. This feature allow user to configure the vCPU pining according to host CPU/NUMA topology to get the
 best performance for created VM. But this will impact the current function of vCPU pining. Now, we are looking for a solution to consolidate the conflict. We want to start an open discussion about VM CPU pinning (the current design) and NUMA CPU pining (new
 feature we are working on) in developer list:<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">Background:<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">Concept:<o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:18.0pt;text-indent:-18.0pt;mso-list:l1 level1 lfo1">
<![if !supportLists]><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;"><span style="mso-list:Ignore">1.<span style="font:7.0pt &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><![endif]><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">VM CPU pinning: the exist feature in current oVirt, which allow user to configure the VM vCPU pinning over ovirt, user can configure vCPU pining independently
 without NUMA tune.<o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:18.0pt;text-indent:-18.0pt;mso-list:l1 level1 lfo1">
<![if !supportLists]><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;"><span style="mso-list:Ignore">2.<span style="font:7.0pt &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><![endif]><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">NUMA CPU pinning: allow user to configure the vCPU pining according to host NUMA topology to get the best performance for created VM<o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:18.0pt;text-indent:-18.0pt;mso-list:l1 level1 lfo1">
<![if !supportLists]><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;"><span style="mso-list:Ignore">3.<span style="font:7.0pt &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><![endif]><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">vNode: Virtual NUMA node ( User configured )<o:p></o:p></span></p>
<p class="MsoListParagraph" style="margin-left:18.0pt;text-indent:-18.0pt;mso-list:l1 level1 lfo1">
<![if !supportLists]><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;"><span style="mso-list:Ignore">4.<span style="font:7.0pt &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><![endif]><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">pNode: host physical NUMA node ( Get capability from host )<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">Notice:<o:p></o:p></span></p>
<p class="MsoPlainText" style="margin-left:18.0pt;text-align:justify;text-justify:inter-ideograph;text-indent:-18.0pt;mso-list:l0 level1 lfo2">
<![if !supportLists]><span lang="EN-US"><span style="mso-list:Ignore">1.<span style="font:7.0pt &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><![endif]><span lang="EN-US">NUMA tuning feature and CPU pinning feature are individually in libvirt ( ovirt backend ).<o:p></o:p></span></p>
<p class="MsoPlainText" style="margin-left:18.0pt;text-indent:-18.0pt;mso-list:l0 level1 lfo2">
<![if !supportLists]><span lang="EN-US"><span style="mso-list:Ignore">2.<span style="font:7.0pt &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><![endif]><span lang="EN-US">User could configure VM CPU pining individually without NUMA tune setup.<o:p></o:p></span></p>
<p class="MsoPlainText" style="margin-left:18.0pt;text-align:justify;text-justify:inter-ideograph;text-indent:-18.0pt;mso-list:l0 level1 lfo2">
<![if !supportLists]><span lang="EN-US"><span style="mso-list:Ignore">3.<span style="font:7.0pt &quot;Times New Roman&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span></span><![endif]><span lang="EN-US">When configuring NUMA tuning feature, user need to configure VM NUMA tuning ( vNode pinto pNode &amp; tuning mode ) and VM CPU pinning ( NUMA included ) to get optimized VM performance, otherwise VM will have low
 performance.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">We have two proposal now for this issue. Please give us some comments and your feedback, thanks.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">Solution 1:<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GUI:
<o:p></o:p></span></p>
<p class="MsoNormal" style="text-indent:21.0pt"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">Transform between the CPU pinning text and a structure which will be used in NUMA CPU pinning configure page.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">&nbsp;&nbsp;&nbsp; And then save the CPU pinning text to the current VM CPU pinning field of VM.
<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Restful:
<o:p></o:p></span></p>
<p class="MsoNormal" style="text-indent:21.0pt"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">Transform between the CPU pinning text and a structure which will be used in restful NUMA CPU pinning.<o:p></o:p></span></p>
<p class="MsoNormal" style="text-indent:21.0pt"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">And then save the CPU pinning text to the current VM CPU pinning field of VM.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Broker:
<o:p></o:p></span></p>
<p class="MsoNormal" style="text-indent:21.0pt"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">Remove temporary solution(See the current implementation as below) and follow previous cpupin configuration procedure.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">Solution 2:<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GUI:
<span style="color:#FFC000"><o:p></o:p></span></span></p>
<p class="MsoNormal" style="margin-left:19.4pt"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">If current VM CPU pinning is configured, when user open NUMA CPU pinning configure page, he will get a warning message. If he continues to configure
 NUMA CPU pinning and save the data, the current VM CPU pinning &nbsp;&nbsp;&nbsp;&nbsp;configuration will be cleared.<o:p></o:p></span></p>
<p class="MsoNormal" style="text-indent:19.4pt"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">NUMA CPU pinning configured data will be saved as new structure individually without changing current VM CPU pinning configuration.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Restful:
<span style="color:#FFC000"><o:p></o:p></span></span></p>
<p class="MsoNormal" style="text-indent:21.0pt"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">Configure NUMA CPU pinning and then save the data with the new NUMA CPU pinning structure.
<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Entity and Database:
<o:p></o:p></span></p>
<p class="MsoNormal" style="text-indent:21.0pt"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">Individually NUMA CPU pinning entities and data structure.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Broker:
<span style="color:#FFC000"><o:p></o:p></span></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;;color:#FFC000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">NUMA CPU pinning configuration will be first considered to use. If it&#8217;s not configured, it will use the current VM CPU pinning.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">Solution 1 The CPU pining data is consistent but the code logic is very complex.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">Solution 2 have better adaptive and better data structure. This is the way we preferred.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">We are appreciated that anybody could give us your comments or the better solution you have.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">The below is the current implementation for your reference:<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">VM CPU pinning feature<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GUI:
<o:p></o:p></span></p>
<p class="MsoNormal" style="text-indent:21.0pt"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">User input vCPU pining configure data with formatted text.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Restful:
<o:p></o:p></span></p>
<p class="MsoNormal" style="text-indent:21.0pt"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">User configure CpuTune and VCpuPin model with mapper to CPU pinning text.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Entity and Database:
<o:p></o:p></span></p>
<p class="MsoNormal" style="text-indent:21.0pt"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">CPU pinning is String property.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Broker:
<o:p></o:p></span></p>
<p class="MsoNormal" style="text-indent:21.0pt"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">Generate structure of cputune ( libvirt format ) from CPU pining string property.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">NUMA tuning feature<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; GUI:
<o:p></o:p></span></p>
<p class="MsoNormal" style="text-indent:21.0pt"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">User can drag &amp; drop virtual NUMA node to host NUMA node ( pin to or remove pin to ).<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Restful:
<o:p></o:p></span></p>
<p class="MsoNormal" style="text-indent:21.0pt"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">Add/update/remove virtual NUMA node with property of pin to host NUMA node index.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Design NUMACPU model under NUMA node for extend.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Entity and Database:
<o:p></o:p></span></p>
<p class="MsoNormal" style="text-indent:21.0pt"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">Individually NUMA node entities ( vNode extend pNode ) and store procedure.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Broker:
<o:p></o:p></span></p>
<p class="MsoNormal" style="text-indent:21.0pt"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">Generate structure of numatune, cpu/numa ( libvirt format ) from NUMA node entities.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">Temporary solution prevent Notice 3<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Broker:
<o:p></o:p></span></p>
<p class="MsoNormal" style="text-indent:21.0pt"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">Generate right structure of cputune ( libivirt format ) from NUMA node entities ( vNode pinto pNode )<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Limitation:
<o:p></o:p></span></p>
<p class="MsoNormal" style="text-indent:21.0pt"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;">This structure of cputune will not get the best performance of vNode.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><b><span lang="EN-US" style="font-size:9.0pt;font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;;color:black">Best Regards,<br>
</span></b><span lang="EN-US" style="font-size:9.0pt;font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;;color:#717172">Jason Liao</span><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family:&quot;HP Simplified&quot;,&quot;sans-serif&quot;"><o:p>&nbsp;</o:p></span></p>
</div>
</body>
</html>