Subject: Performance improvement. (was Re: CVS commit: syssrc/sys)
To: None <port-arm32@netbsd.org>
From: Chris Gilbert <chris@paradox.demon.co.uk>
List: port-arm32
Date: 01/19/2002 17:02:07
Note I'd recommend anyone running a kernel since 1.5Y update to the following
change. The performance difference on cats is rather large, and certainly
noticeable, timing is of doing a configure of gmake:
15Y:
16.7u 40.5s 1:15.35 76.0% 0+0k 19+1541io 237pf+0w
15Z:
84.8u 41.7s 2:27.03 86.0% 0+0k 19+1653io 232pf+0w
current this morning:
85.1u 42.3s 2:27.61 86.3% 0+0k 19+1650io 228pf+0w
current with above changes:
16.8u 38.6s 1:14.25 74.6% 0+0k 26+1559io 233pf+0w
This returns performance is back to what it used to be before we did the
right thing with cache.
Note it'll take a while to filter out to anoncvs.
Thanks to chuq for sorting this out.
Cheers,
Chris
On Saturday 19 January 2002 4:55 pm, you wrote:
> Module Name: syssrc
> Committed By: chs
> Date: Sat Jan 19 16:55:23 UTC 2002
>
> Modified Files:
> syssrc/sys/arch/arm/include/arm32: pmap.h
> syssrc/sys/uvm: uvm_bio.c
>
> Log Message:
> add a new flag PMAP_CACHE_VIVT for the pmap to inform the MI code that
> that the cache is virtually-indexed and virtually-tagged (such as on the
> ARM), and use this flag in the UBC code to be more friendly to those
> caches.
>
> To generate a diff of this commit:
> cvs rdiff -r1.19 -r1.20 syssrc/sys/arch/arm/include/arm32/pmap.h
> cvs rdiff -r1.22 -r1.23 syssrc/sys/uvm/uvm_bio.c