[PATCH 0/4] 8xx: Optimize TLB Miss code.

Joakim Tjernlund joakim.tjernlund at transmode.se
Fri Mar 5 00:06:48 EST 2010


Wolfgang Denk <wd at denx.de> wrote on 2010/03/04 13:16:56:

> From: Wolfgang Denk <wd at denx.de>
> To: hs at denx.de
> Cc: Joakim Tjernlund <joakim.tjernlund at transmode.se>, Klaus-Jürgen
> <heydeck at kieback-peter.de>, linuxppc-dev at ozlabs.org, Scott Wood
> <scottwood at freescale.com>
> Date: 2010/03/04 13:17
> Subject: Re: [PATCH 0/4] 8xx: Optimize TLB Miss code.
>
> Dear Heiko,
>
> thanks for running the tests.
>
> In message <4B8F8BB4.6070201 at denx.de> you wrote:
> >
> > here the results:
> >
> > run   version
> >
> > 1-4   2.6.33-rc6 without your patches
> > 5-8   2.6.33-rc6 with all your patches
> > 9-12   2.6.33-rc6 with patches 1,2 and 4 (without 8xx: Don't touch ACCESSED
> when no SWAP)
> > 13-16   2.6.33-rc6 with all your patches and CONFIG_PIN_TLB=y
>
> So CONFIG_PIN_TLB imroves the performance as expected, while the other
> patches don;t show any measurable improvememt - or am I reading the
> results incorrectly?

Close but not quite. What stands out most is:

Memory latencies in nanoseconds - smaller is better
    (WARNING - may not be correct, check graphs)
------------------------------------------------------------------------------
Host                 OS   Mhz   L1 $   L2 $    Main mem    Rand mem    Guesses
--------- -------------   ---   ----   ----    --------    --------    -------
tqm8xx    Linux 2.6.33-    66   31.8  141.0       184.0      1165.7
tqm8xx    Linux 2.6.33-    66   31.8  141.2       184.2      1165.3
tqm8xx    Linux 2.6.33-    66   31.8  141.3       184.3      1165.6
tqm8xx    Linux 2.6.33-    66   31.8  141.3       184.2      1166.2

tqm8xx    Linux 2.6.33-    66   31.8  141.0       171.8      1100.5    No L2 cache?
tqm8xx    Linux 2.6.33-    66   31.8  141.0       171.8      1102.5    No L2 cache?
tqm8xx    Linux 2.6.33-    66   31.8  141.0       171.8      1101.7    No L2 cache?
tqm8xx    Linux 2.6.33-    66   31.8  141.0       171.8      1101.6    No L2 cache?

tqm8xx    Linux 2.6.33-    66   31.8  141.1       173.4      1149.1    No L2 cache?
tqm8xx    Linux 2.6.33-    66   31.8  141.1       173.4      1149.0    No L2 cache?
tqm8xx    Linux 2.6.33-    66   31.7  141.1       173.4      1148.7    No L2 cache?
tqm8xx    Linux 2.6.33-    66   31.7  141.1       173.4      1148.2    No L2 cache?

tqm8xx    Linux 2.6.33-    66   31.8  171.1       171.7      1099.8    No L2 cache?
tqm8xx    Linux 2.6.33-    66   31.8  171.1       171.6      1100.5    No L2 cache?
tqm8xx    Linux 2.6.33-    66   31.7  171.0       171.7      1101.0    No L2 cache?
tqm8xx    Linux 2.6.33-    66   31.8  171.0       171.6      1101.3    No L2 cache?


Besides the numbers, note how the first group doesn't have a Guesses entry.
Is there something odd with the results for the first group?

Also, since you are using MODULES, patch 2 is nullified.
Patch 1 is very minor and should not show I think.
This leaves patches 3 & 4.
There appears to be something funny with patch 3,Don't touch ACCESSED when no SWAP, as
it yields bad numbers for Prot Fault so perhaps I am missing something that needs ACCESSED
even if NO_SWAP. Perhaps a someone that knows MM in Linux knows?
Is there any messages in the kernel log(dmesg)?

 Jocke



More information about the Linuxppc-dev mailing list