PDA

View Full Version : Extremely odd behavior with IL2 yielding very poor performance


henrique_rp
12-10-2009, 01:31 AM
Hello guys,

I am losing my hairs trying to understand an extremely weird behavior I'm having with IL2. The problem worsens the more objects I have in the screen. When this happens, GPU utilization can drop to a mere 20% and my FPS simply plunge to the ground. The exact contrary happens when there are few or no objects on screen. My GPU utilization increases consistently and I get up to 120FPS when V-Sync is disabled.

I simply don't understand. On the very situations when the GPU should be used to its fully extent, all I get is some bellow mediocre fps because the game (drivers?) don't push it the way it should. And when there's almost nothing to render on screen I get a huge amount of FPS because GPU utilization has increased.

Let me show you some screen shots and I think it'll be better illustrated.

I've set an A20 in the little town of Nitra in the Slovakia Map. The grid is D2 keypad 4 for reference. There's a tiny village to the East of this town and we'll use it as reference.

When I look to the West in the direction of the Town, GPU use drops to 20% and my FPS hit 16 (they're always bellow 20 in this scene).

http://img46.imageshack.us/img46/9937/nitra01resize.jpg

Now, when I look to the right at the tiny village where there are extremely few objects GPU utilization simply doubles and my FPS skyrockets. It'll hit 60 on the SS, but when V-Sync is disabled it reaches 120 and stays there.

http://img194.imageshack.us/img194/6784/nitra02resize.jpg

Some external shots to further exemplify such bizarre behavior

http://img27.imageshack.us/img27/1482/nitra03resize.jpg

http://img692.imageshack.us/img692/4343/nitra04resize.jpg


My system specs are as follows:

Phenom X4 955@3.7GHz
Radeon 4890@930MHz
4GB DDR3 Viper Patriot

I am running the game at 1680x1050 using 8 AA and 4 Aniso. No matter how low I leave AA and Aniso, the FPS will vary in less than 2%.

I am using the version 9.10 of the catalyst drivers, but I have already tried 9.9, 9.11 and 9.12 Beta. The result is always what I have in the above SS.

I am also including a copy of my Conf.ini file in case someone would want to take a look.

[il2]
title=Il2-Sturmovik Forgotten Battles
hotkeys=HotKey game

[window]
width=1680
height=1050
ColourBits=32
DepthBits=24
StencilBits=8
ChangeScreenRes=1
FullScreen=1
DrawIfNotFocused=0
EnableResize=0
EnableClose=1
SaveAspect=0
Use3Renders=0

[GLPROVIDER]
GL=Opengl32.dll

[GLPROVIDERS]
Open GL=Opengl32.dll
DirectX=dx8wrap.dll

[NET]
speed=8000
routeChannels=0
serverChannels=7
localPort=21000
remotePort=21000
SkinDownload=1
serverName=199RAF_Server
serverDescription=
remoteHost=
localHost=189.63.228.93
socksHost=
checkServerTimeSpeed=1
checkClientTimeSpeed=0

[MaxLag]
farMaxLagTime=10.0
nearMaxLagTime=2.0
cheaterWarningDelay=5.0
cheaterWarningNum=-1

[chat]
region=(dx=0.69285715,dy=0.11523809,x=0.0,y=0.0)
adr0=ALL

[game]
Arcade=0
HighGore=1
mapPadX=0.66785717
mapPadY=-0.043809526
viewSet=53
Intro=0
NoSubTitles=0
NoChatter=1
SubTitlesLines=3
NoHudLog=0
NoLensFlare=0
iconTypes=3
eventlog=eventlog.lst
eventlogkeep=1
3dgunners=1
TypeClouds=1

[HotKey game]
PrintScreen=ScreenShot
P=pause
Pause=pause

[HotKey gui]
Escape=activate

[HookViewFly Config]
timeFirstStep=2.0
deltaZ=10.0

[HookView]
MouseLeft=Len

[HookView Config]
AzimutSpeed=0.1
TangageSpeed=0.1
LenSpeed=1.0
MinLen=1.0
DefaultLen=20.0
MaxLen=3000.0
Speed=6

[HotKey builder]
MouseLeft=objectMove
MouseRight=popupmenu
Enter=freeView
Shift MouseLeft=worldZoom
Alt MouseLeft=select+
Alt MouseRight=select-
Alt Ctrl=unselect
PageDown=change+
PageUp=change-
End=change++
Home=change--
Ctrl MouseLeft=insert+
Insert=insert+
NumPad-0=insert+
F=fill
Ctrl MouseRight=delete+
NumPad.=delete+
Delete=delete+
Backspace=cursor
Tab=cursor
F10=land
F11=onLand
NumPad-=normalLand
NumPad+=toLand
NumPad-5=resetAngles
NumPad-8=resetTangage90
NumPad-7=stepAzimut-5
NumPad-4=stepAzimut-15
NumPad-1=stepAzimut-30
NumPad-9=stepAzimut5
NumPad-6=stepAzimut15
NumPad-3=stepAzimut30

[MouseXYZ]
F1=SpeedSlow
F2=SpeedNormal
F3=SpeedFast
MouseRight=XYmove
F4 MouseRight=Zmove
MouseMiddle=Amove
F5 MouseRight=Amove
F6 MouseRight=Tmove
F7 MouseRight=Kmove

[MouseXYZ Config]
RealTime=1

[HotKey Console]
Shift Tab=Activate
[Console]
HISTORY=1024
HISTORYCMD=1024
LOAD=console.cmd
SAVE=console.cmd
LOG=0
LOGTIME=0
LOGFILE=log.lst
LOGKEEP=0

[sound]
SoundUse=1
SoundEngine=1
Speakers=1
Placement=0
SoundFlags.reversestereo=0
RadioFlags.Enabled=1
RadioEngine=2
MusicVolume=0
ObjectVolume=11
MusState.takeoff=0
MusState.inflight=0
MusState.crash=0
MusFlags.play=0
MasterVolume=14
Attenuation=7
SoundMode=0
SamplingRate=2
NumChannels=2
SoundExt.occlusions=0
SoundFlags.hardware=0
SoundFlags.streams=1
SoundFlags.duplex=1
SoundExt.acoustics=0
SoundExt.volumefx=0
SoundFlags.voicemgr=0
SoundFlags.static=1
VoiceVolume=12
Channels=2
SoundExt.extrender=0
SoundFlags.bugscorrect=0
SoundSetupId=7
ActivationLevel=0.02
Preemphasis=0.85
RadioLatency=0.5
AGC=1
PTTMode=1
SoundFlags.UseRadioChatter=0
SoundFlags.AutoActivation=0
RadioFlags.PTTMode=0
RadioFlags.PlayClicks=0
ActLevel=0
MicLevel=0
SoundFlags.forceEAX1=1

[rts]
ProcessAffinityMask=0
mouseUse=2
joyUse=1
trackIRUse=1
DisableIME=0
locale=

[rts_mouse]
SensitivityX=1.0
SensitivityY=1.0
Invert=0
SensitivityZ=1.0

[rts_joystick]
X=0 1 4 9 16 25 36 49 64 81 100 0
Y=0 1 4 9 16 25 36 49 64 81 100 0
Z=0 10 20 30 40 50 60 70 80 90 100
RZ=0 10 20 30 40 50 60 70 80 90 100 0
FF=0
U=0 10 20 30 40 50 60 70 80 90 100 0
V=0 10 20 30 40 50 60 70 80 90 100 0
1X=0 0 36 54 63 68 74 79 85 91 100 0
1Y=0 13 39 55 62 68 76 80 86 92 100 0
1Z=0 100 100 100 100 100 100 100 100 100 100 0
1RX=0 100 100 100 100 100 100 100 100 100 100 0
1RY=0 100 100 100 100 100 100 100 100 100 100 0
1RZ=0 0 42 53 64 72 79 80 85 91 100 0
1U=0 100 100 100 100 100 100 100 100 100 100 0
1V=0 100 100 100 100 100 100 100 100 100 100 0

[Render_DirectX]
TexQual=3
TexMipFilter=3
TexCompress=2
TexFlags.UseDither=1
TexFlags.UseAlpha=0
TexFlags.UseIndex=0
TexFlags.PolygonStipple=0
TexFlags.UseClampedSprites=0
TexFlags.DrawLandByTriangles=1
TexFlags.UseVertexArrays=1
TexFlags.DisableAPIExtensions=0
TexFlags.ARBMultitextureExt=1
TexFlags.TexEnvCombineExt=1
TexFlags.SecondaryColorExt=1
TexFlags.VertexArrayExt=0
TexFlags.ClipHintExt=0
TexFlags.UsePaletteExt=0
TexFlags.TexAnisotropicExt=1
TexFlags.TexCompressARBExt=1
TexFlags.TexEnvCombine4NV=0
TexFlags.TexEnvCombineDot3=0
TexFlags.DepthClampNV=0
TexFlags.SeparateSpecular=0
TexFlags.TextureShaderNV=0

HardwareShaders=0

Shadows=2
Specular=2
SpecularLight=2
DiffuseLight=2
DynamicalLights=1
MeshDetail=2
VisibilityDistance=3

Sky=2
Forest=2
LandShading=3
LandDetails=2

LandGeom=2
TexLarge=1
TexLandQual=3
TexLandLarge=1

VideoSetupId=15
ForceShaders1x=0
PolygonOffsetFactor=-0.0625
PolygonOffsetUnits=-1.0

[Render_OpenGL]
TexQual=3
TexMipFilter=3
TexCompress=0
TexFlags.UseDither=1
TexFlags.UseAlpha=0
TexFlags.UseIndex=0
TexFlags.PolygonStipple=1
TexFlags.UseClampedSprites=0
TexFlags.DrawLandByTriangles=1
TexFlags.UseVertexArrays=0
TexFlags.DisableAPIExtensions=0
TexFlags.ARBMultitextureExt=1
TexFlags.TexEnvCombineExt=1
TexFlags.SecondaryColorExt=1
TexFlags.VertexArrayExt=0
TexFlags.ClipHintExt=0
TexFlags.UsePaletteExt=0
TexFlags.TexAnisotropicExt=1
TexFlags.TexCompressARBExt=1

TexFlags.TexEnvCombine4NV=0
TexFlags.TexEnvCombineDot3=1
TexFlags.DepthClampNV=0
TexFlags.SeparateSpecular=1
TexFlags.TextureShaderNV=0

HardwareShaders=1

Shadows=2
Specular=2
SpecularLight=2
DiffuseLight=2
DynamicalLights=1
MeshDetail=2
VisibilityDistance=3

Sky=2
Forest=2
LandShading=3
LandDetails=2

LandGeom=2
TexLarge=1
TexLandQual=3
TexLandLarge=1

VideoSetupId=17
Water=2
Effects=1
ForceShaders1x=0
PolygonOffsetFactor=-0.15
PolygonOffsetUnits=-3.0

[Mods]
BombBayDoors=0

[DeviceLink]
port=10000
IPS=127.0.0.1
host=127.0.0.1



The only game I have such strange behavior is with IL2. I also play Crysis, Assassin Creed, Armed Assault 1 and 2 and all of them offer very good performance.

I know I don't have a top-of-the-line system, but it should suffice to run IL2, should it not?

I thank you for any help as I am out of ideas on how to fix this problem.

nearmiss
12-10-2009, 02:09 AM
You might try these settings

[Render_OpenGL]
TexQual=3
TexMipFilter=3
TexCompress=0
TexFlags.UseDither=1
TexFlags.UseAlpha=0
TexFlags.UseIndex=0
TexFlags.PolygonStipple=1
TexFlags.UseClampedSprites=0
TexFlags.DrawLandByTriangles=1
TexFlags.UseVertexArrays=1
TexFlags.DisableAPIExtensions=0
TexFlags.ARBMultitextureExt=1
TexFlags.TexEnvCombineExt=1
TexFlags.SecondaryColorExt=1
TexFlags.VertexArrayExt=1
TexFlags.ClipHintExt=0
TexFlags.UsePaletteExt=0
TexFlags.TexAnisotropicExt=1
TexFlags.TexCompressARBExt=1

TexFlags.TexEnvCombine4NV=0
TexFlags.TexEnvCombineDot3=1
TexFlags.DepthClampNV=0
TexFlags.SeparateSpecular=1
TexFlags.TextureShaderNV=0

HardwareShaders=0

Shadows=2
Specular=2
SpecularLight=2
DiffuseLight=2
DynamicalLights=1
MeshDetail=2
VisibilityDistance=3

Sky=2
Forest=0
LandShading=3
LandDetails=2

LandGeom=3
TexLarge=1
TexLandQual=3
TexLandLarge=1

VideoSetupId=17
Water=0
Effects=1
ForceShaders1x=0

PolygonOffsetFactor=-0.15
PolygonOffsetUnits=-3.0

TexMipFilter=2
Specular=1
SpecularLight=0

You might want to go over to ubisoft community help --> http://forums.ubi.com/eve/forums/a/frm/f/49310655

and post your dxdiag printout as well.

henrique_rp
12-10-2009, 03:59 AM
Thanks Nearmiss... I'll also try that.

13th Hsqn Protos
12-10-2009, 12:25 PM
S~! Henrique

Your not alone mate. I have the same issues with lots of objects or cities. I can play CoD4 at over 250 fps with full action.
The engine is pretty much done as far as newer hardware and especially drivers are concerned. Its 10+ years old so its prehistoric in software terms. Also nvidia will give you better fps over an ati card. I own ati but thats just the truth at this point.

The major fps killers are water, effects and land geometry.

Water=0
Effects=0
Land Geometry=2

** Also check the way your mirrors are set. Even on planes with no mirrors - this setting can affect you if you have them set to high for any planes you may fly with them on.

*** TURN OFF Vsync

13th Hsqn Protos
12-10-2009, 01:01 PM
S~!

Quick Addendum.

I just found this over at the Ultra Pack site. I don't have time to test it till later tonight - but it looks very promising.


Description:
Here it is a 1GB client executable. It really drastically improves your game performance!
You Must have more than 2GB + memory. A 64 bit version of Windows is recommended.
I have Win7 64Bit and it ROCKS! No more stuttering when flying low in cities even with nearby smokes. No stuttering inside clouds also! http://il2ultrapack.net46.net/Smileys/default/smiley.gif

http://il2ultrapack.net46.net/index.php/topic,1043.0.html



.
.

PeterD
12-11-2009, 09:55 AM
Apparently it doesn't improve FPS at all, but instead crashes the game with several maps...

Track tried: F4F vs G4M (118.000ms, CPU bottleneck)

1.- With modified IL2fb.exe (1Gb): Avg: 134.698 - Min: 49 - Max: 390

2.- With standard IL2fb.exe (UP.1.8 ): Avg: 135.213 - Min: 49 - Max: 394


New test with V1.8m. Track: TheBlackDeath.ntrk (106000ms)

1.- IL2fb.exe modified (1Gb version): Avg: 152.431 - Min: 42 - Max: 393

2.- IL2fb.exe (UP. 1.8m, betatesting): Avg: 153.751 - Min: 44 - Max: 397

Again, no improvements there. Sorry by bad news.

mkubani
12-11-2009, 10:41 AM
Well, my 2 cents:

1. I am the person that built the Nitra city for Slovakia map.

2. There are 3 main FPS killer areas on Slovakia map: Nitra, Zilina and Piestany towns.

3. There might be several reasons for a lower performance, but I am sure the following has an impact on it as well:

a.) The density of objects in your view (as you have noticed yourself). Nitra town is a very dense one and it has a high impact on the FPS just because of the number of objects.

b.) Variety of objects. The more different objects you have in your view, the more FPS drop you will experience. In other words, 1 type of a house placed 1000 times on a map (= 1000 objects in total) would have a less impact than 20 different types each placed 50 times (= also 1000 objects in total). In fact, the Slovakia map required from Maddox Games to increase the game engine buffer used for loading the objects in the memory.

c.) Quality of the objects = polygoncount (how detailed the 3D model is) and texture size. It is often regarded as unimportant because we have more powerful CPU/GPUs but keep in mind the engine stays the same as it was 5 years ago. It has its limits. As for your specific example, Slovakia generic objects are very efficient on polygoncount and texture size (many of them under 30-40 polys with texture 256x256) = no increased impact on performance compared to any other default map. Only the unique objects (e.g. Nitra castle) is more detailed.

d.) LOD drawing distance. Another important thing that influences the performance and which has been tested 3x times by me on Slovakia map until I could accept it. Slovakia objects have an increased drawing distance and a smooth LOD transition distance to avoid a pop up effect. In order to keep the map playable I have adjusted the drawing distance many times for each object category in order not to kill the performance. I could not use the maximum value because the map would become a slide show even over small towns. Another engine limit I believe.

e.) Last but not least, but this is only my feeling. Once you exceed a certain (to me unknown) quanity of objects you place on one location (within your view) you will just make the engine to loose its performance no matter how powerful your computer is. Nitra might be one of such examples.

I hope such explanation helps. So it is not your computer that is really not performing well, it is that we have pushed the IL-2 engine to its maximum limits with the Slovakia map.

He111
12-11-2009, 12:05 PM
surely at that distance the buildings would just be sprites? (2d pictures)

He111.

henrique_rp
12-11-2009, 01:39 PM
Thank you so much for the explanation mkubani. It seems that the culprit is the already aged IL2 engine, as when it was conceived GPU's didn't have a speck of the performance they have today and processors seemed to do a better job when resource-intensive situations arose. Therefore, the designers of IL2 took this road, and when a load of information needs to be processed, the engine ends up overloading the processor when it actually should be doing the opposite and transferring graphic solutions to the GPU.

Guess I'll have to stick with that and simply not use these maps. It's too sad because they are beautiful maps which are hampered in use for an engine that has been pushed way beyond its limits.

There are other map areas that also yield this kind of behavior. There is one from our old map set that causes the exact same reaction. It's the Berlin map. How cool wouldn't it be to have a dogfight right over Berlin skies? Well, too bad, the engine can't handle that many objects. =( Stick to less populated areas.

It's interesting that I've been flying IL2 since the very day it came out back in 2001 and only recently I've able to mathematically notice what was going on behind those poor fps I was having.

I wish this problem could be solved through Drivers, but it's definitely an engine limitation on the way it deals with too many objects on screen.

Still, thanks a lot for all the help. It was very clarifying. Best regards!

KG26_Alpha
12-11-2009, 03:45 PM
S~!

Quick Addendum.

I just found this over at the Ultra Pack site. I don't have time to test it till later tonight - but it looks very promising.


Description:
http://il2ultrapack.net46.net/index.php/topic,1043.0.html



.
.

Surely that's a mod and runs only as a mod not under Official v409m

Are links to mods allowed here now, I ask as some will download this install it and have problems possibly ?

mkubani
12-11-2009, 06:51 PM
Actually, no need to give up on those maps. It's only 2-3 areas where you will experience some performance hit and only if you fly too close toward the city. The rest of the map (99%) will be smooth for you with high FPS.

EJGr.Ost_Caspar
03-31-2010, 06:54 AM
surely at that distance the buildings would just be sprites? (2d pictures)

He111.

No. Thats a different way to display distant objects - its used in many games, but its not existant in IL-2. Even the most far LoD is a 3D model. A simple one though.