No announcement yet.

Is there anyway to improve the performance of the open drivers?

  • Filter
  • Time
  • Show
Clear All
new posts

  • Is there anyway to improve the performance of the open drivers?

    I'm trying to play some Steam source stuff (Half Life 2: Lost Coast, Half Life 2: Deathmatch, Team Fortress 2) on Ubuntu 12.04 LTS, but the performance sucks. I'm using a Sapphire Radeon 2400 XT 256Mb GDDR3, with 4Gb RAM, and a AMD Athlon 64 X2. On Windows 7 x64 with maxed settings and 4AA/16AF I get about 20-40fps. On Ubuntu 12.04 LTS 32bit I get about 5-10 with 0AA/0AF.
    Is there anyway to improve the performance? Even lowering the settings to minimum doesn't change the fps much. I've also tried the xorg-edgers PPA but that didn't improve the perfomance at all.

    I also know that I can install the fglrx driver but I've had nothing but problems with that before, so I would much rather use the open drivers.

  • #2
    I dont' know if anyone has tested Vadim's shader backend on a 2400 but it might be interesting to try.

    The 2400/3200/3450/4200 have always had relatively poorer performance with the open drivers than with Catalyst -- I was about to say "and I'm not sure if we know why" when it occurred to me that those parts also have shader cores which are "more weak relative to the other blocks on the chip" and so it's *possible* that making the compiled shader code more efficient would have an even bigger difference on performance than it does with larger chips.

    AFAIK you need latest mesa from git and to set an environment variable : R600_DEBUG=sb.

    It's also possible that the slowdown is more related to the limited memory bandwidth. I'm not sure if the kernel driver in 12.04 LTS is new enough to let you enable the most recent tiling features (which should help on a bandwidth-limited card)... have you tried them already ? Not sure of current state of hyper-z on your card, hopefully someone can comment.
    Last edited by bridgman; 05-26-2013, 12:01 AM.


    • #3
      The latest graphics components are running much faster as of these last few months, but I don't know enough about Ubuntu to say how to make the newest components work with 12.04. Maybe someone else with Ubuntu experience can help?

      EDIT: This may be inappropriate for this thread, but this is one specific area that rolling release distro's are better. Updating to the latest components of something is a lot easier in distro's like Arch or Gentoo.
      Last edited by duby229; 05-26-2013, 10:40 AM.


      • #4
        Yes upgrading to 13.04 is worth a shot, and then installing the newest git version of Mesa on Ubuntu is as simple as:
        sudo apt-add-repository ppa:xorg-edgers/ppa
        If you're on KDE you can enable the optimizations by adding a KDE-wide environment variable with a script in ~/.kde/env such as:
        export R600_DEBUG=sb
        that is run at startup, and if not there's probably a similar way with Gnome/Unity.


        • #5
          You probably need latest kernel and ofc lastest MESA from git.
          Those you can build as packages for your own convenience.

          You don't need to upgrade, but Ubuntu is KNOWN to have crappy Xorg build, that magically have slow performance. See *this thread*, you can use Google Translate, although the pictures are clearly self-explaining.

          I recommend you to read through this thread.

          To measure performance, use something like Xonotic. For WINE, you will have to experiment a bit too.