Bug 6762

Summary: Radeon may have excessive cache flushing
Product: xorg Reporter: Eric Anholt <eric>
Component: Driver/RadeonAssignee: Xorg Project Team <xorg-team>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: high CC: alexdeucher, benh
Version: gitKeywords: patch
Hardware: x86 (IA32)   
OS: FreeBSD   
Whiteboard:
i915 platform: i915 features:
Bug Depends on: 6761    
Bug Blocks:    
Attachments:
Description Flags
Patch to remove apparently gratuitous cache flushing none

Description Eric Anholt 2006-04-27 12:04:30 UTC
While dealing with bug #6761, I wrote the patch attached there first, and that
fixed my rendering issues.  Then I noticed I'd missed the SWITCH_TO_*D in
radeon_exa.c, so I tried applying the s/RB2D/RB3D/ there.  The effect I noticed
was reduced performance (~-12%, and my rendering was fine already), so I tried
just removing those lines, to no ill effect.

I suspect that RADEON_WAIT_UNTIL with *_IDLECLEAN deals with triggering the
flushing, even though my reading of the docs before had indicated that it only
waited for a flush to complete (I inferred that the flush had to already be
happening).  I think I saw a minor performance gain from this (~1% in rgb24text,
would need to do some cleaner runs to see).  However, I'm just attaching a patch
since my testing is a sample of one card, with or without DRI, currently.
Comment 1 Eric Anholt 2006-04-27 12:05:02 UTC
Created attachment 5492 [details] [review]
Patch to remove apparently gratuitous cache flushing
Comment 2 Michel Dänzer 2006-07-02 16:27:41 UTC
Pushed to git, thanks.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.