Autarchy of the Private Cave

Tiny bits of bioinformatics, [web-]programming etc

    Intel i915 integrated graphics under Debian: how to get rid of sluggish 2D performance

    2nd March 2009

    I assume you already have configured and working desktop environment, but want to improve performance.

    First of all, sudo aptitude install mesa-utils. Then run in a Terminal/Konsole glxgears, and wait for ~15 seconds; if your FPS is ~400 or less, then you do have sluggish video performance (usually manifesting itself as slow scrolling in Firefox/Iceweasel, slow window switching/minimziing/maximizing etc).

    After reading through several forums and bug reports and blog posts, I’ve ended with the following modifications to my /etc/X11/xorg.conf:

    1. backup your current xorg.conf: sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf.before-exa
    2. open your /etc/X11/xorg.conf with a favourite editor; I’ve added these lines to section “module”:

      Load “dbe”
      Load “xtrap”
      Load “record”
      Load “GLcore”

      These are not really performance-related and could be skipped; I’m giving them here, because they were suggested as default entries by dexconf or some other xorg.conf-generator utility. Again – they are not supposed to improve performance, so you can skip these.

    3. my “Device” section is now:

      Section “Device”
      Identifier “Intel Corporation 82915G/GV/910GL Integrated Graphics Controller”
      BoardName “82915G/GV/910GL Integrated Graphics Controller”
      Vendorname “Intel Corporation”
      #Driver “i810″
      Driver “intel”
      BusID “PCI:0:2:0″
      Option “DRI” “true”
      Option “AccelMethod” “exa”
      Option “MigrationHeuristic” “greedy”
      Option “ExaNoComposite” “false”
      EndSection

      Driver i810 (xserver-xorg-video-i810 package) was about 10-20 FPS slower than Driver intel (xserver-xorg-video-intel package) for me. The most important lines here are Option AccelMethod exa (which enables EXA acceleration instead of the older XAA; if you run 2.6.28 or later kernel, you can try UXA instead of EXA) and Option MigrationHeuristic greedy. Option ExaNoComposite false doesn’t make a difference for me, and Option DRI true might be redundant (didn’t bother trying to remove it).

    4. at the end of xorg.conf I have two more sections:

      Section “DRI”
      Mode 0666
      EndSection

      Section “Extensions”
      Option “Composite” “enable”
      Option “MIT-SHM” “Yes”
      EndSection

    5. sudo nano /etc/environment, and add one line: INTEL_BATCH=1 (if you have graphics stability issues or screen corruption – try removing this change first)
    6. you can test if your xorg.conf is syntactically correct by running X -config /etc/X11/xorg.conf (provided that you edited this exact file)

    This is it. Before these modifications, my FPS in glxgears was around 430; after these modifications it is ~915.

    As time permits, I might try the XAA configuration, suggested at foolcontrol.

    Update: with compiz enabled, XAA configuration recommended at foolcontrol is definitely faster in 2D.

    Improvements, suggestions, corrections are welcome.

    Share

    5 Responses to “Intel i915 integrated graphics under Debian: how to get rid of sluggish 2D performance”

    1. joe Says:

      Thanks for the article and the suggestions. I did play with the same settings and increased the fps to 1370 by using one of the methods for fixing MTRR. See my post bellow for more details.

      note by blog owner: the page linked to is a forum with restricted access, and requires forum registration to view content
      http://www.pclinuxos.com/index.php?option=com_smf&Itemid=58&topic=58215.0

      Hope that helps,
      GregPCLOS

    2. geo909 Says:

      Hi,

      thanks for posting that! I was wondering if this applies to my situation (I run debian
      and i have issues with my performance). My graphics is an Intel Graphics Media Accelerator
      X3100. Does that belong to the i915 family?

      Thanks in advance..

    3. Bogdan Says:

      I think it doesn’t belong to the “i915″ family, but is similar (because of being Intel integrated video solution). I’m sure you could google for X3100-specific advice. Or, at the very least, try various options from this post one-by-one, measuring performance somehow after each change.
      Please write back what you achieve.

    4. Ozy Says:

      Hi,

      I have the same problem and found FPS 250. tried to amend the xorg.conf but didn’t find it under /etc/Xll. Tried to generate another one but joy. Could you please advise. running debian squeeze

    5. Bogdan Says:

      To the best of my knowledge, X.org is targeting for a xorg.conf-less operations – this is why xorg.conf may actually be absent from recent Debian systems. To be sure, run `locate xorg.conf`.

      If that shows no results – just create a new xorg.conf file under /etc/X11/ (this is where it has to be put). There used to be some packages which generated “skeleton” xorg.conf files – e.g. ‘dexconf’, but they seem to be discontinued.

      Looks like your only option is just writing a new xorg.conf. Below is mine (from a home computer, so it has entries for ATI card); it was mostly written manually, and it does work fine. Hopefully, this will give you a place to start.

      # xorg.conf (X.Org X Window System server configuration file)
      #
      # Edit this file with caution, and see the xorg.conf manual page.
      # (Type "man xorg.conf" at the shell prompt.)
      #
      # This file is automatically updated on xserver-xorg package upgrades *only*
      # if it has not been modified since the last upgrade of the xserver-xorg
      # package.
      #
      # If you have edited this file but would like it to be automatically updated
      # again, run the following command:
      #   sudo dpkg-reconfigure -phigh xserver-xorg
      Section "InputDevice"
              Identifier      "Millenium"
              Driver          "kbd"
      EndSection
      Section "InputDevice"
              Identifier      "X6-60D"
              Driver          "mouse"
      EndSection
      Section "Device"
              Identifier      "ATI Technologies Inc Radeon HD 3300 Graphics"
              BusID "PCI:1:5:0"
              Driver "fglrx"
              #Driver "radeonhd"
              #Option "DRI" "on"
              #Option "UseConfiguredMonitor" "on"
              ##Screen 0
      EndSection
      Section "Monitor"
              Identifier      "SyncMaster913N"
              Option "DPMS" "on"
              Option "PreferredMode" "1280x1024"
              # 1280x1024 @ 60.00 Hz (GTF) hsync: 63.60 kHz; pclk: 108.88 MHz
              Modeline "1280x1024"  108.88  1280 1360 1496 1712  1024 1025 1028 1060  -HSync +Vsync
      EndSection
      Section "Screen"
              Identifier      "Default Screen"
              Device  "ATI Technologies Inc Radeon HD 3300 Graphics"
              Monitor "SyncMaster913N"
              DefaultDepth 24
              #Option "Accel" "on"
              SubSection "Display"
                      Depth 24
                      Modes "1280x1024" "1152x864" "1024x768" "800x600" "640x480"
              EndSubSection
      #       SubSection "Display"
      #               Depth 16
      #               Modes "1280x1024" "1152x864" "1024x768" "800x600" "640x480"
      #       EndSubSection
      EndSection
      Section "DRI"
              Mode 0666
      EndSection
      

    Leave a Reply

    XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>