From: Ingo Molnar <mingo@elte.hu>
To: Vaidyanathan Srinivasan <svaidy@linux.vnet.ibm.com>,
Mike Galbraith <efault@gmx.de>
Cc: Balbir Singh <balbir@linux.vnet.ibm.com>,
linux-kernel@vger.kernel.org,
Peter Zijlstra <a.p.zijlstra@chello.nl>,
Andrew Morton <akpm@linux-foundation.org>
Subject: Re: [PATCH v7 0/8] Tunable sched_mc_power_savings=n
Date: Fri, 2 Jan 2009 23:16:30 +0100 [thread overview]
Message-ID: <20090102221630.GF17240@elte.hu> (raw)
In-Reply-To: <20090102072600.GA13412@dirshya.in.ibm.com>
* Vaidyanathan Srinivasan <svaidy@linux.vnet.ibm.com> wrote:
> * Vaidyanathan Srinivasan <svaidy@linux.vnet.ibm.com> [2008-12-30 23:37:22]:
>
> > * Ingo Molnar <mingo@elte.hu> [2008-12-30 07:21:39]:
> >
> > >
> > > * Balbir Singh <balbir@linux.vnet.ibm.com> wrote:
> > >
> > > > > > KERNBENCH Runs: make -j4 on a x86 8 core, dual socket quad core cpu
> > > > > > package system
> > > > > >
> > > > > > SchedMC Run Time Package Idle Energy Power
> > > > > > 0 81.68 52.83% 54.71% 1.00x J 1.00y W
> > > > > > 1 80.70 36.62% 70.11% 0.95x J 0.96y W
> > > > > > 2 74.95 19.53% 85.92% 0.90x J 0.98y W
> > >
> > > > > Your result is very interesting.
> > > > > level 2 is more fast and efficient of power.
> > > > >
> > > > > What's major contributor to use less time in level 2?
> > > > > I think it's cache bounce is less time than old.
> > > > > Is right ?
> > > >
> > > > Yes, correct
> > >
> > > yes, i too noticed that runtime improved so dramatically: +7.5% on
> > > kernbench is a _very_ big deal.
> > >
> > > So i wanted to ask you to re-test whether this speedup is reproducible,
> > > and if yes, please check a few other workloads (for example sysbench on
> > > postgresql / mysqld) and send a patch that changes the
> > > sched_mc_power_savings default to POWERSAVINGS_BALANCE_WAKEUP (2).
> >
> > The speedup for kernbench is reproducible. I will post a more
> > detailed test report on kernbench soon. The power-performance benefit
> > is for an under-utilised system (nr_cpus/2) run of kernbench which is
> > very ideal to demonstrate the power savings feature. I will also try
> > sysbench and update results little later. As Balbir mentioned, I am
> > on vacation and traveling. I will post more benchmark results as soon
> > as possible.
>
> Hi Ingo,
>
> I ran my kernbench test setup over multiple iterations with several
> thread counts. The performance will almost max out at 8-10 threads of
> kernbench since the system has total of 8 logical CPUs.
>
> The power saving benefits is expected to be maximum around 30-50%
> system utilisation (3-5 threads).
>
> I have posted the normalised results in various tables below.
> Apparently the sched_mc=2 settings is helping at 8 threads case also
> due to better cache line sharing. I will work with Balbir to see if
> we can prove this assertion using performance counters. I will start
> looking at sysbench and try to get benchmark results and power/energy
> data in similar configurations.
>
> --Vaidy
>
> All these tests were done on sched-tip at
> commit: fe235c6b2a4b9eb11909fe40249abcce67f7d45d
> uname -a is 2.6.28-rc8-tip-sv-05664-gfe235c6-dirty
>
> Kernbench was run on source 2.6.28 while the previous tests used
> 2.6.25 kernel which had far less stuff to compile in defconfig :)
>
> System configuration is x86 quad core dual socket system
> with 8 logical CPUs
>
> Each result is an average of 5 iterations.
>
> Kernbench threads = 2
>
> SchedMC Run Time Package Idle(%) Energy(J) Power(W)
> 0 217.37 73.30 76.93 1.00 1.00
> 1 204.68 50.86 99.91 0.95 1.01
> 2 204.49 50.69 99.93 0.95 1.01
>
> Kernbench threads = 4
>
> SchedMC Run Time Package Idle(%) Energy(J) Power(W)
> 0 109.11 51.99 54.91 1.00 1.00
> 1 109.71 35.86 71.88 0.96 0.96
> 2 102.95 25.02 82.47 0.92 0.97
>
> Kernbench threads = 6
>
> SchedMC Run Time Package Idle(%) Energy(J) Power(W)
> 0 74.77 35.29 36.37 1.00 1.00
> 1 74.54 28.83 40.90 0.99 0.99
> 2 73.38 21.09 47.29 0.98 1.00
>
> Kernbench threads = 8
>
> SchedMC Run Time Package Idle(%) Energy(J) Power(W)
> 0 63.18 26.23 28.67 1.00 1.00
> 1 56.89 19.85 22.38 0.93 1.02
> 2 55.27 17.65 19.84 0.91 1.03
looks very promising.
> Relative measures for sched_mc=1 compared to baseline sched_mc=0
>
> Threads=> 2 4 6 8 10 12
> KernbenchTime 0.94 1.01 1.00 0.90 0.93 0.95
> Energy 0.95 0.96 0.99 0.93 0.95 0.97
> Power 1.01 0.96 0.99 1.02 1.02 1.01
>
> Relative measures for sched_mc=2 compared to baseline sched_mc=0
>
> Threads=> 2 4 6 8 10 12
> KernbenchTime 0.94 0.94 0.98 0.87 0.92 0.94
> Energy 0.95 0.92 0.98 0.91 0.94 0.96
> Power 1.01 0.97 1.00 1.03 1.02 1.02
That's icing on the cake.
Mike, would you be interesting in having a look at sched_mc=2 as a
kernel-wide default - and give it your blessing if you find it to be a net
improvement for the various performance and interactivity tests you do?
Ingo
next prev parent reply other threads:[~2009-01-02 22:16 UTC|newest]
Thread overview: 62+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-12-18 17:55 [PATCH v7 0/8] Tunable sched_mc_power_savings=n Vaidyanathan Srinivasan
2008-12-18 17:56 ` [PATCH v7 1/8] sched: convert BALANCE_FOR_xx_POWER to inline functions Vaidyanathan Srinivasan
2008-12-18 17:56 ` [PATCH v7 2/8] sched: Framework for sched_mc/smt_power_savings=N Vaidyanathan Srinivasan
2008-12-18 17:56 ` [PATCH v7 3/8] sched: favour lower logical cpu number for sched_mc balance Vaidyanathan Srinivasan
2008-12-18 17:56 ` [PATCH v7 4/8] sched: nominate preferred wakeup cpu Vaidyanathan Srinivasan
2008-12-18 18:12 ` Balbir Singh
2008-12-19 21:55 ` Andrew Morton
2008-12-19 22:19 ` Andrew Morton
2008-12-19 22:27 ` Ingo Molnar
2008-12-19 22:31 ` Ingo Molnar
2008-12-19 22:38 ` Andrew Morton
2008-12-19 22:54 ` Ingo Molnar
2008-12-20 4:36 ` Vaidyanathan Srinivasan
2008-12-20 4:44 ` Andrew Morton
2008-12-20 7:54 ` Ingo Molnar
2008-12-20 10:02 ` Vaidyanathan Srinivasan
2008-12-20 10:36 ` Vaidyanathan Srinivasan
2008-12-20 10:56 ` Vaidyanathan Srinivasan
2008-12-21 8:46 ` Ingo Molnar
2008-12-18 17:56 ` [PATCH v7 5/8] sched: bias task wakeups to preferred semi-idle packages Vaidyanathan Srinivasan
2008-12-18 18:11 ` Balbir Singh
2008-12-18 17:56 ` [PATCH v7 6/8] sched: activate active load balancing in new idle cpus Vaidyanathan Srinivasan
2008-12-18 17:56 ` [PATCH v7 7/8] sched: add SD_BALANCE_NEWIDLE at MC and CPU level for sched_mc>0 Vaidyanathan Srinivasan
2008-12-18 17:56 ` [PATCH v7 8/8] sched: idle_balance() does not call load_balance_newidle() Vaidyanathan Srinivasan
2008-12-18 18:12 ` Balbir Singh
2008-12-18 20:17 ` Ingo Molnar
2008-12-18 20:19 ` [PATCH v7 0/8] Tunable sched_mc_power_savings=n Ingo Molnar
2008-12-18 20:31 ` Ingo Molnar
2008-12-19 8:29 ` Vaidyanathan Srinivasan
2008-12-19 8:24 ` Vaidyanathan Srinivasan
2008-12-19 13:34 ` Vaidyanathan Srinivasan
2008-12-29 23:43 ` MinChan Kim
2008-12-30 2:48 ` Balbir Singh
2008-12-30 6:21 ` Ingo Molnar
2008-12-30 6:44 ` Balbir Singh
2008-12-30 7:20 ` Ingo Molnar
2008-12-30 18:07 ` Vaidyanathan Srinivasan
2009-01-02 7:26 ` Vaidyanathan Srinivasan
2009-01-02 22:16 ` Ingo Molnar [this message]
2009-01-03 7:29 ` Mike Galbraith
2009-01-03 10:16 ` Vaidyanathan Srinivasan
2009-01-03 11:22 ` Mike Galbraith
2009-01-04 15:00 ` Mike Galbraith
2009-01-04 18:19 ` Vaidyanathan Srinivasan
2009-01-04 19:52 ` Mike Galbraith
2009-01-05 3:20 ` Vaidyanathan Srinivasan
2009-01-05 4:40 ` Mike Galbraith
2009-01-05 6:36 ` Mike Galbraith
2009-01-05 15:19 ` Mike Galbraith
2009-01-06 9:31 ` Mike Galbraith
2009-01-06 15:07 ` Vaidyanathan Srinivasan
2009-01-06 17:48 ` Mike Galbraith
2009-01-06 18:45 ` Balbir Singh
2009-01-07 8:59 ` Mike Galbraith
2009-01-07 11:26 ` Vaidyanathan Srinivasan
2009-01-07 14:36 ` Mike Galbraith
2009-01-07 15:35 ` Vaidyanathan Srinivasan
2009-01-08 8:06 ` Mike Galbraith
2009-01-08 17:46 ` Vaidyanathan Srinivasan
2009-01-09 6:00 ` Mike Galbraith
2009-01-06 14:54 ` Vaidyanathan Srinivasan
2008-12-30 17:31 ` Vaidyanathan Srinivasan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20090102221630.GF17240@elte.hu \
--to=mingo@elte.hu \
--cc=a.p.zijlstra@chello.nl \
--cc=akpm@linux-foundation.org \
--cc=balbir@linux.vnet.ibm.com \
--cc=efault@gmx.de \
--cc=linux-kernel@vger.kernel.org \
--cc=svaidy@linux.vnet.ibm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox