2025-07-18 04:14 CEST

View Issue Details Jump to Notes ]
IDProjectCategoryView StatusLast Update
0001851Spring engineGeneralpublic2010-07-12 16:45
Reportermonohouse 
Assigned To 
PrioritynormalSeverityminorReproducibilityalways
StatusclosedResolutionno change required 
Product Version 
Target VersionFixed in Version 
Summary0001851: replays with some lag to identify performance problems in spring
Description...
TagsNo tags attached.
Checked infolog.txt for Errors
Attached Files

-Relationships
+Relationships

-Notes

~0004688

Auswaschbar (reporter)

I played the whole damn demo, and noticed noting extraordinary. Even in lategame porc, fps mostly stayed above 10.

~0004689

monohouse (reporter)

Last edited: 2010-02-25 09:36

that's just it ! and you play on lowest settings, shouldnt even those highest loads be at fps higher than, say 70-100 ? because I would guess that it looks like sim is taking away time from everything else (rendering and/or water, or for nvidia also and/or shadows) and that is causes the fps reduce considerable, I also find it strange that rendering/water/shadows take so much time on it's own, and yes before you tell me, I understand that when vsync is off everything is render as soon as possible so the remaining "time" isn't realy time, I guess it just use the rest of the time for rendering, but is also just it - I am under the impression that hardware acceleration was a little bit more effective than that to say least, and does not require almost any cpu at all... because it looks like hardware halfceleration (what is the point if it still use so much of the processor anyway)

~0004690

Auswaschbar (reporter)

Yes, sim time is taking away from everything else. And no, that has nothing to do with hardware acceleration. Please reopen if you have any new insights.

~0004692

monohouse (reporter)

well, it hard to explain, but I have idea to try.
for example, supposedly with everything on highest, Lups and dynamic blob shadows plugins would make up a considerable amount of video load, but when they are disabled in real time, the fps only drops from 20 to around 18. can't say that it is the cpu since it has nothing to do with hardware aceleration, but why when significant graphics things are disabled there is no significant impact on fps ?
since sim is not taking so much time (in my case it take about 30% at most (average)) why then does it slow it down ? there is plenty more time available for everything else, but is unused.

but, and here is the funny thing, when using the zerver edition, there is no effect at all from sim on fps, what's more important it certainly has nothing to do with any of the resources (processor or video card) because otherwise the fps would not double when running it...

but despite that, when the zerver edition is run with affinity, the fps is not double (???) it is the same as without the multi (with some stutter), so this means that something DOES take cpu from rendering the graphics, but you also said rendering the graphics does not need cpu as much as I thought, so how to explain that the graphics fps depends on something that is not supposed to ?

if you assume sim take away time from rendering while rendering does not need time, and if say sim take at most 30%, then how could fps be double ? 30 from 100 is 70, which means that when you remove the sim by for example running the zerver edition, you should see fps up to 30% faster, not 100% ! (and it sometimes more than 100% especially when alote of load on graphics).

I hope I explain it good this time.

~0004694

zerver (reporter)

Rendering at high FPS requires plenty of CPU. There are many objects that have to be drawn (units, particles) and for each object a potentially large number of OpenGL commmands have to be sent to the graphics driver.

Rendering is asynchronous so the CPU should not have to "wait" if the graphics card happens to be slow. However, there is a potential of CPU being wasted if the graphics card is fed with data faster than it can be rendered.

This is why MT has a higher frame rate, one core is doing rendering and the other one handles Sim. If you add affinity, naturally the result will be very bad because the threads will compete for a single core and not run in parallel.

I'm not sure I understood all of your reasoning. Please ask if you need further clarification...

~0004743

monohouse (reporter)

ok here is some more info:

1. download rivatuner from guru3d.com
2. start rivatuner and go to hardware monitoring
3. in hardware monitoring press the setup button at bottom right
4. in setup window there is a monitoring object called GPU usage, turn it on
5. in the newly created gpu usage monitoring plugin that appears in window, right click it and go to "setup" at bottom
6. in setup enable "show gpu usage in onscreen display"
7. now you can press the record button at the bottom left or leave the monitor window open and let the program run (it doesn't have minimize function)
8. now start the rivatuner statistics server, it should be in <INSTALLDIR>\Tools\RivaTunerStatisticsServer\RivaTunerStatisticsServer.exe
9. now you will be able to see how much of the video card is used while playing full screen spring.

to my surprise my video card is used between 30 and 50%, and that is when spring's cpu usage monitor /info says I only use 7% of my cpu (which seems to mean that whenever I have 100 fps I should have either 300 or 200) and don't worry about vsync, it has no effect on the gpu usage.

on the other hand, run any other directx or opengl program (quake4, doom3 or even cnc generals) you will see gpu usage is always at 100%, in some cases even when vsync is on (which appears to have no effect on gpu usage in spring).

I hope I got it right this time

~0004745

Auswaschbar (reporter)

Spring is CPU limited. Great news.

~0004750

zerver (reporter)

Indeed. Mono, what you are missing is that "CPU load" in spring does not include the CPU used for rendering, except for the mandatory 2 FPS. The rest of the CPU (93% in your case) is largely used for rendering, but it is still not enough to fully load the gfx card. It depends on the hardware you have of course. From personal experience I also know that a fast core i7 really is like steroids for Spring, it runs really good, and you only need a medium good gfx card.

~0004756

monohouse (reporter)

are you telling me that 93% of a 3800 mhz conroe isn't enough to fill the business hours of a 985 mhz AMD 3870 on max settings (without shadows) with 6x antialiasing and 16 aniso at 1600x1200 resolution ?

~0004766

zerver (reporter)

Check your cpu% in task manager, should be 50% if you have 2 cores. This means spring fully utilizes one core, and the answer will then be *YES*.

Regarding the Sim taking away resources from the rendering, pause the game and find out for yourself.
+Notes

-Issue History
Date Modified Username Field Change
2010-02-23 21:02 monohouse New Issue
2010-02-23 21:02 monohouse File Added: 20100223_020947_DryDeltaSiege Special v17_0.81.2.sdf
2010-02-24 14:48 Auswaschbar Note Added: 0004688
2010-02-25 09:12 monohouse Note Added: 0004689
2010-02-25 09:15 monohouse Note Edited: 0004689
2010-02-25 09:20 monohouse Note Edited: 0004689
2010-02-25 09:26 monohouse Note Edited: 0004689
2010-02-25 09:26 monohouse Note Edited: 0004689
2010-02-25 09:28 monohouse Note Edited: 0004689
2010-02-25 09:36 monohouse Note Edited: 0004689
2010-02-25 10:45 Auswaschbar Note Added: 0004690
2010-02-25 10:45 Auswaschbar Status new => closed
2010-02-25 10:45 Auswaschbar Resolution open => won't fix
2010-02-25 11:43 monohouse Note Added: 0004692
2010-02-25 11:43 monohouse Status closed => new
2010-02-25 11:43 monohouse Resolution won't fix => reopened
2010-02-26 00:39 zerver Note Added: 0004694
2010-03-11 15:48 monohouse Note Added: 0004743
2010-03-13 01:04 Auswaschbar Note Added: 0004745
2010-03-13 16:01 zerver Note Added: 0004750
2010-03-14 12:45 monohouse Note Added: 0004756
2010-03-18 16:34 zerver Note Added: 0004766
2010-07-12 16:45 Kloot Status new => closed
2010-07-12 16:45 Kloot Resolution reopened => no change required
+Issue History