Linux nVIDIA Performance

Linux nVIDIA Performance

Discuss everything related to running Spring on your chosen distribution of Linux.

Moderator: Moderators

User avatar
LordMatt
Posts: 3393
Joined: 15 May 2005, 04:26

Linux nVIDIA Performance

Post by LordMatt »

I recently upgraded from a Athlon 64 4000+ with a 6800 Ultra with WinXP to a quad core conroe (2.4Ghz) and a 8800 GTS with Ubuntu Feisty 64-bit (edit nVIDIA driver version: 100.14.11). I thought my spring performance would improve, but it seems it's worse (particularly in the late game). I am running spring in its own xserver with the following xorg.conf (irrelevant parts removed):

Code: Select all

Section "ServerLayout"
    Identifier     "Default Layout"
    Screen      0  "Screen0" 0 0
EndSection

Section "Module"
    Load           "bitmap"
    Load           "ddc"
    Load           "dri"
    Load           "extmod"
    Load           "freetype"
    Load           "glx"
    Load           "int10"
    Load           "vbe"
EndSection

Section "ServerFlags"
    Option         "Xinerama" "0"
EndSection

Section "Monitor"
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "CRT-1"
    HorizSync       30.0 - 130.0
    VertRefresh     48.0 - 170.0
EndSection

Section "Monitor"
    Identifier     "Monitor1"
    VendorName     "Unknown"
    ModelName      "DELL P780"
    HorizSync       30.0 - 85.0
    VertRefresh     48.0 - 120.0
EndSection

Section "Device"
    Identifier     "GeForce 8800GTS"
    Driver         "nvidia"
    Option         "UseFBDev" "true"
    BusID          "PCI:1:0:0"
EndSection

Section "Device"
    Identifier     "Videocard0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce 8800 GTS"
    BusID          "PCI:1:0:0"
    Screen          0
EndSection

Section "Device"
    Identifier     "Videocard1"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce 8800 GTS"
    BusID          "PCI:1:0:0"
    Screen          1
EndSection

Section "Screen"
    Identifier     "Default Screen"
    Device         "GeForce 8800GTS"
    Monitor        "21 Inch"
    DefaultDepth    24
    SubSection     "Display"
        Depth       24
        Modes      "1920x1440" "1920x1200" "1856x1392" "1792x1344" "1680x1050" "1600x1200" "1440x900" "1400x1050" "1280x1024" "1280x960" "1280x854" "1280x800" "1280x768" "1200x800" "1152x864" "1152x768" "1024x768" "800x600" "640x480"
    EndSubSection
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Videocard0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "TwinView" "1"
    Option         "metamodes" "CRT-0: 1280x1024_75 +0+0, CRT-1: 1280x1024_85 +1280+0; CRT-0: 1280x1024_75 +1280+0, CRT-1: 1280x1024 +0+0; CRT-0: 320x175 +1280+0, CRT-1: 1280x960 +0+0; CRT-1: 1280x800 +0+0; CRT-1: 1280x768 +0+0; CRT-1: 1152x864 +0+0; CRT-1: 1152x768 +0+0; CRT-1: 1024x768 +0+0; CRT-1: 800x600 +0+0; CRT-1: 640x480 +0+0"
EndSection
And these spring settings:

Image

I also have a fair amount of lua running (e.g. IceUI, Idle Cons Widget, and HealthBar).

Any ideas about how I could increase my fps in the late game from 10-15 to 30+ without any noticeable difference in visual quality?
Last edited by LordMatt on 01 Sep 2007, 18:56, edited 1 time in total.
User avatar
iamacup
Posts: 987
Joined: 26 Jun 2006, 20:43

Post by iamacup »

because spring has trouble with good graphics cards, i get about 20 FPS with very similar settings on dual 8800's.
User avatar
Relative
Posts: 1371
Joined: 15 Oct 2006, 13:17

Post by Relative »

iamacup wrote:because spring has trouble with good graphics cards, i get about 20 FPS with very similar settings on dual 8800's.
Lies, I get 120 FPS with a 8600 GTS!!!
User avatar
BrainDamage
Lobby Developer
Posts: 1164
Joined: 25 Sep 2006, 13:56

Post by BrainDamage »

just a shoot in the dark, try to disable the vsync
User avatar
iamacup
Posts: 987
Joined: 26 Jun 2006, 20:43

Post by iamacup »

Relative wrote:
iamacup wrote:because spring has trouble with good graphics cards, i get about 20 FPS with very similar settings on dual 8800's.
Lies, I get 120 FPS with a 8600 GTS!!!
you have open gl support.
User avatar
Relative
Posts: 1371
Joined: 15 Oct 2006, 13:17

Post by Relative »

iamacup wrote:
Relative wrote:
iamacup wrote:because spring has trouble with good graphics cards, i get about 20 FPS with very similar settings on dual 8800's.
Lies, I get 120 FPS with a 8600 GTS!!!
you have open gl support.
Please explain how you don't have opengl support in linux?
User avatar
Neddie
Community Lead
Posts: 9406
Joined: 10 Apr 2006, 05:05

Post by Neddie »

I think he means that the 8600 has good OpenGL performance, and the 8800 for some reason does not.
User avatar
clericvash
Posts: 1394
Joined: 05 Oct 2004, 01:05

Post by clericvash »

That and the series 8 are the newest ones, series 7 seem to work fine from what i have heard.
User avatar
LordMatt
Posts: 3393
Joined: 15 May 2005, 04:26

Post by LordMatt »

Turning off vsync seems to have helped a little. Any more ideas?
User avatar
Relative
Posts: 1371
Joined: 15 Oct 2006, 13:17

Post by Relative »

This is my SpringRC:

Code: Select all

3DTrees=1
AdvSky=1
AdvUnitShading=1
BuildIconsFirst=0
CamFreeAngVelTime=1.0
CamFreeAutoTilt=150.0
CamFreeEnabled=0
CamFreeFOV=45.0
CamFreeGoForward=0
CamFreeGravity=-500.0
CamFreeGroundOffset=16.0
CamFreeInvertAlt=0
CamFreeScrollSpeed=500.0
CamFreeSlide=0.5
CamFreeTiltSpeed=150.0
CamFreeVelTime=1.5
CamMode=1
CamTimeExponent=4.0
CamTimeFactor=1.0
CatchAIExceptions=1
ColorElev=1
CubeTexSizeReflection=128
CubeTexSizeSpecular=128
DepthBufferBits=24
DoubleClickTime=200
DualScreenMiniMapOnLeft=1
DualScreenMode=0
DynamicSky=1
FPSEnabled=1
FPSFOV=45.0
FPSMouseScale=0.003
FPSScrollSpeed=10
FSAA=0
FSAALevel=0
FixAltTab=0
FontCharFirst=32
FontCharLast=223
FontFile=Luxi.ttf
Fullscreen=0
GrassDetail=10
GroundDecals=100
GroundDetail=120
HighResLos=1
InfoConsoleGeometry=0.26 0.96 0.41 0.205
InfoMessageTime=400
InputTextGeo=0.26 0.73 0.02 0.028
InvertMouse=1
InvertQueueKey=0
LODScale=1.000
LODScaleReflection=1.000
LODScaleRefraction=1.000
LODScaleShadow=1.000
LastListChoice0=Metal maker AI
LastListChoice1=Air combat test
LastListChoice2=Tabula-v2.smf
LastListChoice3=Balanced Annihilation V5.61
LuaAutoModWidgets=1
LuaGaia=1
LuaRules=1
LuaShaders=1
LuaUI=1
MapArchives=1
MaxParticles=20000
MaxSounds=35
MaximumTransmissionUnit=512
MetalMapPalette=0
MiniMapButtonSize=16
MiniMapCursorScale=-0.5
MiniMapDrawCommands=1
MiniMapFullProxy=1
MiniMapGeometry=2 2 200 200
MiniMapIcons=1
MiniMapMarker=1
MiniMapUnitExp=0.25
MiniMapUnitSize=2.5
MinimapOnLeft=1
NoHelperAIs=0
OverheadEnabled=1
OverheadFOV=45.0
OverheadScrollSpeed=10
OverheadTiltSpeed=1
ReflectiveWater=3
RotOverheadEnabled=1
RotOverheadFOV=45.0
RotOverheadMouseScale=0.003
RotOverheadScrollSpeed=10
SM3ForceFallbackTex=1
SM3MaxTextureStages=20
SMFTexAniso=0.0
ScrollWheelSpeed=25
ShadowMapSize=4096
Shadows=0
ShowClock=1
ShowFPS=1
ShowPlayerInfo=1
SimpleMiniMapColors=0
SmoothLines=1
SmoothPoints=1
SoundVolume=45
SpringData=
StdoutDebug=1
StencilBufferBits=1
TWEnabled=1
TWFOV=45.0
TWScrollSpeed=10
TeamNanoSpray=1
TooltipGeometry=0.0 0.0 0.41 0.1
TooltipOutlineFont=0
TreeRadius=3000
UnitIconDist=100
UnitLodDist=600
UnitReplySoundVolume=19
VSync=0
VerboseLevel=0
WindowedEdgeMove=1
XResolution=1440
YResolution=900
buildmenu_align=0
buildmenu_icon_size_base=52
buildmenu_offset=0
buildmenu_side=2
name=
User avatar
BrainDamage
Lobby Developer
Posts: 1164
Joined: 25 Sep 2006, 13:56

Post by BrainDamage »

LordMatt wrote:Any more ideas?
quit playing speedmetal :P J/K
LordMatt wrote:I am running spring in its own xserver
using the same script you made to send spring to another X session, launch glxgears (a quick 'n dirty 3D benchmark tool that you have automatically installed when you get OpenGL) in a console and look at the FPS it outputs; for a 8xxx series, it should be above 14K FPS; so you can exclude it's a card/OS/driver/xorg problem

also since you run in a separate X session, why do you need to have it windowed? iirc you'll get quite a performance boost in fullscreen due to the different type of rendering

do you use any fancy 3d effects like beryl/compiz/compiz-fusion? if yes, what X engine do you use? AIGLX?

EDIT: also try to run the game using one of the defualt scripts such as the air script test, maybe at high speed, and look at the performance usage; use the B key to monitor the weight of the single elements, it should help you detect the source of the problem
User avatar
LordMatt
Posts: 3393
Joined: 15 May 2005, 04:26

Post by LordMatt »

Relative wrote:This is my SpringRC:
And what GPU, driver, and FPS in late game do you get?
Brain Damage wrote:launch glxgears
I get 18K FPS
Brain Damage wrote:why do you need to have it windowed
If I run spring full screen, the mouse is massively slower, a problem discussed here. The only solution appears to be to run spring windowed.
Brain Damage wrote:do you use any fancy 3d effects
No. I also don't know what AIGLX is, except that I had to disable it on another machine with an ATI card.
Brain Damage wrote:try to run the game using one of the defualt scripts such as the air script test, maybe at high speed, and look at the performance usage; use the B key to monitor the weight of the single elements,
I ran air combat test at 3.0 speed (the highest it would go) and it ran between 40-60 fps on c2c. The highest usage was interface draw at almost 50% (twice as much as draw world). I get 90-120 with luaUI disabled, however I really don't want to disable lua, as I like IceUI, and the other widgets I use. Also, the performance still isn't much greater than I was getting with the 6800 Ultra, which had about 40-60 fps with a few units on c2c and 80-100 if I disabled luaUI.
Brain Damage wrote:quit playing speedmetal Razz J/K
It doesn't matter what map it is I still spam tonnes flashes and stumpies. :P
Last edited by LordMatt on 02 Sep 2007, 17:15, edited 1 time in total.
Lippy
Posts: 327
Joined: 16 Jul 2006, 00:24

Post by Lippy »

BTW, not really sure with specifics here, but I once had it that if I used 3d effects (compiz with aiglx i think), I actually got better performance in things like video (didnt play spring on linux then). Maybe it could help spring performance in windowed mode?

Also, you say that your mouse is massively slower, however you never say if fps improves in full screen mode?
Tobi
Spring Developer
Posts: 4598
Joined: 01 Jun 2005, 11:36

Post by Tobi »

LordMatt wrote:I ran air combat test at 3.0 speed (the highest it would go) and it ran between 40-60 fps on c2c. The highest usage was interface draw at almost 50% (twice as much as draw world). I get 80-100 with luaUI disabled, however I really don't want to disable lua, as I like IceUI, and the other widgets I use. Also, the performance still isn't greater than I was getting with the 6800 Ultra, which had about 40-60 fps with a few units on c2c and 80-100 if I disabled luaUI.
Sounds like the CPU is the bottleneck, not the GPU. (That's what I'd conclude if I bought a new video card and it wouldn't make stuff faster.)
User avatar
Relative
Posts: 1371
Joined: 15 Oct 2006, 13:17

Post by Relative »

LordMatt wrote:
Relative wrote:This is my SpringRC:
And what GPU, driver, and FPS in late game do you get?
I have a 8600 GTS with the 100.14.11 drivers installed via the envy scripts. I get 120~ FPS at the beginning of matches and about 30-60 FPS late ingame when there are about 2000~ units on screen. In glxgears I get around the low end of 17K FPS.
Last edited by Relative on 02 Sep 2007, 17:25, edited 1 time in total.
User avatar
LordMatt
Posts: 3393
Joined: 15 May 2005, 04:26

Post by LordMatt »

Lippy wrote:I once had it that if I used 3d effects (compiz with aiglx i think), I actually got better performance in things like video (didnt play spring on linux then). Maybe it could help spring performance in windowed mode?
How do you turn on aiglx? I could add that to my xorg.conf for spring.
Lippy wrote:however you never say if fps improves in full screen mode
Fullscreen with luaUI turned on air combat c2c is 50-80fps, but the mouse is way to slow for competitive play
Tobi wrote:Sounds like the CPU is the bottleneck
I have a quad core conroe at 2.4Ghz I doubt the CPU is a bottleneck (a single conroe core is about twice as fast as my previous 4000+ CPU).
Relative wrote:I have a 8600 GTS with the 100.14.11 drivers installed via the envy scripts. I get 120~ FPS at the beginning of matches and about 30-60 FPS late ingame when there are about 2000~ units on screen. In glxgears I get around the high end of 16k.
Do you use LuaUI?
User avatar
Relative
Posts: 1371
Joined: 15 Oct 2006, 13:17

Post by Relative »

Do you use LuaUI?
I use LuaUI, but only the default lua stuff, no iceui.
User avatar
BrainDamage
Lobby Developer
Posts: 1164
Joined: 25 Sep 2006, 13:56

Post by BrainDamage »

LordMatt wrote: If I run spring full screen, the mouse is massively slower, a problem discussed here. The only solution appears to be to run spring windowed.
there is a solution; just check the SDL env vars

more specifically:

set SDL_MOUSE_RELATIVE to 0

and

SDL_VIDEO_X11_MOUSEACCEL
For X11, sets the mouse acceleration. The value should be a string
on the form: n/d/t
where n and d are the acceleration numerator/denumerators (so
mouse movement is accelerated by n/d), and t is the threshold
above which acceleration applies (counted as number of pixels
the mouse moves at once).
LordMatt wrote:if I disabled luaUI.
the old vesions of IceUI used to give me huge perfomace drop to me too (half of FPS)

use the updater in IceUI/Accessories/Upadter for linux.sh and see if you got the lastest version, those versions really improved the speed a lot for me (like 1/15 FPS drop now)
User avatar
Relative
Posts: 1371
Joined: 15 Oct 2006, 13:17

Post by Relative »

I just tried out iceUI. It almost cut my FPS in half. I went from 120 FPS~ to 70~ FPS at the beginning of a match.


Edit: I updated iceui and the FPS drop was greatly reduced.
User avatar
LordMatt
Posts: 3393
Joined: 15 May 2005, 04:26

Post by LordMatt »

Brain Damage wrote: there is a solution; just check the SDL env vars
Where do I set this? Though I may have managed to set up a lot of crazy custom stuff for spring, I'm still a linux nub. :P

Regarding updating IceUI, it may be that other widgets are eating a lot of FPS, however none of them are active during that flight test script. I do have the latest IceUI.

Edit: nm I got SDL_MOUSE_RELATIVE=0 working and that seems to have fixed the mouse issue.
Post Reply

Return to “Linux”