Announcement

Collapse
No announcement yet.

Scratching my head: AGP HD3650 2D performance

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Scratching my head: AGP HD3650 2D performance

    Hi all. I recently replaced my machine's AGP nVidia Quadro FX 1000 with a Sapphire HD3650 (R600 I think?) and I was surprised and disappointed that 2D performance has decreased noticeably. I'm using the open source 'radeon' driver.

    What do I mean by lower performance in 2D? I don't have any specific benchmarks but switching between virtual desktops results in a noticeable redraw delay. Even moving one xterm window over another one causes noticeable redraw. Move the window fast enough and you can see multiple redraws of the underlying window.

    I do not see this sort of lag with the nVidia card. With the nvidia card and with the 'radeon' driver, I'm not specifying an xorg.conf file. I did try the 'radeonhd' driver and had to specify an xorg.conf file for that one but it turns out the display was badly corrupt unless I specified 'no' to DRI. With that, the 'radeonhd' felt slower than 'radeon'.

    Anyway, I'm surprised that performance is noticeably slower than the old nVidia card that it replaced. The Quadro FX 1000 is based on nVidia's old GeForce FX5800 series. It runs DDR-2 memory at 300mhz @ 128bit. The HD3650 runs DDR-2 memory at 333mhz or 400mhz @ 128bit so memory bandwidth should be similar or better.

    I'm pretty sure Compiz is disabled so I should be running a vanilla 2D display.

    Running Fedora 12
    Xorg 1.7.6
    (the radeonhd driver that I tried was 1.3.0-5.4.20100210git.fc12 from the xorg site)

    Any clues to the cause of the 2D slowness?

    I'm tempted to simply replace the fan of my nVidia card and go back to using it.

  • #2
    It's unlikely anyone would be able to help without seeing the /var/log/Xorg.0.log file.

    Adam

    Comment


    • #3
      You'll get much better console switching performance if you use a kernel modesetting (KMS) stack.

      F13 includes this out of the box, so it might be easier to move to F13 than to try to bring the F13 driver stack back to F12.

      That said, sounds like you may be seeing worse than normal performance on F12 so logs etc... would be good.
      Test signature

      Comment


      • #4
        Agreed.

        You need to make sure that DRI is initialised correctly. If it isn't, it will be very slow. 2D should be blazing fast on your hardware.

        Are you sure you're using all the necessary microcode?

        Comment


        • #5
          Originally posted by adamk View Post
          It's unlikely anyone would be able to help without seeing the /var/log/Xorg.0.log file.

          Adam
          Apologies. I should have posted the corresponding logs...

          Here is the Xorg.0.log when using the 'radeon' driver with default settings (no xorg.conf) :

          Code:
          X.Org X Server 1.7.6
          Release Date: 2010-03-17
          X Protocol Version 11, Revision 0
          Build Operating System: x86-02 2.6.18-164.6.1.el5 
          Current Operating System: Linux kaon 2.6.32.11-99.fc12.i686.PAE #1 SMP Mon Apr 5 16:15:03 EDT 2010 i686
          Kernel command line: ro root=/dev/mapper/vg_kaon-lv_root  LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYBOARDTYPE=pc KEYTABLE=us rhgb quiet rdblacklist=nouveau
          Build Date: 14 April 2010  11:36:43AM
          Build ID: xorg-x11-server 1.7.6-3.fc12 
          Current version of pixman: 0.16.6
          	Before reporting problems, check http://bodhi.fedoraproject.org/
          	to make sure that you have the latest version.
          Markers: (--) probed, (**) from config file, (==) default setting,
          	(++) from command line, (!!) notice, (II) informational,
          	(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
          (==) Log file: "/var/log/Xorg.0.log", Time: Mon Apr 26 11:19:42 2010
          (II) Loader magic: 0x821c900
          (II) Module ABI versions:
          	X.Org ANSI C Emulation: 0.4
          	X.Org Video Driver: 6.0
          	X.Org XInput driver : 7.0
          	X.Org Server Extension : 2.0
          (++) using VT number 1
          
          (--) PCI:*(0:1:0:0) 1002:9598:1002:9598 ATI Technologies Inc Mobility Radeon HD 3600 Series rev 0, Mem @ 0xe0000000/268435456, 0xf9000000/65536, I/O @ 0x00008000/256, BIOS @ 0x????????/131072
          (==) Using default built-in configuration (30 lines)
          (==) --- Start of built-in configuration ---
          	Section "Device"
          		Identifier	"Builtin Default ati Device 0"
          		Driver	"ati"
          	EndSection
          	Section "Screen"
          		Identifier	"Builtin Default ati Screen 0"
          		Device	"Builtin Default ati Device 0"
          	EndSection
          	Section "Device"
          		Identifier	"Builtin Default vesa Device 0"
          		Driver	"vesa"
          	EndSection
          	Section "Screen"
          		Identifier	"Builtin Default vesa Screen 0"
          		Device	"Builtin Default vesa Device 0"
          	EndSection
          	Section "Device"
          		Identifier	"Builtin Default fbdev Device 0"
          		Driver	"fbdev"
          	EndSection
          	Section "Screen"
          		Identifier	"Builtin Default fbdev Screen 0"
          		Device	"Builtin Default fbdev Device 0"
          	EndSection
          	Section "ServerLayout"
          		Identifier	"Builtin Default Layout"
          		Screen	"Builtin Default ati Screen 0"
          		Screen	"Builtin Default vesa Screen 0"
          		Screen	"Builtin Default fbdev Screen 0"
          	EndSection
          (==) --- End of built-in configuration ---
          (==) ServerLayout "Builtin Default Layout"
          (**) |-->Screen "Builtin Default ati Screen 0" (0)
          (**) |   |-->Monitor "<default monitor>"
          (**) |   |-->Device "Builtin Default ati Device 0"
          (==) No monitor specified for screen "Builtin Default ati Screen 0".
          	Using a default monitor configuration.
          (**) |-->Screen "Builtin Default vesa Screen 0" (1)
          (**) |   |-->Monitor "<default monitor>"
          (**) |   |-->Device "Builtin Default vesa Device 0"
          (==) No monitor specified for screen "Builtin Default vesa Screen 0".
          	Using a default monitor configuration.
          (**) |-->Screen "Builtin Default fbdev Screen 0" (2)
          (**) |   |-->Monitor "<default monitor>"
          (**) |   |-->Device "Builtin Default fbdev Device 0"
          (==) No monitor specified for screen "Builtin Default fbdev Screen 0".
          	Using a default monitor configuration.
          (==) Automatically adding devices
          (==) Automatically enabling devices
          (==) FontPath set to:
          	catalogue:/etc/X11/fontpath.d,
          	built-ins
          (==) ModulePath set to "/usr/lib/xorg/modules"
          (II) Cannot locate a core pointer device.
          (II) Cannot locate a core keyboard device.
          (II) The server relies on HAL to provide the list of input devices.
          	If no devices become available, reconfigure HAL or disable AutoAddDevices.
          (II) LoadModule: "extmod"
          (II) Loading /usr/lib/xorg/modules/extensions/libextmod.so
          (II) Module extmod: vendor="X.Org Foundation"
          	compiled for 1.7.6, module version = 1.0.0
          	Module class: X.Org Server Extension
          	ABI class: X.Org Server Extension, version 2.0
          (II) Loading extension SELinux
          (II) Loading extension MIT-SCREEN-SAVER
          (II) Loading extension XFree86-VidModeExtension
          (II) Loading extension XFree86-DGA
          (II) Loading extension DPMS
          (II) Loading extension XVideo
          (II) Loading extension XVideo-MotionCompensation
          (II) Loading extension X-Resource
          (II) LoadModule: "dbe"
          (II) Loading /usr/lib/xorg/modules/extensions/libdbe.so
          (II) Module dbe: vendor="X.Org Foundation"
          	compiled for 1.7.6, module version = 1.0.0
          	Module class: X.Org Server Extension
          	ABI class: X.Org Server Extension, version 2.0
          (II) Loading extension DOUBLE-BUFFER
          (II) LoadModule: "glx"
          (II) Loading /usr/lib/xorg/modules/extensions/libglx.so
          (II) Module glx: vendor="X.Org Foundation"
          	compiled for 1.7.6, module version = 1.0.0
          	ABI class: X.Org Server Extension, version 2.0
          (==) AIGLX enabled
          (II) Loading extension GLX
          (II) LoadModule: "record"
          (II) Loading /usr/lib/xorg/modules/extensions/librecord.so
          (II) Module record: vendor="X.Org Foundation"
          	compiled for 1.7.6, module version = 1.13.0
          	Module class: X.Org Server Extension
          	ABI class: X.Org Server Extension, version 2.0
          (II) Loading extension RECORD
          (II) LoadModule: "dri"
          (II) Loading /usr/lib/xorg/modules/extensions/libdri.so
          (II) Module dri: vendor="X.Org Foundation"
          	compiled for 1.7.6, module version = 1.0.0
          	ABI class: X.Org Server Extension, version 2.0
          (II) Loading extension XFree86-DRI
          (II) LoadModule: "dri2"
          (II) Loading /usr/lib/xorg/modules/extensions/libdri2.so
          (II) Module dri2: vendor="X.Org Foundation"
          	compiled for 1.7.6, module version = 1.1.0
          	ABI class: X.Org Server Extension, version 2.0
          (II) Loading extension DRI2
          (II) LoadModule: "ati"
          (II) Loading /usr/lib/xorg/modules/drivers/ati_drv.so
          (II) Module ati: vendor="X.Org Foundation"
          	compiled for 1.7.4, module version = 6.12.99
          	Module class: X.Org Video Driver
          	ABI class: X.Org Video Driver, version 6.0
          (II) LoadModule: "radeon"
          (II) Loading /usr/lib/xorg/modules/drivers/radeon_drv.so
          (II) Module radeon: vendor="X.Org Foundation"
          	compiled for 1.7.4, module version = 6.12.99
          	Module class: X.Org Video Driver
          	ABI class: X.Org Video Driver, version 6.0
          (II) LoadModule: "vesa"
          (II) Loading /usr/lib/xorg/modules/drivers/vesa_drv.so
          (II) Module vesa: vendor="X.Org Foundation"
          	compiled for 1.7.1, module version = 2.3.0
          	Module class: X.Org Video Driver
          	ABI class: X.Org Video Driver, version 6.0
          (II) LoadModule: "fbdev"
          (II) Loading /usr/lib/xorg/modules/drivers/fbdev_drv.so
          (II) Module fbdev: vendor="X.Org Foundation"
          	compiled for 1.6.99.1, module version = 0.4.1
          	ABI class: X.Org Video Driver, version 6.0
          *** deleted long list of ATI hardware supported ***
          (II) VESA: driver for VESA chipsets: vesa
          (II) FBDEV: driver for framebuffer: fbdev
          (II) Primary Device is: PCI 01@00:00:0
          (II) [KMS] Kernel modesetting enabled.
          (WW) Falling back to old probe method for vesa
          (WW) Falling back to old probe method for fbdev
          (II) Loading sub module "fbdevhw"
          (II) LoadModule: "fbdevhw"
          (II) Loading /usr/lib/xorg/modules/linux/libfbdevhw.so
          (II) Module fbdevhw: vendor="X.Org Foundation"
          	compiled for 1.7.6, module version = 0.0.2
          	ABI class: X.Org Video Driver, version 6.0
          (II) RADEON(0): Creating default Display subsection in Screen section
          	"Builtin Default ati Screen 0" for depth/fbbpp 24/32
          (==) RADEON(0): Depth 24, (--) framebuffer bpp 32
          (II) RADEON(0): Pixel depth = 24 bits stored in 4 bytes (32 bpp pixmaps)
          (==) RADEON(0): Default visual is TrueColor
          (==) RADEON(0): RGB weight 888
          (II) RADEON(0): Using 8 bits per RGB (8 bit DAC)
          (--) RADEON(0): Chipset: "ATI Radeon HD 3600 XT" (ChipID = 0x9598)
          (II) RADEON(0): AGP card detected
          (WW) RADEON(0): Color tiling is not yet supported on R600/R700
          (II) RADEON(0): KMS Color Tiling: disabled
          drmOpenDevice: node name is /dev/dri/card0
          drmOpenDevice: open result is 9, (OK)
          drmOpenDevice: node name is /dev/dri/card0
          drmOpenDevice: open result is 9, (OK)
          drmOpenByBusid: Searching for BusID pci:0000:01:00.0
          drmOpenDevice: node name is /dev/dri/card0
          drmOpenDevice: open result is 9, (OK)
          drmOpenByBusid: drmOpenMinor returns 9
          drmOpenByBusid: drmGetBusid reports pci:0000:01:00.0
          (II) [drm] DRM interface version 1.3
          (II) [drm] DRM open master succeeded.
          *** DELETED MONITOR EDID TIMING INFO ***
          (II) RADEON(0): Supported detailed timing:
          (II) RADEON(0): clock: 148.5 MHz   Image Size:  531 x 298 mm
          (II) RADEON(0): h_active: 1920  h_sync: 2008  h_sync_end 2052 h_blank_end 2200 h_border: 0
          (II) RADEON(0): v_active: 1080  v_sync: 1084  v_sync_end 1089 v_blanking: 1125 v_border: 0
          (II) RADEON(0): Output DVI-0 using initial mode 1920x1080 +0+0
          (II) RADEON(0): Using default gamma of (1.0, 1.0, 1.0) unless otherwise stated.
          (II) RADEON(0): mem size init: gart size :7dff000 vram size: s:10000000 visible:f7d7000
          (II) RADEON(0): EXA: Driver will allow EXA pixmaps in VRAM
          (**) RADEON(0): Display dimensions: (530, 300) mm
          (**) RADEON(0): DPI set to (92, 91)
          (II) Loading sub module "fb"
          (II) LoadModule: "fb"
          (II) Loading /usr/lib/xorg/modules/libfb.so
          (II) Module fb: vendor="X.Org Foundation"
          	compiled for 1.7.6, module version = 1.0.0
          	ABI class: X.Org ANSI C Emulation, version 0.4
          (II) Loading sub module "ramdac"
          (II) LoadModule: "ramdac"
          (II) Module "ramdac" already built-in
          (II) Loading sub module "exa"
          (II) LoadModule: "exa"
          (II) Loading /usr/lib/xorg/modules/libexa.so
          (II) Module exa: vendor="X.Org Foundation"
          	compiled for 1.7.6, module version = 2.5.0
          	ABI class: X.Org Video Driver, version 6.0
          (II) UnloadModule: "vesa"
          (II) Unloading /usr/lib/xorg/modules/drivers/vesa_drv.so
          (II) UnloadModule: "fbdev"
          (II) Unloading /usr/lib/xorg/modules/drivers/fbdev_drv.so
          (II) UnloadModule: "fbdevhw"
          (II) Unloading /usr/lib/xorg/modules/linux/libfbdevhw.so
          (--) Depth 24 pixmap format is 32 bpp
          (II) RADEON(0): [DRI2] Setup complete
          (II) RADEON(0): Front buffer size: 8704K
          (II) RADEON(0): VRAM usage limit set to 220575K
          (==) RADEON(0): Backing store disabled
          (II) RADEON(0): Direct rendering enabled
          (II) RADEON(0): Setting EXA maxPitchBytes
          (II) EXA(0): Driver allocated offscreen pixmaps
          (II) EXA(0): Driver registered support for the following operations:
          (II)         Solid
          (II)         Copy
          (II)         Composite (RENDER acceleration)
          (II)         UploadToScreen
          (II)         DownloadFromScreen
          (II) RADEON(0): Acceleration enabled
          (==) RADEON(0): DPMS enabled
          (==) RADEON(0): Silken mouse enabled
          (II) RADEON(0): Set up textured video
          (II) RADEON(0): RandR 1.2 enabled, ignore the following RandR disabled message.
          (--) RandR disabled
          (II) Initializing built-in extension Generic Event Extension
          (II) Initializing built-in extension SHAPE
          (II) Initializing built-in extension MIT-SHM
          (II) Initializing built-in extension XInputExtension
          (II) Initializing built-in extension XTEST
          (II) Initializing built-in extension BIG-REQUESTS
          (II) Initializing built-in extension SYNC
          (II) Initializing built-in extension XKEYBOARD
          (II) Initializing built-in extension XC-MISC
          (II) Initializing built-in extension XINERAMA
          (II) Initializing built-in extension XFIXES
          (II) Initializing built-in extension RENDER
          (II) Initializing built-in extension RANDR
          (II) Initializing built-in extension COMPOSITE
          (II) Initializing built-in extension DAMAGE
          SELinux: Disabled on system, not enabling in X server
          (EE) AIGLX error: dlopen of /usr/lib/dri/r600_dri.so failed (/usr/lib/dri/r600_dri.so: cannot open shared object file: No such file or directory)
          (EE) AIGLX: reverting to software rendering
          (II) AIGLX: Screen 0 is not DRI capable
          (II) AIGLX: Loaded and initialized /usr/lib/dri/swrast_dri.so
          (II) GLX: Initialized DRISWRAST GL provider for screen 0
          (II) RADEON(0): Setting screen physical size to 507 x 285
          (II) config/hal: Adding input device AT Translated Set 2 keyboard
          (II) LoadModule: "evdev"
          (II) Loading /usr/lib/xorg/modules/input/evdev_drv.so
          (II) Module evdev: vendor="X.Org Foundation"
          	compiled for 1.7.1, module version = 2.3.2
          	Module class: X.Org XInput Driver
          	ABI class: X.Org XInput driver, version 7.0
          (**) AT Translated Set 2 keyboard: always reports core events
          (**) AT Translated Set 2 keyboard: Device: "/dev/input/event3"
          (II) AT Translated Set 2 keyboard: Found keys
          (II) AT Translated Set 2 keyboard: Configuring as keyboard
          (II) XINPUT: Adding extended input device "AT Translated Set 2 keyboard" (type: KEYBOARD)
          (**) Option "xkb_rules" "evdev"
          (**) Option "xkb_model" "pc105+inet"
          (**) Option "xkb_layout" "us"
          (**) Option "xkb_options" "terminate:ctrl_alt_bksp"
          (II) config/hal: Adding input device Macintosh mouse button emulation
          *** DELETED MULTIPLE ADDITIONAL COPIES OF MONITOR EDID INFO ***

          Comment


          • #6
            Originally posted by pingufunkybeat View Post
            Agreed.

            You need to make sure that DRI is initialised correctly. If it isn't, it will be very slow. 2D should be blazing fast on your hardware.

            Are you sure you're using all the necessary microcode?
            Actually, I'm not sure of anything. I'm still very much an ATI newbie.

            I haven't made any changes to any config files with regards to microcode so if it's downloading microcode, it's because F12 set it up when I installed it last week. Where should I look?

            Jimmie

            Comment


            • #7
              Can't copy the log for some reason.

              Anyway, the DRI is not initialise, so I assume that you're not getting any acceleration whatsoever.

              It's missing /usr/lib/dri/r600_dri.so, which should not happen.

              Can you tell us which versions of the following packages you have installed:

              kernel
              libdrm
              mesa
              xf86-video-ati (or whatever package contains the "radeon" driver)

              I'm not sure what's in F12, but it's likely not the latest and greatest. r600 support has really improved leaps and bounds in the last year, and if you're not using recent packages, you are missing on most of it.

              Comment


              • #8
                It looked to me as if the drm was being initialized, so there should be some 2D acceleration, but 3D is using the software rasterizer which will be really slow.

                F12 shipped while open source r6xx development was still fairly early, so updating to a newer stack (or just jumping to F13) would be a Good Thing.
                Test signature

                Comment


                • #9
                  Originally posted by pingufunkybeat View Post
                  Can't copy the log for some reason.

                  Anyway, the DRI is not initialise, so I assume that you're not getting any acceleration whatsoever.

                  It's missing /usr/lib/dri/r600_dri.so, which should not happen.

                  Can you tell us which versions of the following packages you have installed:

                  kernel
                  libdrm
                  mesa
                  xf86-video-ati (or whatever package contains the "radeon" driver)

                  I'm not sure what's in F12, but it's likely not the latest and greatest. r600 support has really improved leaps and bounds in the last year, and if you're not using recent packages, you are missing on most of it.

                  I thought that the r600_dri.so missing error was expected since 3D wasn't supported on the r600 yet (I seem to recall reading that somewhere on the X.org wiki)...

                  Anyway, here are the currently installed versions of the stuff you asked about:

                  kernel-PAE-2.6.32.11-99.fc12.i686

                  libdrm-2.4.18-2.fc12.i686

                  mesa-dri-drivers-7.7-4.fc12.i686
                  mesa-libGL-7.7-4.fc12.i686
                  mesa-libGLU-7.7-4.fc12.i686

                  xorg-x11-drv-ati-6.13.0-0.21.20100219gite68d3a389.fc12.i686
                  xorg-x11-drv-ati-firmware-6.13.0-0.21.20100219gite68d3a389.fc12.i686

                  Comment


                  • #10
                    Iirc r600 3D support requires mesa-dri-drivers-experimental on F12, moves to mesa-dri-drivers in F13. Looks to me though that EXA starts so 2D accel should be there.

                    Comment

                    Working...
                    X