CINXE.COM

LKML: Aboorva Devarajan: Re: [RFT][PATCH v1 0/5] cpuidle: menu: Avoid discarding useful information when processing recent idle intervals

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>LKML: Aboorva Devarajan: Re: [RFT][PATCH v1 0/5] cpuidle: menu: Avoid discarding useful information when processing recent idle intervals</title><link href="/css/message.css" rel="stylesheet" type="text/css" /><link href="/css/wrap.css" rel="alternate stylesheet" type="text/css" title="wrap" /><link href="/css/nowrap.css" rel="stylesheet" type="text/css" title="nowrap" /><link href="/favicon.ico" rel="shortcut icon" /><script src="/js/simple-calendar.js" type="text/javascript"></script><script src="/js/styleswitcher.js" type="text/javascript"></script><link rel="alternate" type="application/rss+xml" title="lkml.org : last 100 messages" href="/rss.php" /><link rel="alternate" type="application/rss+xml" title="lkml.org : last messages by Aboorva Devarajan" href="/groupie.php?aid=" /><!--Matomo--><script> var _paq = window._paq = window._paq || []; /* tracker methods like "setCustomDimension" should be called before "trackPageView" */ _paq.push(["setDoNotTrack", true]); _paq.push(["disableCookies"]); _paq.push(['trackPageView']); _paq.push(['enableLinkTracking']); (function() { var u="//m.lkml.org/"; _paq.push(['setTrackerUrl', u+'matomo.php']); _paq.push(['setSiteId', '1']); var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0]; g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s); })(); </script><!--End Matomo Code--></head><body onload="es.jasper.simpleCalendar.init();" itemscope="itemscope" itemtype="http://schema.org/BlogPosting"><table border="0" cellpadding="0" cellspacing="0"><tr><td width="180" align="center"><a href="/"><img style="border:0;width:135px;height:32px" src="/images/toprowlk.gif" alt="lkml.org" /></a></td><td width="32">聽</td><td class="nb"><div><a class="nb" href="/lkml"> [lkml]</a> 聽 <a class="nb" href="/lkml/2025"> [2025]</a> 聽 <a class="nb" href="/lkml/2025/2"> [Feb]</a> 聽 <a class="nb" href="/lkml/2025/2/24"> [24]</a> 聽 <a class="nb" href="/lkml/last100"> [last100]</a> 聽 <a href="/rss.php"><img src="/images/rss-or.gif" border="0" alt="RSS Feed" /></a></div><div>Views: <a href="#" class="nowrap" onclick="setActiveStyleSheet('wrap');return false;">[wrap]</a><a href="#" class="wrap" onclick="setActiveStyleSheet('nowrap');return false;">[no wrap]</a> 聽 <a class="nb" href="/lkml/mheaders/2025/2/24/240" onclick="this.href='/lkml/headers'+'/2025/2/24/240';">[headers]</a>聽 <a href="/lkml/bounce/2025/2/24/240">[forward]</a>聽 </div></td><td width="32">聽</td></tr><tr><td valign="top"><div class="es-jasper-simpleCalendar" baseurl="/lkml/"></div><div class="threadlist">Messages in this thread</div><ul class="threadlist"><li class="root"><a href="/lkml/2025/2/6/927">First message in thread</a></li><li><a href="/lkml/2025/2/6/927">"Rafael J. Wysocki"</a><ul><li><a href="/lkml/2025/2/6/923">"Rafael J. Wysocki"</a><ul><li><a href="/lkml/2025/2/17/790">Christian Loehle</a></li></ul></li><li><a href="/lkml/2025/2/6/924">"Rafael J. Wysocki"</a><ul><li><a href="/lkml/2025/2/17/866">Christian Loehle</a><ul><li><a href="/lkml/2025/2/17/880">"Rafael J. Wysocki"</a></li></ul></li></ul></li><li><a href="/lkml/2025/2/6/925">"Rafael J. Wysocki"</a><ul><li><a href="/lkml/2025/2/17/853">Christian Loehle</a></li></ul></li><li><a href="/lkml/2025/2/6/926">"Rafael J. Wysocki"</a><ul><li><a href="/lkml/2025/2/17/804">Christian Loehle</a></li></ul></li><li><a href="/lkml/2025/2/6/928">"Rafael J. Wysocki"</a><ul><li><a href="/lkml/2025/2/6/961">Christian Loehle</a></li></ul></li><li><a href="/lkml/2025/2/7/1027">Artem Bityutskiy</a><ul><li><a href="/lkml/2025/2/7/1103">Christian Loehle</a><ul><li><a href="/lkml/2025/2/7/1115">"Rafael J. Wysocki"</a></li></ul></li><li><a href="/lkml/2025/2/7/1157">"Rafael J. Wysocki"</a></li></ul></li><li><a href="/lkml/2025/2/10/922">Christian Loehle</a><ul><li><a href="/lkml/2025/2/10/965">"Rafael J. Wysocki"</a><ul><li><a href="/lkml/2025/2/10/972">Christian Loehle</a></li></ul></li><li><a href="/lkml/2025/2/18/1941">Christian Loehle</a><ul><li><a href="/lkml/2025/2/19/773">"Rafael J. Wysocki"</a></li></ul></li></ul></li><li><a href="/lkml/2025/2/13/1996">"Doug Smythies"</a><ul><li><a href="/lkml/2025/2/14/1548">"Rafael J. Wysocki"</a><ul><li><a href="/lkml/2025/2/16/278">"Doug Smythies"</a></li></ul></li></ul></li><li><a href="/lkml/2025/2/24/221">Aboorva Devarajan</a><ul><li class="origin"><a href="">Aboorva Devarajan</a></li><li><a href="/lkml/2025/2/24/1038">"Rafael J. Wysocki"</a></li><li><a href="/lkml/2025/2/26/233">Aboorva Devarajan</a><ul><li><a href="/lkml/2025/2/26/773">Christian Loehle</a></li></ul></li></ul></li></ul></li></ul></td><td width="32" rowspan="2" class="c" valign="top"><img src="/images/icornerl.gif" width="32" height="32" alt="/" /></td><td class="c" rowspan="2" valign="top" style="padding-top: 1em"><table><tr><td><table><tr><td class="lp">Subject</td><td class="rp" itemprop="name">Re: [RFT][PATCH v1 0/5] cpuidle: menu: Avoid discarding useful information when processing recent idle intervals</td></tr><tr><td class="lp">From</td><td class="rp" itemprop="author">Aboorva Devarajan &lt;&gt;</td></tr><tr><td class="lp">Date</td><td class="rp" itemprop="datePublished">Mon, 24 Feb 2025 12:08:58 +0530</td></tr></table></td><td></td></tr></table><pre itemprop="articleBody">On Mon, 2025-02-24 at 11:57 +0530, Aboorva Devarajan wrote:<br /><br />&gt; On Thu, 2025-02-06 at 15:21 +0100, Rafael J. Wysocki wrote:<br />&gt; <br />&gt; &gt; Hi Everyone,<br />&gt; &gt; <br />&gt; &gt; ...<br />&gt; &gt; <br />&gt; &gt; <br />&gt; &gt; <br />&gt; <br />&gt; Hi Rafael,<br />&gt; <br />&gt; I ran some tests using a cpuidle microbenchmark that I have [1]:<br /><br />I missed including the system configuration in my previous email, so here it is,<br /><br />I carried out these experiments on a Power10 - pseries logical partition with<br />the following configuration:<br /><br /><br />$ lscpu<br />Architecture: ppc64le<br /> Byte Order: Little Endian<br />CPU(s): 80<br /> On-line CPU(s) list: 0-79<br />Model name: POWER10 (architected), altivec supported<br /> Model: 2.0 (pvr 0080 0200)<br /> Thread(s) per core: 8<br /> Core(s) per socket: 10<br /> Socket(s): 1<br /> Physical sockets: 8<br /> Physical chips: 1<br /> Physical cores/chip: 10<br />Virtualization features: <br /> Hypervisor vendor: pHyp<br /> Virtualization type: para<br />Caches (sum of all): <br /> L1d: 640 KiB (20 instances)<br /> L1i: 960 KiB (20 instances)<br /> L2: 20 MiB (20 instances)<br /> L3: 80 MiB (20 instances)<br />NUMA: <br /> NUMA node(s): 1<br /> NUMA node4 CPU(s): 0-79<br /><br />$ cpupower idle-info<br />CPUidle driver: pseries_idle<br />CPUidle governor: menu<br />analyzing CPU 47:<br /><br />Number of idle states: 2<br />Available idle states: snooze CEDE<br />snooze:<br />Flags/Description: snooze<br />Latency: 0<br />Residency: 0<br />Usage: 5899<br />Duration: 360940<br />CEDE:<br />Flags/Description: CEDE<br />Latency: 12<br />Residency: 120<br />Usage: 31037<br />Duration: 16664409173<br /><br /><br />&gt; <br />&gt; The test does a uniform distribution of idle durations, which means the past eight idle intervals approximately match <br />&gt; the sleep duration. So as anticipated, this change-set does not impact this case, and the behavior remains mostly<br />&gt; consistent even after applying the patch.<br />&gt; <br />&gt; 聽Pipe based wakeup - Above %<br />&gt; 聽----------------------------------------------------------------------<br />&gt; &gt; Sleep time (s)聽 | Menu No Patch(%) | Menu Patch(%)| Teo No Patch (%) |<br />&gt; &gt; ---------------- |------------------|--------------|------------------|<br />&gt; &gt; 5聽聽聽聽聽聽聽聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 10聽聽聽聽聽聽聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; ------------------------------------------------------------------------<br />&gt; &gt; 30聽聽聽聽聽聽聽聽聽聽聽聽聽 | 99.97%聽聽聽聽聽聽聽聽聽聽 | 99.96%聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 100聽聽聽聽聽聽聽聽聽聽聽聽 | 98.61%聽聽聽聽聽聽聽聽聽聽 | 98.67%聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 120聽聽聽聽聽聽聽聽聽聽聽聽 | 97.88%聽聽聽聽聽聽聽聽聽聽 | 98.42%聽聽聽聽聽聽 | 1.03%聽聽聽聽聽聽聽聽聽聽聽 | -&gt; (*)<br />&gt; ------------------------------------------------------------------------<br />&gt; &gt; 130聽聽聽聽聽聽聽聽聽聽聽聽 | 2.82%聽聽聽聽聽聽聽聽聽聽聽 | 1.26%聽聽聽聽聽聽聽 | 0.22%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 150聽聽聽聽聽聽聽聽聽聽聽聽 | 1.68%聽聽聽聽聽聽聽聽聽聽聽 | 1.43%聽聽聽聽聽聽聽 | 0.32%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 200聽聽聽聽聽聽聽聽聽聽聽聽 | 2.09%聽聽聽聽聽聽聽聽聽聽聽 | 1.91%聽聽聽聽聽聽聽 | 0.15%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 300聽聽聽聽聽聽聽聽聽聽聽聽 | 1.22%聽聽聽聽聽聽聽聽聽聽聽 | 1.22%聽聽聽聽聽聽聽 | 0.19%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 400聽聽聽聽聽聽聽聽聽聽聽聽 | 1.20%聽聽聽聽聽聽聽聽聽聽聽 | 1.21%聽聽聽聽聽聽聽 | 0.19%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 500聽聽聽聽聽聽聽聽聽聽聽聽 | 1.16%聽聽聽聽聽聽聽聽聽聽聽 | 1.12%聽聽聽聽聽聽聽 | 0.12%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; ------------------------------------------------------------------------<br />&gt; <br />&gt; 聽Pipe based wakeup - Below %<br />&gt; 聽-----------------------------------------------------------------------<br />&gt; &gt; Sleep time (s)聽 | Menu No Patch(%) | Menu Patch(%)| Teo No Patch (%) |<br />&gt; &gt; ---------------- |------------------|--------------|------------------|<br />&gt; &gt; 5聽聽聽聽聽聽聽聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 10聽聽聽聽聽聽聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 30聽聽聽聽聽聽聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 100聽聽聽聽聽聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 120聽聽聽聽聽聽聽聽聽聽聽聽 | 2.76%聽聽聽聽聽聽聽聽聽聽聽 | 1.14%聽聽聽聽聽聽聽 | 0.93%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 130聽聽聽聽聽聽聽聽聽聽聽聽 | 3.11%聽聽聽聽聽聽聽聽聽聽聽 | 1.13%聽聽聽聽聽聽聽 | 0.12%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 150聽聽聽聽聽聽聽聽聽聽聽聽 | 1.34%聽聽聽聽聽聽聽聽聽聽聽 | 1.16%聽聽聽聽聽聽聽 | 0.18%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 200聽聽聽聽聽聽聽聽聽聽聽聽 | 1.38%聽聽聽聽聽聽聽聽聽聽聽 | 1.15%聽聽聽聽聽聽聽 | 0.09%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 300聽聽聽聽聽聽聽聽聽聽聽聽 | 1.33%聽聽聽聽聽聽聽聽聽聽聽 | 1.21%聽聽聽聽聽聽聽 | 0.11%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 400聽聽聽聽聽聽聽聽聽聽聽聽 | 1.36%聽聽聽聽聽聽聽聽聽聽聽 | 1.25%聽聽聽聽聽聽聽 | 0.10%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 500聽聽聽聽聽聽聽聽聽聽聽聽 | 1.25%聽聽聽聽聽聽聽聽聽聽聽 | 1.22%聽聽聽聽聽聽聽 | 0.10%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; ---------------- |------------------|--------------|------------------|<br />&gt; <br />&gt; 聽Time based wakeup - Above %<br />&gt; 聽-----------------------------------------------------------------------<br />&gt; &gt; Sleep time (s)聽 | Menu No Patch(%) | Menu Patch(%)| Teo No Patch (%) |<br />&gt; &gt; ---------------- |------------------|--------------|------------------|<br />&gt; &gt; 5聽聽聽聽聽聽聽聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 10聽聽聽聽聽聽聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 30聽聽聽聽聽聽聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 100聽聽聽聽聽聽聽聽聽聽聽聽 | 0.01%聽聽聽聽聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 120聽聽聽聽聽聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽 | 0.15%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 130聽聽聽聽聽聽聽聽聽聽聽聽 | 15.84%聽聽聽聽聽聽聽聽聽聽 | 0.14%聽聽聽聽聽聽聽 | 0.23%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 150聽聽聽聽聽聽聽聽聽聽聽聽 | 0.39%聽聽聽聽聽聽聽聽聽聽聽 | 0.23%聽聽聽聽聽聽聽 | 0.48%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 200聽聽聽聽聽聽聽聽聽聽聽聽 | 0.95%聽聽聽聽聽聽聽聽聽聽聽 | 0.87%聽聽聽聽聽聽聽 | 0.10%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 300聽聽聽聽聽聽聽聽聽聽聽聽 | 0.20%聽聽聽聽聽聽聽聽聽聽聽 | 0.17%聽聽聽聽聽聽聽 | 0.15%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 400聽聽聽聽聽聽聽聽聽聽聽聽 | 0.14%聽聽聽聽聽聽聽聽聽聽聽 | 0.12%聽聽聽聽聽聽聽 | 0.17%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 500聽聽聽聽聽聽聽聽聽聽聽聽 | 0.10%聽聽聽聽聽聽聽聽聽聽聽 | 0.20%聽聽聽聽聽聽聽 | 0.11%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; ---------------- |------------------|--------------|------------------|<br />&gt; <br />&gt; 聽Time based wakeup - Below %<br />&gt; 聽-----------------------------------------------------------------------<br />&gt; &gt; Sleep time (s)聽 | Menu No Patch(%) | Menu Patch(%)| Teo No Patch (%) |<br />&gt; &gt; ---------------- |------------------|--------------|------------------|<br />&gt; &gt; 5聽聽聽聽聽聽聽聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 10聽聽聽聽聽聽聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 30聽聽聽聽聽聽聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 100聽聽聽聽聽聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽 | 0.00%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 120聽聽聽聽聽聽聽聽聽聽聽聽 | 1.85%聽聽聽聽聽聽聽聽聽聽聽 | 1.66%聽聽聽聽聽聽聽 | 2.67%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 130聽聽聽聽聽聽聽聽聽聽聽聽 | 16.71%聽聽聽聽聽聽聽聽聽聽 | 1.13%聽聽聽聽聽聽聽 | 1.11%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 150聽聽聽聽聽聽聽聽聽聽聽聽 | 1.36%聽聽聽聽聽聽聽聽聽聽聽 | 1.16%聽聽聽聽聽聽聽 | 1.13%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 200聽聽聽聽聽聽聽聽聽聽聽聽 | 1.33%聽聽聽聽聽聽聽聽聽聽聽 | 1.14%聽聽聽聽聽聽聽 | 1.19%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 300聽聽聽聽聽聽聽聽聽聽聽聽 | 1.44%聽聽聽聽聽聽聽聽聽聽聽 | 1.20%聽聽聽聽聽聽聽 | 1.17%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 400聽聽聽聽聽聽聽聽聽聽聽聽 | 1.51%聽聽聽聽聽聽聽聽聽聽聽 | 1.21%聽聽聽聽聽聽聽 | 1.21%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 500聽聽聽聽聽聽聽聽聽聽聽聽 | 1.42%聽聽聽聽聽聽聽聽聽聽聽 | 1.24%聽聽聽聽聽聽聽 | 1.25%聽聽聽聽聽聽聽聽聽聽聽 |<br />&gt; &gt; ---------------- |------------------|--------------|------------------|<br />&gt; <br />&gt; <br />&gt; (*) - Above and below values are higher even without the patch with menu governor,<br />&gt; 聽聽聽聽聽 this issue still persists, as previously reported in [2]. I will investigate<br />&gt; 聽聽聽聽聽 further and submit a revision to get additional feedback.<br />&gt; <br />&gt; I also carried out some benchmarks using pgbench:<br />&gt; <br />&gt; pgbench Results<br />&gt; <br />&gt; Without Patch:<br />&gt; -----------------------------------------------------------------------------<br />&gt; &gt; Run聽 | Transactions Processed | Latency Avg (ms) | TPS (without init time) |<br />&gt; -----------------------------------------------------------------------------<br />&gt; &gt; 聽1聽聽 |聽 11,936,327聽聽聽聽聽聽聽聽聽聽聽 |聽 0.050聽聽聽聽聽聽聽聽聽聽 |聽 198,946.141025聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 聽2聽聽 |聽 11,899,540聽聽聽聽聽聽聽聽聽聽聽 |聽 0.050聽聽聽聽聽聽聽聽聽聽 |聽 198,333.097547聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 聽3聽聽 |聽 11,870,792聽聽聽聽聽聽聽聽聽聽聽 |聽 0.051聽聽聽聽聽聽聽聽聽聽 |聽 197,853.728614聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 聽4聽聽 |聽 11,901,670聽聽聽聽聽聽聽聽聽聽聽 |聽 0.050聽聽聽聽聽聽聽聽聽聽 |聽 198,368.526139聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 聽5聽聽 |聽 11,922,046聽聽聽聽聽聽聽聽聽聽聽 |聽 0.050聽聽聽聽聽聽聽聽聽聽 |聽 198,708.112243聽聽聽聽聽聽聽聽 |<br />&gt; -----------------------------------------------------------------------------<br />&gt; &gt; Avg聽 |聽 11,906,075聽聽聽聽聽聽聽聽聽聽聽 |聽 0.0502聽聽聽聽聽聽聽聽聽 |聽 198,441.921114聽聽聽聽聽聽聽聽 |<br />&gt; -----------------------------------------------------------------------------<br />&gt; <br />&gt; With Patch:<br />&gt; -----------------------------------------------------------------------------<br />&gt; &gt; Run聽 | Transactions Processed | Latency Avg (ms) | TPS (without init time) |<br />&gt; -----------------------------------------------------------------------------<br />&gt; &gt; 聽1聽聽 |聽 12,052,865聽聽聽聽聽聽聽聽聽聽聽 |聽 0.050聽聽聽聽聽聽聽聽聽聽 |聽 200,888.492771聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 聽2聽聽 |聽 12,058,359聽聽聽聽聽聽聽聽聽聽聽 |聽 0.050聽聽聽聽聽聽聽聽聽聽 |聽 200,979.895325聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 聽3聽聽 |聽 12,071,012聽聽聽聽聽聽聽聽聽聽聽 |聽 0.050聽聽聽聽聽聽聽聽聽聽 |聽 201,190.809734聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 聽4聽聽 |聽 12,054,646聽聽聽聽聽聽聽聽聽聽聽 |聽 0.050聽聽聽聽聽聽聽聽聽聽 |聽 200,918.076736聽聽聽聽聽聽聽聽 |<br />&gt; &gt; 聽5聽聽 |聽 12,053,087聽聽聽聽聽聽聽聽聽聽聽 |聽 0.050聽聽聽聽聽聽聽聽聽聽 |聽 200,892.045581聽聽聽聽聽聽聽聽 |<br />&gt; -----------------------------------------------------------------------------<br />&gt; &gt; Avg聽 |聽 12,058,394聽聽聽聽聽聽聽聽聽聽聽 |聽 0.0500聽聽聽聽聽聽聽聽聽 |聽 200,973.464029聽聽聽聽聽聽聽聽 |<br />&gt; ------------------------------------------------------------------------------<br />&gt; <br />&gt; Performance Improvement After Patch:<br />&gt; --------------------------------------------------------------------------------------<br />&gt; &gt; Metric聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽聽 | Without Patch (Avg.)| With Patch (Avg.)聽 | % Improvement |<br />&gt; --------------------------------------------------------------------------------------<br />&gt; &gt; Transactions Processed聽 |聽 11,906,075聽聽聽聽聽聽聽聽 |聽 12,058,394聽聽聽聽聽聽聽 |聽 +1.28%聽聽聽聽聽聽 | <br />&gt; &gt; Latency Avg (ms)聽聽聽聽聽聽聽 |聽 0.0502聽聽聽聽聽聽聽聽聽聽聽聽 |聽 0.0500聽聽聽聽聽聽聽聽聽聽聽 |聽 -0.40%聽聽聽聽聽聽 |<br />&gt; &gt; TPS (without init time) |聽 198,441.921114聽聽聽聽 |聽 200,973.464029聽聽聽 |聽 +1.28%聽聽聽聽聽聽 |<br />&gt; --------------------------------------------------------------------------------------<br />&gt; <br />&gt; So with the patch pgbench's "Transactions Processed" improves by ~1.28%, and I did not observe<br />&gt; any major variations on other benchmarks with the patch.<br />&gt; <br />&gt; So for the entire series:<br />&gt; <br />&gt; Tested-by: Aboorva Devarajan &lt;aboorvad&#64;linux.ibm.com&gt;<br />&gt; <br />&gt; I'm also trying a minimal unit fuzz-test with the pre- and post- patched version of the get_typical_interval聽<br />&gt; function to understand this better, will post the results soon.<br />&gt; <br />&gt; [1] -聽<a href="https://github.com/AboorvaDevarajan/linux-utils/tree/main/cpuidle/cpuidle_wakeup">https://github.com/AboorvaDevarajan/linux-utils/tree/main/cpuidle/cpuidle_wakeup</a><br />&gt; [2] - <a href="https://lore.kernel.org/all/20240809073120.250974-1-aboorvad&#64;linux.ibm.com/">https://lore.kernel.org/all/20240809073120.250974-1-aboorvad&#64;linux.ibm.com/</a><br />&gt; <br />&gt; <br />&gt; Thanks,<br />&gt; Aboorva<br /><br /></pre></td><td width="32" rowspan="2" class="c" valign="top"><img src="/images/icornerr.gif" width="32" height="32" alt="\" /></td></tr><tr><td align="right" valign="bottom"> 聽 </td></tr><tr><td align="right" valign="bottom">聽</td><td class="c" valign="bottom" style="padding-bottom: 0px"><img src="/images/bcornerl.gif" width="32" height="32" alt="\" /></td><td class="c">聽</td><td class="c" valign="bottom" style="padding-bottom: 0px"><img src="/images/bcornerr.gif" width="32" height="32" alt="/" /></td></tr><tr><td align="right" valign="top" colspan="2"> 聽 </td><td class="lm">Last update: 2025-02-24 07:39 聽聽 [W:1.126 / U:2.363 seconds]<br />漏2003-2020 <a href="http://blog.jasper.es/"><span itemprop="editor">Jasper Spaans</span></a>|hosted at <a href="https://www.digitalocean.com/?refcode=9a8e99d24cf9">Digital Ocean</a> and my Meterkast|<a href="http://blog.jasper.es/categories.html#lkml-ref">Read the blog</a></td><td>聽</td></tr></table><script language="javascript" src="/js/styleswitcher.js" type="text/javascript"></script></body></html>

Pages: 1 2 3 4 5 6 7 8 9 10