[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <200611141450.07906.dada1@cosmosbay.com>
Date: Tue, 14 Nov 2006 14:50:07 +0100
From: Eric Dumazet <dada1@...mosbay.com>
To: Andrew Morton <akpm@...l.org>, Ingo Molnar <mingo@...e.hu>
Cc: linux-kernel@...r.kernel.org, tglx@...utronix.de
Subject: Re: 2.6.19-rc5-mm2
On Tuesday 14 November 2006 10:41, Andrew Morton wrote:
> Presently at
>
> http://userweb.kernel.org/~akpm/2.6.19-rc5-mm2/
>
> and will appear later at
>
> ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.19-rc5/2.
>6.19-rc5-mm2/
Hi all
I noticed a slowdown (3%) on a io micro-benchmark on my machine with
2.6.19-rc5-mm2
It appears time-uninline-jiffiesh.patch is sub-optimal at least for current
compilers (tested gcc-4.0.4 here)
May I suggest :
1) make sure jiffies_to_usecs() is defined before being used in
timespec_trunc() : Compiler will just optimize away not *needed* code.
OR :
2) Revert to inline versions of four functions jiffies_to_msecs(),
jiffies_to_usecs(), msecs_to_jiffies() and usecs_to_jiffies() .
IMHO there is litle gain to call a function just to perform so basic
arithmetics, that sometime compiler can perform at compilation time.
OR
3) replace
(jiffies_to_usecs(1) * 1000)
by
(NSEC_PER_SEC / HZ)
With current patch, timespec_trunc() is not anymore a tail function.
struct timespec timespec_trunc(struct timespec t, unsigned gran)
{
if (gran <= jiffies_to_usecs(1) * 1000) {
Much better here to have :
if (gran < SOME_CONSTANT)
Thank you
Eric
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists