Page 1 of 2

ATI slow performance in 0.94.x versions

Posted: 08 Apr 2013, 22:16
by ismo
Hi all,

Noticed that Spring is now very slow in general compared to pre v0.94 time. Namely, I am getting something like 10-30fps if it is for example 3 vs 3 game and few hundreds of units on screen. Used to run 60 fps smoothly in before v0.94.

My system:
Windows 7
12GB DDR3/1600
I7 920
AMD Radeon 5850 / 2gb
Catalyst 13.1.
1920x1200 resolution

Any idea how to get it to run faster at least a bit? (except than buying nvidia card :))

Addon: I play XTA mod, have not checked if it is just slow in XTA but I guess that not.

Re: ATI slow performance in 0.94.x versions

Posted: 09 Apr 2013, 08:48
by abma
do you have set LogFlush=0 ? (known bug for that release)

Re: ATI slow performance in 0.94.x versions

Posted: 09 Apr 2013, 09:08
by Jools
I also have slow fps compared to spring 91 and before. How about setting CPU affinity to 0x01 as we used to do with previous releases, would that maybe help?

Re: ATI slow performance in 0.94.x versions

Posted: 09 Apr 2013, 09:11
by abma
@ismo:

are you using mt? infolog.txt maybe helps...

Re: ATI slow performance in 0.94.x versions

Posted: 09 Apr 2013, 16:21
by ismo
Hmm not using that logFlush will try that. Infolog telling Spring 94.1 (OMP) I guess that OMP = OpenMP = multiprocessor version?

Hmm I think tasclient has only options default and multithreaded version and I use only default which I guess starts nowadays multithreaded exe? (in the past it used to start single threaded version).

Re: ATI slow performance in 0.94.x versions

Posted: 10 Apr 2013, 01:15
by zerver
ismo wrote:I guess that OMP = OpenMP = multiprocessor version?
Not meaning to be negative but the other executable (ASIM) is orders of magnitude better if your goal is high FPS.

The 94.X pathfinder is a lot more heavy on the CPU and this translates directly into lower FPS if you are using OMP.

Re: ATI slow performance in 0.94.x versions

Posted: 10 Apr 2013, 02:12
by jK
zerver wrote:The 94.X pathfinder is a lot more heavy on the CPU and this translates directly into lower FPS if you are using OMP.
Please stop your propaganda of incorrect $%^&>!

Re: ATI slow performance in 0.94.x versions

Posted: 11 Apr 2013, 02:17
by zerver
jK wrote:Please stop your propaganda of incorrect $%^&>!
Please stop making Spring slower :mrgreen:

I'm just saying that when the OMP build is busy with 100% simulation, there is no CPU left to do rendering, so zero FPS. That's a fact and no propaganda.

However, this (changelog.txt):

Code: Select all

Pathing:
 - faster updates
 - legacy: use omp in ::Update to multithread a function that eats 40% of the time spent in ::Update
   - this gives a _massive_ boost with like >30% more FPS
First you increased the update speed, thereby significantly reducing the Sim FPS. Then you multithreaded a function which made it ~10% faster, but this did not anywhere near restore it to the Sim FPS level you had to begin with. So you made it slower and are still claiming a MASSIVE 30% BOOST.

Faster updates is good in many ways, but take it easy with the propaganda.

Re: ATI slow performance in 0.94.x versions

Posted: 11 Apr 2013, 18:21
by abma
zerver wrote: Faster updates is good in many ways, but take it easy with the propaganda.
i'm really annoyed about the propaganda, too as mostly it is off-topic and it gets off-topic afterwards.

@ismo:

do you have the same settings for spring 94.1?

you can compare infolog.txt from both versions, the first line shows the config file that is used.

Re: ATI slow performance in 0.94.x versions

Posted: 11 Apr 2013, 18:48
by jK
zerver wrote:Please stop making Spring slower :mrgreen:
I am not the one who makes it slower! I spend A DAMN LOT TIME running HUNDREDS of benchmarks. And 94 IS FASTER.
When someone makes stuff slower it's you (first in 89 your footprint change) and now you disabled OMP in spring-mt.

The maths is like follows:

+ I made pathfinder like twice as fast with OMP
- many ppl requested a faster responding pathfinder, so I increased update rate by like ~10%
-----------------------------------------------
= time spend in PFS is just ~60-80% compared to 91

So blame yourself to spawn redundant RenderHelperThreads, instead of OMP ones.

PS: Something similar happens in attack range drawing, I doubled the resolution of the circle there when it is compiled with OMP, combined with OMP it eats ~equal time as before and increases the quality w/o any drawbacks. But with your spring-mt (disabled omp!) you just get a noticeable lag.

Re: ATI slow performance in 0.94.x versions

Posted: 11 Apr 2013, 20:03
by ismo
Hmm, yeah my setting are the same (I have not added any lines to .ini).

And the springsettings - Render quality / video mode tab having:

Enabled v-sync
24-bit z-buffer

3D trees
High-res clouds
Reflective units
Enable luashaders support
shadows (slow): on
Water quality: reflective+refractive
(all other options disabled from render quality options)

And in render detail tab:
Shadow map 192
tree view distance: at max value
Terrain detail: at max value
Unit LOD distance: at max value

Grass detail: around value 7
Ground decals: between 0 and 1
Max Particles: 20000
MAx nano particles: 20000

Re: ATI slow performance in 0.94.x versions

Posted: 11 Apr 2013, 20:09
by jK
Delete your whole configfile, your settings are foobar.

Re: ATI slow performance in 0.94.x versions

Posted: 11 Apr 2013, 22:34
by Forboding Angel
Max particles 20k...

Jesus christ. That will destroy your computer in long games.

Do what JK said.

Re: ATI slow performance in 0.94.x versions

Posted: 12 Apr 2013, 17:54
by zerver
jK wrote:you disabled OMP in spring-mt
In Spring MT (unofficial) yes. It is currently not needed there because of the separate pathfinder thread.

In Spring (ASIM GML OMP) I will re-enable it if I can make sure OMP and ASIM/GML don't bite each other. Lack of OMP only makes the typical game ~5% slower.

Re: ATI slow performance in 0.94.x versions

Posted: 12 Apr 2013, 18:31
by ismo
Well crazy settings or no but those have worked just smoothly for me before 94x versions. But yeah maybe I drop then few particles away :)

I have played long games and 5 vs 5 games etc no problems with those settings before 94x versions, hence I wonder who is foobar - my settings or spring core :)

Re: ATI slow performance in 0.94.x versions

Posted: 12 Apr 2013, 18:58
by zerver
Test if you get better performance with Spring MT.
http://springrts.com/wiki/Spring_MT

(you can only play it on special servers, or try "spring-mt.exe" in single player mode)

Re: ATI slow performance in 0.94.x versions

Posted: 12 Apr 2013, 19:32
by abma
zerver wrote:Test if you get better performance with Spring MT.
@zerver: http://springrts.com/phpbb/viewtopic.php?f=22&t=30162

Re: ATI slow performance in 0.94.x versions

Posted: 19 Apr 2013, 17:31
by Hermuld
Spring 94 is unplayable for me. Cpu goes 100% and I'm not playing realtime but falling behind every second. Logflush is set 0.

I tested this and it can't be a pathfinding issue cause it runs ok with hunders of units moving. When the shooting begins it freezes. Again, when there is no shooting it runs ok. Might be some new fancy effects? How to turn them off?

Older versions used to run ok.

I have AMD/ATI/Vista 32.

My settings:
Everything off/minimum expect
max particles 500

I also tested multithread.exe in single player mode but it wasn't any better. I just also got spammd with luarules error.

Re: ATI slow performance in 0.94.x versions

Posted: 19 Apr 2013, 18:41
by Jools
We did some testing with many units to see what causes the lag. It's not just ATI btw. There are two separate issues that are the main cause for lag. They are:

1) Unit collissions and
2) Ground deformations xta problem

All of these were tested with latest xta (9.726) and on different maps. Latest xta still has too big collission volumes, could be partly a cause.

1) unit collissions:
------------------

We tested to make 300 stumpies on a flat and undeformable map. Just moving them forward is no problem. But when you order them to patrol an area so they collide with each other, fps drops from 140 to like 10.

We believe the same happens when in a battle.

2) Ground deformations:
------------------------
Main costly threads are:

Unit::MoveType::Update,
PathManager::TerrainChange and
PathManager::RequestPath

We tested with hundreds of units and on different maps, with map deformation on and off. One single nuke causes a lot of lag when the ground deformation causes the pathfinder to need a lot of updates to path.


Edit:
-----

Tested with luarules and luaui disabled too: the deformation problem is then gone, that's a mod problem it seems. But the collissions are because of engine.

Re: ATI slow performance in 0.94.x versions

Posted: 19 Apr 2013, 22:19
by Anarchid
Tested with luarules and luaui disabled too: the deformation problem is then gone, that's a mod problem it seems. But the collissions are because of engine.
I believe ZK LuaRules load has climbed significantly as well. Whatever it is, something changed and must be found.