4MB pages and framebuffer access, x11perf results, 2.1.125

MOLNAR Ingo (mingo@chiara.csoma.elte.hu)
Wed, 28 Oct 1998 04:50:05 +0100 (CET)


On Tue, 27 Oct 1998, Linus Torvalds wrote:

> I actually had 4MB pages working at one point (with magic hackery to the
> pmd_xxx macros - no generic VM changes necessary), but it became fairly
> ugly, and the generated code was nasty for the normal case of 4kB pages.

ok, i got a hack working to 4MB-map the 2MB framebuffer of a PCI video
card. I've tested framebuffer performance via turning off acceleration in
the X server with the "noaccel" flag, and have run x11perf. MTRR support
is enabled and the framebuffer is set to write-combining. None of the ~200
benchmark numbers produced by x11perf got worse due to the hack, and here
are some of the more spectacular improvements (in x11perfcomp format):

1: 2.1.125-orig.log
2: 2.1.125-4m-pages-hacked.log

1 2 Operation
-------- -------- ---------
151000.0 173000.0 10x10 rectangle
1800.0 2080.0 100x100 rectangle
73.2 84.1 500x500 rectangle
1800.0 2100.0 100x100 tiled rectangle (216x208 tile)
73.2 84.9 500x500 tiled rectangle (216x208 tile)
679000.0 715000.0 10-pixel dashed segment
177000.0 201000.0 100-pixel horizontal line segment
36600.0 41900.0 500-pixel horizontal line segment
627.0 715.0 500x50 wide horizontal line segment
256000.0 269000.0 10x1 wide vertical line segment
13500.0 15300.0 100x10 wide vertical line segment
607.0 682.0 500x50 wide vertical line segment
554.0 628.0 500x50 wide line
4250.0 4940.0 100x100 wide rectangle outline
181.0 209.0 500x500 wide rectangle outline
93.5 107.0 500-pixel solid circle
188.0 216.0 500-pixel filled ellipse
201.0 233.0 Fill 300x300 tiled trapezoid (4x4 tile)
1770.0 2020.0 Fill 100x100 64-gon (Complex)
148000.0 157000.0 Char16 in 40-char line (k14)
75.7 92.2 Copy 500x500 from pixmap to window
73.6 84.3 Copy 500x500 1-bit deep plane
914.0 976.0 Copy 100x100 n-bit deep plane

the two kernels are almost completely identical, the 'original' has the
hack too, but turned off via a flag. I'll check quake numbers in a second,
but i doubt quake benefits much.

so it looks like the feature makes sense, now the question is, how can
this be integrated into the x86 MM layer without slowing down anything
else ...

-- mingo

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/