Bug 18096

Summary: EXA is painfully slow
Product: xorg Reporter: Felipe Contreras <felipe.contreras>
Component: Driver/radeonhdAssignee: Luc Verhaegen <lverhaegen>
Status: RESOLVED NOTABUG QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: medium    
Version: git   
Hardware: x86 (IA32)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
full log. none

Description Felipe Contreras 2008-10-16 16:26:15 UTC
I've tried with multiple versions, it's always slow.

This is a Mobility Radeon X1300 running on Fedora 9. DRI is enabled by default, so I'm not touching it.

I've experienced this in multiple vanilla kernels (2.6.26.5, 2.6.27).
Comment 1 Felipe Contreras 2008-10-16 16:52:07 UTC
I tried the ati driver and I got the same slowness with my vanilla kernels, but then I tried the one on the system (F9) and it works fine with ati, but still slow with radeonhd.
Comment 2 Egbert Eich 2008-10-17 08:33:18 UTC
There's only one thing that could have caused this:
You didn't turn on DRI. Please consult 'man radeonhd' how to do this.
When you have verified that it still happens with this option turned on please feel free to reopen and attach a log file generated with '-logverbose 7'.
Comment 3 Felipe Contreras 2008-10-17 09:41:29 UTC
I did turn it on as lucv suggested, and it made no difference, as I said in IRC.

Now, if EXA requires DRI, wouldn't this be the kind of thing to document somewhere?

If you still believe I didn't turn it on, I get this on the log:
(**) RADEONHD(0): Option "DRI" "on"

And then:
(II) RADEONHD(0): FB: Allocated Offscreen Buffer at offset 0x01908000 (size = 0x00666000)
(II) RADEONHD(0): FB: Allocated DRI Back Buffer at offset 0x01F6E000 (size = 0x01900000)
(EE) RADEONHD(0): FB: Failed allocating DRI Depth Buffer (25600 KB)
(EE) RADEONHD(0): DRI: Failed allocating buffers, disabling

Do you want me to append the full log?
Comment 4 Egbert Eich 2008-10-17 09:59:47 UTC
(In reply to comment #3)
> 
> Do you want me to append the full log?
> 

Yes, please do!
Comment 5 Felipe Contreras 2008-10-17 10:20:36 UTC
Created attachment 19721 [details]
full log.
Comment 6 Fabio Scaccabarozzi 2008-10-18 02:30:17 UTC
I recently migrated to radeon/radeonHD on my two computers and I had these problems too. I had past experiences with EXA breaking things and so I thought I could have a look at xorg.conf/exa man pages. I found those two options
Option  "EXAOptimizeMigration" "on"
Option  "MigrationHeuristic" "smart"
to enable in the Device section of xorg.conf. Defaults are off/always. Possible values for MigrationHeuristic are always/greedy/smart. I haven't tested greedy, but with this combination I'm having a very smooth desktop experience.
With glxgears, rendering rate moved from ~400fps to ~3100 fps (X1900 XT(R5xx)/radeonHD). I had same problems on my laptop (9600Pro(R3xx)/radeon), glxgears comparison is ~200fps against current ~1000 fps. See "man exa" for more details.
I'm using xorg-server 1.5.2 + radeonHD 1.2.3 (git). DRI enabled in both cases.
Comment 7 Egbert Eich 2008-10-18 03:06:23 UTC
The answer to the problem lies within these log snippets:
(--) RADEONHD(0): VideoRAM: 65536 kByte
...
(II) RADEONHD(0): FB: Allocated ScanoutBuffer at offset 0x00008000 (size =  
0x01900000)
...
(II) RADEONHD(0): FB: Allocated Offscreen Buffer at offset 0x01908000 (size 
= 0x00666000)
(II) RADEONHD(0): FB: Allocated DRI Back Buffer at offset 0x01F6E000 (size = 
0x01900000)
(EE) RADEONHD(0): FB: Failed allocating DRI Depth Buffer (25600 KB)
(EE) RADEONHD(0): DRI: Failed allocating buffers, disabling

There are only 64Mb of VRAM. (0x01F6E000 + 0x01900000) is 57784kB already.
57784kB + 25600 KB = 83384kB which exceeds 65536kB.

You may want to reduce your virtual size as 2560x2560 is awfully big for such little VRAM. Then the buffer sizes will become smaller and things will start fitting into the VRAM.

This is really NOTABUG. It's a limitation of your hardware.
Comment 8 Felipe Contreras 2008-10-18 03:31:25 UTC
Oh, really? Who sets that 2560x2560 virtual size?
Comment 9 Felipe Contreras 2008-10-21 04:06:29 UTC
I've created bug #18148 as a follow up.

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.