From mboxrd@z Thu Jan 1 00:00:00 1970 From: Chris Mason Subject: RE: Mainline kernel OLTP performance update Date: Mon, 19 Jan 2009 13:04:51 -0500 Message-ID: <1232388291.6521.140.camel@think.oraclecorp.com> References: <20090114163557.11e097f2.akpm@linux-foundation.org> <20090115012147.GW29283@parisc-linux.org> <20090114180431.f4a96543.akpm@linux-foundation.org> <1231986439.21980.54.camel@localhost.localdomain> Mime-Version: 1.0 Content-Type: text/plain Content-Transfer-Encoding: 7bit Return-path: Received: from rcsinet11.oracle.com ([148.87.113.123]:31612 "EHLO rgminet11.oracle.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751843AbZASSGO (ORCPT ); Mon, 19 Jan 2009 13:06:14 -0500 In-Reply-To: Sender: linux-scsi-owner@vger.kernel.org List-Id: linux-scsi@vger.kernel.org To: "Ma, Chinang" Cc: Steven Rostedt , Andrew Morton , Matthew Wilcox , "Wilcox, Matthew R" , "linux-kernel@vger.kernel.org" , "Tripathi, Sharad C" , "arjan@linux.intel.com" , "Kleen, Andi" , "Siddha, Suresh B" , "Chilukuri, Harita" , "Styner, Douglas W" , "Wang, Peter Xihong" , "Nueckel, Hubert" , "linux-scsi@vger.kernel.org" , Andrew Vasquez , Anirban Chakraborty , Ingo Molnar , Thomas Gleixner , Peter Zijlstra On Thu, 2009-01-15 at 00:11 -0700, Ma, Chinang wrote: > >> > > > > > >> > > > > Linux OLTP Performance summary > >> > > > > Kernel# Speedup(x) Intr/s CtxSw/s us% sys% idle% > >iowait% > >> > > > > 2.6.24.2 1.000 21969 43425 76 24 0 > >0 > >> > > > > 2.6.27.2 0.973 30402 43523 74 25 0 > >1 > >> > > > > 2.6.29-rc1 0.965 30331 41970 74 26 0 > >0 > >> > > >> > > But the interrupt rate went through the roof. > >> > > >> > Yes. I forget why that was; I'll have to dig through my archives for > >> > that. > >> > >> Oh. I'd have thought that this alone could account for 3.5%. A later email indicated the reschedule interrupt count doubled since 2.6.24, and so I poked around a bit at the causes of resched_task. I think the -rt version of check_preempt_equal_prio has gotten much more expensive since 2.6.24. I'm sure these changes were made for good reasons, and this workload may not be a good reason to change it back. But, what does the patch below do to performance on 2.6.29-rcX? -chris diff --git a/kernel/sched_rt.c b/kernel/sched_rt.c index 954e1a8..bbe3492 100644 --- a/kernel/sched_rt.c +++ b/kernel/sched_rt.c @@ -842,6 +842,7 @@ static void check_preempt_curr_rt(struct rq *rq, struct task_struct *p, int sync resched_task(rq->curr); return; } + return; #ifdef CONFIG_SMP /*