mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Vaidyanathan Srinivasan <svaidy@linux.vnet.ibm.com>
To: Ingo Molnar <mingo@elte.hu>
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 12:56:00 +0530	[thread overview]
Message-ID: <20090102072600.GA13412@dirshya.in.ibm.com> (raw)
In-Reply-To: <20081230180722.GA29060@dirshya.in.ibm.com>

* 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


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


  reply	other threads:[~2009-01-02  7:23 UTC|newest]

Thread overview: 62+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-12-18 17:55 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 [this message]
2009-01-02 22:16           ` Ingo Molnar
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=20090102072600.GA13412@dirshya.in.ibm.com \
    --to=svaidy@linux.vnet.ibm.com \
    --cc=a.p.zijlstra@chello.nl \
    --cc=akpm@linux-foundation.org \
    --cc=balbir@linux.vnet.ibm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    /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

Powered by JetHome