Re: [Bug 10328] New: [regression] performance drop for glx

From: Alexey Fisher
Date: Fri Apr 25 2008 - 01:35:52 EST


Am Dienstag, den 25.03.2008, 21:42 -0700 schrieb Arjan van de Ven:
> Suresh Siddha wrote:
> > On Tue, Mar 25, 2008 at 03:28:09PM -0700, Andrew Morton wrote:
> >> (switched to email. Please respond via emailed reply-to-all, not via the
> >> bugzilla web interface).
> >>
> >> On Tue, 25 Mar 2008 15:11:15 -0700 (PDT)
> >> bugme-daemon@xxxxxxxxxxxxxxxxxxx wrote:
> >>
> >>> http://bugzilla.kernel.org/show_bug.cgi?id=10328
> >>>
> >>> Summary: [regression] performance drop for glx
> >>>
> >>> after commit 4138cc3418f5eaa7524ff8e927102863f1ba0ea5 i expirience some grafik
> >>> related perfomance issues.
> >>>
> >>> I used glxgears for test.
> >>> before this patch: 1281.005 FPS
> >>> and after: 765.000 FPS
> >> It nearly halved.
> >>
> >>> latest tested commit a4083c9271e0a697278e089f2c0b9a95363ada0a
> >>> still hase bad performance.
> >>>
> >>> I use Pentium D with 2GB RAM, Grafick: i945G, ICH7
> >>>
> >> That's
> >>
> >> : commit 4138cc3418f5eaa7524ff8e927102863f1ba0ea5
> >> : Author: Siddha, Suresh B <suresh.b.siddha@xxxxxxxxx>
> >> : Date: Wed Jan 30 13:33:43 2008 +0100
> >> :
> >> : x86: set strong uncacheable where UC is really desired
> >> :
> >> : Also use _PAGE_PWT for all the mappings which need uncache mapping.
> >> : Instead of existing PAT2 which is UC- (and can be overwritten by MTRRs),
> >> : we now use PAT3 which is strong uncacheable.
> >> :
> >> : This makes it consistent with pgprot_noncached()
> >
> > Alexey, Can you please try the appended patch?
> >
> > Andrew, can you please push the appended patch for 2.6.25? Thanks.
> > ---
> >


This issue come again with commit:

commit 2e5d9c857d4e6c9e7b7d8c8c86a68a7842d213d6
Author: venkatesh.pallipadi@xxxxxxxxx <venkatesh.pallipadi@xxxxxxxxx>
Date: Tue Mar 18 17:00:14 2008 -0700

x86: PAT infrastructure patch

Sets up pat_init() infrastructure.

PAT MSR has following setting.
PAT
|PCD
||PWT
|||
000 WB _PAGE_CACHE_WB
001 WC _PAGE_CACHE_WC
010 UC- _PAGE_CACHE_UC_MINUS
011 UC _PAGE_CACHE_UC

We are effectively changing WT from boot time setting to WC.
UC_MINUS is used to provide backward compatibility to existing /dev/mem
users(X).

reserve_memtype and free_memtype are new interfaces for maintaining
alias-free
mapping. It is currently implemented in a simple way with a linked list and
not optimized. reserve and free tracks the effective memory type, as a
result
of PAT and MTRR setting rather than what is actually requested in PAT.

pat_init piggy backs on mtrr_init as the rules for setting both pat and
mtrr
are same.

Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@xxxxxxxxx>
Signed-off-by: Suresh Siddha <suresh.b.siddha@xxxxxxxxx>
Signed-off-by: Ingo Molnar <mingo@xxxxxxx>

Attachment: signature.asc
Description: Dies ist ein digital signierter Nachrichtenteil