2024-tcg: Add some performance facts master
authorRichard W.M. Jones <rjones@redhat.com>
Wed, 17 Apr 2024 10:49:45 +0000 (11:49 +0100)
committerRichard W.M. Jones <rjones@redhat.com>
Wed, 17 Apr 2024 10:49:45 +0000 (11:49 +0100)
2024-tcg/03-not-obvious.png
2024-tcg/03-not-obvious.svg
2024-tcg/04-experiments.png
2024-tcg/04-experiments.svg
2024-tcg/05-lessons.png
2024-tcg/05-lessons.svg

index 0129232..145ff40 100644 (file)
Binary files a/2024-tcg/03-not-obvious.png and b/2024-tcg/03-not-obvious.png differ
index feceb27..4028c62 100644 (file)
@@ -26,9 +26,9 @@
      inkscape:pagecheckerboard="0"
      inkscape:deskcolor="#d1d1d1"
      inkscape:document-units="mm"
-     inkscape:zoom="1.0393815"
-     inkscape:cx="396.38958"
-     inkscape:cy="422.84763"
+     inkscape:zoom="0.73495371"
+     inkscape:cx="397.30394"
+     inkscape:cy="422.47559"
      inkscape:window-width="1920"
      inkscape:window-height="1029"
      inkscape:window-x="0"
          style="stroke-width:0.264583"
          x="21.956394"
          y="70.401794"
-         id="tspan11"></tspan><tspan
+         id="tspan11" /><tspan
          sodipodi:role="line"
          style="stroke-width:0.264583"
          x="21.956394"
          x="21.956394"
          y="82.749046"
          id="tspan9">   might be worse</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-size:4.9389px;font-family:'Liberation Mono';-inkscape-font-specification:'Liberation Mono';fill:#ff0000;stroke:#ff0000;stroke-width:0.264583"
+       x="138.78633"
+       y="55.209347"
+       id="text4"><tspan
+         sodipodi:role="line"
+         id="tspan4"
+         style="stroke-width:0.264583"
+         x="138.78633"
+         y="55.209347">1 in 6 jumps are slow path</tspan><tspan
+         sodipodi:role="line"
+         style="stroke-width:0.264583"
+         x="138.78633"
+         y="61.382973"
+         id="tspan5">but lookup_tb/tb_lookup takes 17% total time</tspan></text>
   </g>
 </svg>
index a323734..04c38fa 100644 (file)
Binary files a/2024-tcg/04-experiments.png and b/2024-tcg/04-experiments.png differ
index 2afaa97..a92c520 100644 (file)
@@ -26,9 +26,9 @@
      inkscape:pagecheckerboard="0"
      inkscape:deskcolor="#d1d1d1"
      inkscape:document-units="mm"
-     inkscape:zoom="1.0393815"
-     inkscape:cx="396.38958"
-     inkscape:cy="422.84763"
+     inkscape:zoom="1.4142136"
+     inkscape:cx="381.13056"
+     inkscape:cy="199.75767"
      inkscape:window-width="1920"
      inkscape:window-height="1029"
      inkscape:window-x="0"
          style="stroke-width:0.264583"
          x="21.956394"
          y="64.228172"
-         id="tspan20"> * CPU state optimization</tspan><tspan
+         id="tspan4"> * TB lookup changes</tspan><tspan
          sodipodi:role="line"
          style="stroke-width:0.264583"
          x="21.956394"
          y="70.401794"
-         id="tspan21" /><tspan
+         id="tspan5" /><tspan
          sodipodi:role="line"
          style="stroke-width:0.264583"
          x="21.956394"
          y="76.575424"
+         id="tspan20"> * CPU state optimization</tspan><tspan
+         sodipodi:role="line"
+         style="stroke-width:0.264583"
+         x="21.956394"
+         y="82.749046"
+         id="tspan21" /><tspan
+         sodipodi:role="line"
+         style="stroke-width:0.264583"
+         x="21.956394"
+         y="88.922668"
          id="tspan22"> * QOM casts</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-size:4.9389px;font-family:'Liberation Mono';-inkscape-font-specification:'Liberation Mono';fill:#008000;stroke:#008000;stroke-width:0.264583"
+       x="47.388802"
+       y="98.283058"
+       id="text2"><tspan
+         sodipodi:role="line"
+         id="tspan2"
+         style="stroke-width:0.264583"
+         x="47.388802"
+         y="98.283058">+5% improvement</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-size:4.9389px;font-family:'Liberation Mono';-inkscape-font-specification:'Liberation Mono';fill:#ff0000;stroke:#ff0000;stroke-width:0.264583"
+       x="99.232788"
+       y="49.022629"
+       id="text3"><tspan
+         sodipodi:role="line"
+         id="tspan3"
+         style="stroke-width:0.264583"
+         x="99.232788"
+         y="49.022629">14% of total time page table walking</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-size:4.9389px;font-family:'Liberation Mono';-inkscape-font-specification:'Liberation Mono';fill:#ff0000;stroke:#ff0000;stroke-width:0.264583"
+       x="113.48491"
+       y="62.054153"
+       id="text6"><tspan
+         sodipodi:role="line"
+         id="tspan6"
+         style="stroke-width:0.264583"
+         x="113.48491"
+         y="62.054153">jmp cache up to 64 addrs per page:</tspan><tspan
+         sodipodi:role="line"
+         style="stroke-width:0.264583"
+         x="113.48491"
+         y="68.227776"
+         id="tspan8"> - removing 47% worse</tspan><tspan
+         sodipodi:role="line"
+         style="stroke-width:0.264583"
+         x="113.48491"
+         y="74.401405"
+         id="tspan7"> - other adjustments made it worse</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-size:4.9389px;font-family:'Liberation Mono';-inkscape-font-specification:'Liberation Mono';fill:#ff0000;stroke:#ff0000;stroke-width:0.264583"
+       x="87.829224"
+       y="29.649782"
+       id="text10"><tspan
+         sodipodi:role="line"
+         id="tspan10"
+         style="stroke-width:0.264583"
+         x="87.829224"
+         y="29.649782">super-page = 4x pages =&gt; 33% slower</tspan><tspan
+         sodipodi:role="line"
+         style="stroke-width:0.264583"
+         x="87.829224"
+         y="35.823406"
+         id="tspan11">  8x pages =&gt; 50% slower</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-size:4.9389px;font-family:'Liberation Mono';-inkscape-font-specification:'Liberation Mono';fill:#ff0000;stroke:#ff0000;stroke-width:0.264583"
+       x="86.915901"
+       y="85.241409"
+       id="text12"><tspan
+         sodipodi:role="line"
+         id="tspan12"
+         style="stroke-width:0.264583"
+         x="86.915901"
+         y="85.241409">10% of total time</tspan></text>
   </g>
 </svg>
index cb96155..a6102c0 100644 (file)
Binary files a/2024-tcg/05-lessons.png and b/2024-tcg/05-lessons.png differ
index 31c2d3b..da282c4 100644 (file)
          x="21.956394"
          y="88.922668"
          id="tspan27"> * Flame graphs &amp; profiles</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-size:4.9389px;font-family:'Liberation Mono';-inkscape-font-specification:'Liberation Mono';fill:#008000;stroke:#008000;stroke-width:0.264583"
+       x="114.83377"
+       y="80.77211"
+       id="text1"><tspan
+         sodipodi:role="line"
+         id="tspan1"
+         style="fill:#ff0000;stroke:#ff0000;stroke-width:0.264583"
+         x="114.83377"
+         y="80.77211">(63% slower when 16 vCPUs pinned to 8 pCPUs)</tspan></text>
   </g>
 </svg>