PDA

View Full Version : Optimal setup for XPRESS cards? (xpress 200m 5955)


Dustan
03-29-2008, 11:37 PM
This post has been edited to represent progress as of 4-2-08

Hello, I am seeking the advice and guidance of individuals who have experience with the ATI xpress 200m or other relevant xpress cards. My goals are to obtain optimal performance from my card as well as develop this thread into a resource other inexperienced users may use as a reference.

Who am I:
I am a beginner level Linux user. I've been using Linux exclusively for several months now and have just begun venturing out of the safe zone of my automatically configured hardware. Please try to keep this in mind when replying. Even if I do understand what you are saying I'd like to digest the information gathered here into a guide that a day 1 user could not only use but learn from.




System info:
Laptop HP Pavilion dv8000 (dv8309us)
AMD Turion64 ML-34
1024MB 333MHz DDR
ATI RADEON XPRESS 200M IGP
17.0” WXGA+ (1440*900)
Fedora Core 8 x64
Kernel: 2.6.24.3-50.fc8

glxgears: ~1770fps
fglrxinfo: OK

lspci -vvnn

01:05.0 VGA compatible controller [0300]: ATI Technologies Inc Radeon XPRESS 200M 5955 (PCIE) [1002:5955] (prog-if 00 [VGA controller])
Subsystem: Hewlett-Packard Company Unknown device [103c:309b]
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 255 (2000ns min), Cache Line Size: 32 bytes
Interrupt: pin A routed to IRQ 17
Region 0: Memory at c0000000 (32-bit, prefetchable) [size=256M]
Region 1: I/O ports at 9000 [size=256]
Region 2: Memory at b0100000 (32-bit, non-prefetchable) [size=64K]
[virtual] Expansion ROM at b0120000 [disabled] [size=128K]
Capabilities: [50] Power Management version 2
Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
Status: D0 PME-Enable- DSel=0 DScale=0 PME-
Kernel driver in use: fglrx_pci
Kernel modules: radeonfb, fglrx



xorg.conf

Section "Files"
ModulePath "/usr/lib64/xorg/modules"
EndSection

Section "ServerFlags"
Option "AIGLX" "on"
EndSection

Section "Device"
Identifier "Videocard0"
Driver "fglrx"
Option "VideoOverlay" "off"
Option "OpenGLOverlay" "off"
Option "TexturedVideo" "on"
EndSection

Section "Screen"
Identifier "Screen0"
Device "Videocard0"
DefaultDepth 24
SubSection "Display"
Viewport 0 0
Depth 24
EndSubSection
EndSection

Section "DRI"
Mode 0666
EndSection

Section "Extensions"
Option "Composite" "Enable"
EndSection




Issues with the current setup:

http://img408.imageshack.us/img408/8146/dsc00909yx2ju2.th.jpg (http://img408.imageshack.us/my.php?image=dsc00909yx2ju2.jpg)


Strange video corruption on shutdown, the same symptoms occur occasionally when restarting x and switching users.The example resembles fedora theme colors but I have witnessed the same striping in the spanning entire spectrum. Very random, always vertical. No clue as to the cause and wondering if it may be harmful?


Poor or improperly configured use of shared video memory


Color gradients like those seen in the default fc8 wallpaper are not smooth. Defined color “steps” can be seen where smooth transitions should occur. These “steps” can be replicated by creating a gradient in gimp leading me to believe hardware “quality” settings may solve this.


Video playback is very choppy, but this may not be video card related as from hd and from dvd video is poor but testing with a streaming source (yahoo hd trailers) yielded better results. Playback did not suffer from the choppiness that dvd or mp4 did, but overall image quality suffered from a lack of crispness. Using dvd playback in xp as a reference, I'd rate the yahoo hd source 6 out of 10.



Questions Answered:

As of 03-31-08 Thanks to Leigh123
Is the fglrx driver the “best” driver for this card or am I better off seeking an alternative?

Fglrx is the best driver for your card !



As of 04-01-08 Thanks to many

I have been using glxgears for benchmarking, intuition tells me this tool lacks the scope to get the most out of any video card. What other video performance benchmarking tools are available?

fgl_glxgears /// Framegetter from anandtech (http://www.anandtech.com/linux/showdoc.aspx?i=2229&p=2) /// WOOT NEW Phroronix tools!!!



Questions Posed:

Modeline editing (I think thats what it's called... setting options in xorg). I've been trying options I've seen online, restarting X (ctl+alt+bs) and running glxgears looking for improvements.


Is a ctl+alt+bs all that is needed to observe results from all modeline edits or should I reboot each time?


How can I tell if a modeline edit is/was supported? Ive noticed after some changes I get errors in dmesg, and used these observations to determine if the modeline is supported by my card. Is this an acceptable or even logical practice? Note that I'm not just tossing random edits in there, but testing configurations by trial and error.


Has the release of documentation by amd/ati advanced the state of ati drivers for linux yet?

enzobelmont
04-03-2008, 12:59 PM
you should be happy..

mine is same chipset and check this:



localhost ~ # glxgears
3260 frames in 5.0 seconds = 651.845 FPS
3779 frames in 5.0 seconds = 755.627 FPS
3839 frames in 5.0 seconds = 767.794 FPS
3837 frames in 5.0 seconds = 767.146 FPS
3870 frames in 5.0 seconds = 766.500 FPS
3826 frames in 5.0 seconds = 765.136 FPS
3863 frames in 5.0 seconds = 772.522 FPS
3848 frames in 5.0 seconds = 769.395 FPS
3864 frames in 5.0 seconds = 772.722 FPS
3778 frames in 5.0 seconds = 755.570 FPS
3821 frames in 5.0 seconds = 764.148 FPS


only difference: mine is a sempron 3000+

Melcar
04-03-2008, 01:09 PM
I get about 1100fps in glxgears (5500 in 5sec). That's with a Sempron 3300+. Fglrx already comes pre-configured for optimal performance, so there is little else you could do. The chip can even run Nexuiz at low (I play AA 2008 and Tremolous on it all the time). I don't use Compiz since my laptop runs KDE, but the transparencies work fine (with some slow downs of course).

Dustan
04-03-2008, 09:23 PM
you should be happy..

mine is same chipset and check this:



localhost ~ # glxgears
3260 frames in 5.0 seconds = 651.845 FPS
3779 frames in 5.0 seconds = 755.627 FPS
3839 frames in 5.0 seconds = 767.794 FPS
3837 frames in 5.0 seconds = 767.146 FPS
3870 frames in 5.0 seconds = 766.500 FPS
3826 frames in 5.0 seconds = 765.136 FPS
3863 frames in 5.0 seconds = 772.522 FPS
3848 frames in 5.0 seconds = 769.395 FPS
3864 frames in 5.0 seconds = 772.722 FPS
3778 frames in 5.0 seconds = 755.570 FPS
3821 frames in 5.0 seconds = 764.148 FPS


only difference: mine is a sempron 3000+

Hmmm, whats your xorg look like?

Dustan
04-03-2008, 09:50 PM
Fglrx already comes pre-configured for optimal performance, so there is little else you could do.

I really think there is more that can be done with this card, not that I am at all displeased with it's performance. This is more of a learning project than a desire to run X app at X fps. I've recently done some testing that has resulted in some strange results, leading me to believe there is more to be squeezed from this card (see next post) Note when reading it that my intent to to test it with some better tools to validate my results.

Dustan
04-03-2008, 10:07 PM
this post is currently a work in progress and may be lacking in sense and complete information

This chip has 128mb onboard and up to 128 shared. I'll test it, but do you know if the shared memory is supported?


Testing the available video memory options:

Continuing down the path optimization, I decided to test the available gpu memory settings available in my laptops BIOS. Two primary options were available sideport (onboard) and sideport+uma (onboard+shared) with the latter of the two having sub-options (amount of shared). In total 5 configurations were available, listed below in descending order of expected performance.

128MB+128MB *
128MB+64MB *
128MB+32MB *
128MB+0MB *
128MB **

*onboard + shared
**shared disabled




The Results:

Fresh from boot and with no other apps running (ie automatic update etc) Here are the results from glxgears. The results represent the average # of fps over a two minute test recorded from two time separated, order reversed, testing sessions.



1762fps @ 128MB+128MB MAX 1774
1761fps @ 128MB+64MB MAX 1774
1762fps @ 128MB+32MB MAX 1773
1771fps @ 128MB+0MB MAX 1780
1642fps @ 128MB MAX 1663



From these results we can clearly see that enabling shared memory improves perforce by more that 100fps.

We can also see that "something" is not making effective use of the added resources, supported by the +10fps spike @ 128MB+0.I understand this is a very very slight gain, but quite important when viewed in context to the other data.I'm not knowledgeable enough to pinpoint the issue. (driver / xorg / mode lines) The only guess I have is some sort of misconfiguration somewhere because this data is counterintuitive.

If anyone is aware of a cause for something like this let me know. I plan to retest the results adding a fgl_glxgears benchmark and poke around a bit in my xorg.conf. I may try to test with framegetter as well. I'll finish this edit with some questions.

Doubling ram (albeit shared memory) resulting in less than a 10% gain in performance seems low. What kind of performance gain can be expected in a situation where there is a doubling of available ram to the gpu?

What tools might be used to narrow down the causes for the lack of incremental improvement when incrementally adding memory?

Anything obvious that I'm missing here? :)


**I am currently testing with some other more functional tools and will update when the testing is complete.**

Melcar
04-03-2008, 10:22 PM
You're better off running the phoronix test suite; glxgears doesn't tell you much. And you would probably get a bit better video playback an overall 2D rendering using VideoOverlay instead of TexturedVideo for this particular chip.

enzobelmont
04-04-2008, 01:24 AM
Hmmm, whats your xorg look like?

i've copied yours!

my xorg.conf is very "complete".

replaced with my own and same result.
cat /etc/X11/xorg.conf
Section "ServerLayout"
Identifier "Main Layout"
Screen 0 "Screen 1" 0 0
InputDevice "Mouse1" "CorePointer"
InputDevice "Synaptics1" "SendCoreEvents"
InputDevice "Keyboard1" "CoreKeyboard"
EndSection

Section "Files"

#FontPath "/usr/share/fonts/local/"
FontPath "/usr/share/fonts/misc"
FontPath "/usr/share/fonts/Type1"
FontPath "/usr/share/fonts/TTF"
FontPath "/usr/share/fonts/75dpi"
FontPath "/usr/share/fonts/100dpi"
FontPath "/usr/share/fonts/corefonts"
FontPath "/usr/local/share/fonts"
EndSection

Section "Module"
Load "dbe"
Load "i2c"
Load "glx"
Load "ddc"
Load "type1"
Load "freetype"
Load "extmod"
Load "synaptics"
Load "vbe"
Load "dri"
# Load "drm"
EndSection

Section "ServerFlags"
Option "AllowMouseOpenFail" "true"
Option "AIGLX" "true"
Option "IgnoreABI" "on"
EndSection

Section "InputDevice"
Identifier "Synaptics1"
Driver "synaptics"
Option "SendCoreEvents" "true"
Option "Device" "/dev/psaux"
Option "Protocol" "auto-dev"
Option "HorizScrollDelta" "0"
Option "SHMConfig" "on"
EndSection

Section "InputDevice"
Identifier "Keyboard1"
Driver "kbd"
Option "AutoRepeat" "500 5"
Option "XkbModel" "presario"
Option "XkbLayout" "latam"
Option "XkbRules" "xorg"
Option "XkbOptions" "lv3:rwin_switch"
EndSection

Section "InputDevice"
Identifier "Mouse1"
Driver "mouse"
Option "Device" "/dev/psaux"
Option "Protocol" "ImPS/2"
Option "ZAxisMapping" "4 5"
EndSection

Section "Monitor"
Identifier "Generic Monitor"
HorizSync 28.0 - 80.0
VertRefresh 43.0 - 60.0
DisplaySize 313 181
EndSection

Section "Device"

# Option "GammaCorrectionII" "0x00000000"
# Option "VRefresh2" "unspecified"
# Option "CenterMode" "off"
# Option "HSync2" "unspecified"
# Option "TVHStartAdj" "0"
# Option "no_dri" "no"
# Option "GammaCorrectionI" "0x00000000"
# Option "UseInternalAGPGART" "no"
# Option "BlockSignalsOnLock" "on"
# Option "MonitorLayout" "AUTO, AUTO"
# Option "UseFastTLS" "0"
# Option "no_accel" "no"
# Option "Capabilities" "0x00000000"
# Option "TVColorAdj" "0"
# Option "TVVPosAdj" "0"
# Option "TVStandard" "NTSC-M"
# Option "TVHPosAdj" "0"
# Option "TVHSizeAdj" "0"
# Option "Stereo" "off"
# Option "ScreenOverlap" "0"
# Option "TVVSizeAdj" "0"
# Option "AGPMode" "4"
# Option "AGPFastWrite" "yes"
# Option "EnablePageFlip" "on"
# Option "RenderAccel" "on"
Identifier "VESA"
Driver "fglrx"
Option "DPMS"
# Option "StereoSyncEnable" "1"
Option "VideoOverlay" "on"
# Option "ForceGenericCPU" "no"
Option "XAANoOffscreenPixmaps" "true"
Option "OpenGLOverlay" "off"
Option "TexturedVideo" "off"
# Option "DesktopSetup" "0x00000000"
Option "AGPFastWrite" "on"
# Option "EnablePageFlip" "on"
Option "AccelMethod" "EXA"
# Option "BIOSHotkeys" "on"
Option "Centermode" "on"
EndSection

Section "Screen"
Identifier "Screen 1"
Device "VESA"
Monitor "Generic Monitor"
DefaultDepth 24
SubSection "Display"
Viewport 0 0
Depth 24
Modes "1280x768"
EndSubSection
EndSection

Section "DRI"
Mode 0666
EndSection

Section "Extensions"
Option "Composite" "Enable"
Option "DAMAGE" "true"
Option "RENDER" "true"
EndSection


i know it is a mess, but is working fine :D

sorry my english... :)