lkml.org 
[lkml]   [1998]   [Jan]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: MTRR's: What kind of speedup? Any regions besides framebuffer?

Benjamin Redelings, I writes:
>> Hi, I have a PPro 150->166 with bus speed 66MHz. I notice on loading
>> proform.o (with kernel 2.1.82) that I get an improvement of 17.2->20.7
>> fps at 512x384 in q2test (Quake II Test). I guess thats a 20% increase
>> but it doesn't seem THAT big...is that normal? High? Low?
>> I'm also wondering if there are other regions besides the framebuffer
>> than can/should be set to Write-Combining. I'm using XFree86 3.3.1 with
>> a Matrox Mystique w/ 2Mb SGRAM. (Also, anyone think I could get an
>> improvement by using the XSuse server?)
>> I'm interested in this mainly as a benchmark...but perhaps my CPU isn't
>> stressing the bus out cuz it isn't fast enough ;)
>
>I don't know what your test does, but image write operations should be
>2.5 to 2.8 times faster. BTW: have you seen MTRR v1.5? It's at:
>http://www.atnf.csiro.au/~rgooch/kernel-patches.html
>

Remember that you only speed up writes to the framebuffer -- q2 is doing
a lot of other work as well. If you want a direct test of the performance
gain try the dga utility in 8bpp mode that comes with XFree86. It runs a
simple benchmark if you hit b when it's running.

On another note -- the version of glibc that comes with RedHat 5.0 has a problem.
If you run the dga utility from 4.2 (linked against libc5.3.12) you should get
a transfer rate of around 80MBytes/sec -- with 5.0 I get 26MBytes/sec.

There seems to be a problem with the memset (and memcpy) routines in glibc.
I recompiled dga along with memset and memcpy from the glibc source and ran
some benchmarks and got very good performance that way so I think there is
some problem with the way they built the library. (I don't know if it's
PentiumPro specific -- since the string stuff is in asm it might be something
subtle)


------------------------------------------------------------------------------
These numbers are transfer rates to the linear frame buffer of the
video card. Mtrr's are enabled and the frame buffer is set to
write combining. (Note dga doesn't use memcpy -- I added that in since
I wanted to test some of the other memory stuff)


Redhat 5.0 supplied glibc recompiled memcpy and memset
functions from glibc source

memcpy 26 MBytes/sec 80 MBytes/sec
memset 26 MBytes/sec 80 MBytes/sec


These numbers are transfer rates from buffer to buffer in main memory.

memset 246 MBytes/sec 405 MBytes/sec
memcpy 177 MBytes/sec 182 MBytes/sec


System is a 180 Mhz PentiumPro with 64 Megabytes of RAM and a
Matrox Millenium II.


Regards
Emil Briggs
~

\
 
 \ /
  Last update: 2005-03-22 13:41    [W:0.081 / U:1.428 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site