dri + ATI: dramatic performance slowdown

Norbert Papke npapke at acm.org
Thu Apr 23 00:39:27 UTC 2009


On April 21, 2009, Robert Noland wrote:
> On Tue, 2009-04-21 at 16:04 +0200, Oliver Lehmann wrote:
> > 0xd8000000/0x8000000 drm write-combine active
>
> Ok, looks like MTRR is working for you, so that isn't it...
>
> robert.

Hi Robert,

Should there be a write-combined range present for all (ATI) cards?  I don't 
see such an entry (please see below).  My 2D performance seems reasonable.  I 
have no complaints, just wondering.

Cheers,
 
-- Norbert Papke.
   npapke at acm.org

# dmesg | grep drm
drm0: <ATI ATI Radeon HD 3600 XT> on vgapci0
vgapci0: child drm0 requested pci_enable_busmaster
info: [drm] Initialized radeon 1.29.0 20080528
info: [drm] Setting GART location based on new memory map
info: [drm] Loading RV635 CP Microcode
info: [drm] Loading RV635 PFP Microcode
info: [drm] Resetting GPU
info: [drm] writeback test succeeded in 1 usecs


 # memcontrol list
0x0/0x10000 BIOS write-back fixed-base fixed-length set-by-firmware active
0x10000/0x10000 BIOS write-back fixed-base fixed-length set-by-firmware active
0x20000/0x10000 BIOS write-back fixed-base fixed-length set-by-firmware active
0x30000/0x10000 BIOS write-back fixed-base fixed-length set-by-firmware active
0x40000/0x10000 BIOS write-back fixed-base fixed-length set-by-firmware active
0x50000/0x10000 BIOS write-back fixed-base fixed-length set-by-firmware active
0x60000/0x10000 BIOS write-back fixed-base fixed-length set-by-firmware active
0x70000/0x10000 BIOS write-back fixed-base fixed-length set-by-firmware active
0x80000/0x4000 BIOS write-back fixed-base fixed-length set-by-firmware active
0x84000/0x4000 BIOS write-back fixed-base fixed-length set-by-firmware active
0x88000/0x4000 BIOS write-back fixed-base fixed-length set-by-firmware active
0x8c000/0x4000 BIOS write-back fixed-base fixed-length set-by-firmware active
0x90000/0x4000 BIOS write-back fixed-base fixed-length set-by-firmware active
0x94000/0x4000 BIOS write-back fixed-base fixed-length set-by-firmware active
0x98000/0x4000 BIOS write-back fixed-base fixed-length set-by-firmware active
0x9c000/0x4000 BIOS write-back fixed-base fixed-length set-by-firmware active
0xa0000/0x4000 BIOS uncacheable fixed-base fixed-length set-by-firmware active
0xa4000/0x4000 BIOS uncacheable fixed-base fixed-length set-by-firmware active
0xa8000/0x4000 BIOS uncacheable fixed-base fixed-length set-by-firmware active
0xac000/0x4000 BIOS uncacheable fixed-base fixed-length set-by-firmware active
0xb0000/0x4000 BIOS uncacheable fixed-base fixed-length set-by-firmware active
0xb4000/0x4000 BIOS uncacheable fixed-base fixed-length set-by-firmware active
0xb8000/0x4000 BIOS uncacheable fixed-base fixed-length set-by-firmware active
0xbc000/0x4000 BIOS uncacheable fixed-base fixed-length set-by-firmware active
0xc0000/0x1000 BIOS write-protect fixed-base fixed-length set-by-firmware 
active
0xc1000/0x1000 BIOS write-protect fixed-base fixed-length set-by-firmware 
active
0xc2000/0x1000 BIOS write-protect fixed-base fixed-length set-by-firmware 
active
0xc3000/0x1000 BIOS write-protect fixed-base fixed-length set-by-firmware 
active
0xc4000/0x1000 BIOS write-protect fixed-base fixed-length set-by-firmware 
active
0xc5000/0x1000 BIOS write-protect fixed-base fixed-length set-by-firmware 
active
0xc6000/0x1000 BIOS write-protect fixed-base fixed-length set-by-firmware 
active
0xc7000/0x1000 BIOS write-protect fixed-base fixed-length set-by-firmware 
active
0xc8000/0x1000 BIOS write-protect fixed-base fixed-length set-by-firmware 
active
0xc9000/0x1000 BIOS write-protect fixed-base fixed-length set-by-firmware 
active
0xca000/0x1000 BIOS write-protect fixed-base fixed-length set-by-firmware 
active
0xcb000/0x1000 BIOS write-protect fixed-base fixed-length set-by-firmware 
active
0xcc000/0x1000 BIOS write-protect fixed-base fixed-length set-by-firmware 
active
0xcd000/0x1000 BIOS write-protect fixed-base fixed-length set-by-firmware 
active
0xce000/0x1000 BIOS write-protect fixed-base fixed-length set-by-firmware 
active
0xcf000/0x1000 BIOS write-protect fixed-base fixed-length set-by-firmware 
active
0xd0000/0x1000 BIOS uncacheable fixed-base fixed-length set-by-firmware active
0xd1000/0x1000 BIOS uncacheable fixed-base fixed-length set-by-firmware active
0xd2000/0x1000 BIOS uncacheable fixed-base fixed-length set-by-firmware active
0xd3000/0x1000 BIOS uncacheable fixed-base fixed-length set-by-firmware active
0xd4000/0x1000 BIOS uncacheable fixed-base fixed-length set-by-firmware active
0xd5000/0x1000 BIOS uncacheable fixed-base fixed-length set-by-firmware active
0xd6000/0x1000 BIOS uncacheable fixed-base fixed-length set-by-firmware active
0xd7000/0x1000 BIOS uncacheable fixed-base fixed-length set-by-firmware active
0xd8000/0x1000 BIOS uncacheable fixed-base fixed-length set-by-firmware active
0xd9000/0x1000 BIOS uncacheable fixed-base fixed-length set-by-firmware active
0xda000/0x1000 BIOS uncacheable fixed-base fixed-length set-by-firmware active
0xdb000/0x1000 BIOS uncacheable fixed-base fixed-length set-by-firmware active
0xdc000/0x1000 BIOS uncacheable fixed-base fixed-length set-by-firmware active
0xdd000/0x1000 BIOS uncacheable fixed-base fixed-length set-by-firmware active
0xde000/0x1000 BIOS uncacheable fixed-base fixed-length set-by-firmware active
0xdf000/0x1000 BIOS uncacheable fixed-base fixed-length set-by-firmware active
0xe0000/0x1000 BIOS write-through fixed-base fixed-length set-by-firmware 
active
0xe1000/0x1000 BIOS write-through fixed-base fixed-length set-by-firmware 
active
0xe2000/0x1000 BIOS write-through fixed-base fixed-length set-by-firmware 
active
0xe3000/0x1000 BIOS write-through fixed-base fixed-length set-by-firmware 
active
0xe4000/0x1000 BIOS write-through fixed-base fixed-length set-by-firmware 
active
0xe5000/0x1000 BIOS write-through fixed-base fixed-length set-by-firmware 
active
0xe6000/0x1000 BIOS write-through fixed-base fixed-length set-by-firmware 
active
0xe7000/0x1000 BIOS write-through fixed-base fixed-length set-by-firmware 
active
0xe8000/0x1000 BIOS write-through fixed-base fixed-length set-by-firmware 
active
0xe9000/0x1000 BIOS write-through fixed-base fixed-length set-by-firmware 
active
0xea000/0x1000 BIOS write-through fixed-base fixed-length set-by-firmware 
active
0xeb000/0x1000 BIOS write-through fixed-base fixed-length set-by-firmware 
active
0xec000/0x1000 BIOS write-through fixed-base fixed-length set-by-firmware 
active
0xed000/0x1000 BIOS write-through fixed-base fixed-length set-by-firmware 
active
0xee000/0x1000 BIOS write-through fixed-base fixed-length set-by-firmware 
active
0xef000/0x1000 BIOS write-through fixed-base fixed-length set-by-firmware 
active
0xf0000/0x1000 BIOS write-protect fixed-base fixed-length set-by-firmware 
active
0xf1000/0x1000 BIOS write-protect fixed-base fixed-length set-by-firmware 
active
0xf2000/0x1000 BIOS write-protect fixed-base fixed-length set-by-firmware 
active
0xf3000/0x1000 BIOS write-protect fixed-base fixed-length set-by-firmware 
active
0xf4000/0x1000 BIOS write-protect fixed-base fixed-length set-by-firmware 
active
0xf5000/0x1000 BIOS write-protect fixed-base fixed-length set-by-firmware 
active
0xf6000/0x1000 BIOS write-protect fixed-base fixed-length set-by-firmware 
active
0xf7000/0x1000 BIOS write-protect fixed-base fixed-length set-by-firmware 
active
0xf8000/0x1000 BIOS write-protect fixed-base fixed-length set-by-firmware 
active
0xf9000/0x1000 BIOS write-protect fixed-base fixed-length set-by-firmware 
active
0xfa000/0x1000 BIOS write-protect fixed-base fixed-length set-by-firmware 
active
0xfb000/0x1000 BIOS write-protect fixed-base fixed-length set-by-firmware 
active
0xfc000/0x1000 BIOS write-protect fixed-base fixed-length set-by-firmware 
active
0xfd000/0x1000 BIOS write-protect fixed-base fixed-length set-by-firmware 
active
0xfe000/0x1000 BIOS write-protect fixed-base fixed-length set-by-firmware 
active
0xff000/0x1000 BIOS write-protect fixed-base fixed-length set-by-firmware 
active
0x0/0x100000000 BIOS write-back set-by-firmware active
0x100000000/0x40000000 BIOS write-back set-by-firmware active
0xc0000000/0x40000000 BIOS uncacheable set-by-firmware active


More information about the freebsd-stable mailing list