Performance observation

General discussions about X Rebirth.

Moderator: Moderators for English X Forum

Luanda
Posts: 429
Joined: Thu, 13. Mar 14, 22:42

Post by Luanda » Thu, 26. Mar 15, 14:00

linolafett wrote:If you think its the "shiny crap shaders" which causes the fps drop, then change the shader to the old not shiny one via the legacy shaders gfx option. You will then see, that there is little difference in speed between these shaders and the new ones. The newer ones are actually a bit faster than the old ones.

Why should the shininess have an impact on the performance at all? The reflection is a simple static cubemap, this is a very, very cheap way to fake reflections. We do not do screenspace reflections, these do indeed cause a small drop in performance.
look. its sure not cpu based issue, your game doesnt even really warm up mine. when im in a fairly empty space (so no millions of asteroids, just stations and some ships) even with 100 lod and 100 viewdistance i had stable 60fps. when im on station, the use of my CPU drops even further, simple, because the geometry calculations are culled out. one thing remains really, the gpu. what does that work on? just and only the screenspace transformations, and lets say, between the 6 walls its not too much, and the postprocessing. how much of these get to the gpu depends mainly on 2 things, culling and shading. is it right? i think yes.
if you read back i wrote the shaders because they are not culled out. thats what i think. i can still be wrong if you say you dont use the above mentioned culling methods (a few posts ago) but something newer which stops the pixelshaders running. (and not cbuff, because with this amount of data it can cause latency on its own)
sooooo. are you culling out the shaders before they are executed?

(sadly i cant test your legacy shaders as the free weekend is far over and i guess u wont give an other :twisted: but as far as i remember you had to write these shaders because they were so badly optimised?) and i dont call them crap because of their quality but because that amount of shininess simply hurt my eyes, but yeah, i know its personal preference :evil:
Goobers wrote:Yeah? Mine is claiming 22% usage as it turns into a slideshow.

i7-5820k/32 GB ram/GTX970. I turned off HT for the time being... not that it matters... 6 vs 12 doesn't do me any good right now.

[ external image ]
hehe, i cant make fancy pics, my gametime is over :) but yeah, these images say the same as i do. its gpu issue. and yours is even better than mine so killing that card is a crime :) when i was in last stand or whats the name of the zone where the agent was for the trade start, i went after a miner. you know, horribly lot of asteroids, all have physics applied, they are bumping each other all the time and even that wasnt able to push the cpu over 45% though i was mad at the slideshow... i understand space has to have a lots of rocks but why this much? one of the first mods was to x3 to remove the asteroids :) :) :) ohh, and why do they all have to be HD quality? :evil:
Last edited by Luanda on Thu, 26. Mar 15, 14:13, edited 1 time in total.

User avatar
Sam L.R. Griffiths
Posts: 10522
Joined: Fri, 12. Mar 04, 19:47
x4

Post by Sam L.R. Griffiths » Thu, 26. Mar 15, 14:13

There are certain things in a simulation that have to complete before certain other things can be done and even if these things happen in different threads they can not always execute in parallel, thus the CPU/Core load may be low but due to (possibly) unavoidable inter-thread dependencies frame rate can be adversely affected.

Without definitive knowledge of the software architecture or visibility of the code any finger pointing on our part is effectively "grasping at straws".

We all may have our suspicions about the root causes, but fundamentally it seems to be down to what work the CPU has to do. Whether this down to thread interdependencies or code that is not as optimised as it could be is a bit moot really.

Either Egosoft will or will not be able to resolve the problem, it is not our place to tell them where the problem is and for any of us to insist that we know something definitive is just showing arrogance and disrespect to their team.

I have an FX 8350, 32GB RAM, with a GTX 770 4GB and I do also note some slow down in FPS between space and platform modes (I am uncertain of the degree as it is not something I monitor explicitly but it does not feel significant to me) but I can say with a degree of certainty that the disparity is not caused by even one of the processing resources (CPU or GPU) maxing out in terms of direct load.
Lenna (aka [SRK] The_Rabbit)

"Understanding is a three edged sword... your side, their side... and the Truth!" - J.J. Sheriden, Babylon 5 S4E6 T28:55

"May god stand between you and harm in all the dark places you must walk." - Ancient Egyption Proverb

"When eating an elephant take one bite at a time" - Creighton Abrams

Goobers
Posts: 337
Joined: Sun, 23. Oct 05, 14:48
x4

Post by Goobers » Thu, 26. Mar 15, 14:17

Luanda wrote:hehe, i cant make fancy pics, my gametime is over :) but yeah, these images say the same as i do. its gpu issue. and yours is even better than mine so killing that card is a crime :) when i was in last stand or whats the name of the zone where the agent was for the trade start, i went after a miner. you know, horribly lot of asteroids, all have physics applied, they are bumping each other all the time and even that wasnt able to push the cpu over 45% though i was mad at the slideshow... i understand space has to have a lots of rocks but why this much? one of the first mods was to x3 to remove the asteroids :) :) :) ohh, and why do they all have to be HD quality? :evil:
nope, you completely missed the part where GPU usage is a big fat ZERO, cause it's waiting for the CPU. And despite the six graph taskbar I showed you, you also missed the fact the CPU was blitzing out with the spikes all over the place...

My point was, a couple of CPU cores were maxing out due to a couple of threads that were then shifted to other CPUs because they weren't as busy. Yet the overall usage was reported as a measly 22%.

In other words... CPU bound.

Luanda
Posts: 429
Joined: Thu, 13. Mar 14, 22:42

Post by Luanda » Thu, 26. Mar 15, 14:35

Goobers wrote:nope, you completely missed the part where GPU usage is a big fat ZERO, cause it's waiting for the CPU. And despite the six graph taskbar I showed you, you also missed the fact the CPU was blitzing out with the spikes all over the place...

My point was, a couple of CPU cores were maxing out due to a couple of threads that were then shifted to other CPUs because they weren't as busy. Yet the overall usage was reported as a measly 22%.

In other words... CPU bound.
cpu spikes make lag spikes, not constant latency, and your pic nicely show the gpu running mostly on 99%. yes a lagspike can cause drop in gpu use, but that your gpu sometimes drop to 0 use it doesnt mean anything about overall performance. (especially your memory being maxed is really not nice :? i should have checked it when i had the chance)

@roger, i accepted that its just speculation, i even said to linolafett that i can be wrong but this is what i think. and i dont think speculating on whats wrong with something when it is surely wrong would be disrespectful. my way of expressing though, i agree, can be sometimes :) but well, if you dont want negative criticism, dont put yourself on the internet :twisted:

Goobers
Posts: 337
Joined: Sun, 23. Oct 05, 14:48
x4

Post by Goobers » Thu, 26. Mar 15, 15:38

Luanda wrote:
Goobers wrote:nope, you completely missed the part where GPU usage is a big fat ZERO, cause it's waiting for the CPU. And despite the six graph taskbar I showed you, you also missed the fact the CPU was blitzing out with the spikes all over the place...

My point was, a couple of CPU cores were maxing out due to a couple of threads that were then shifted to other CPUs because they weren't as busy. Yet the overall usage was reported as a measly 22%.

In other words... CPU bound.
cpu spikes make lag spikes, not constant latency, and your pic nicely show the gpu running mostly on 99%. yes a lagspike can cause drop in gpu use, but that your gpu sometimes drop to 0 use it doesnt mean anything about overall performance. (especially your memory being maxed is really not nice :? i should have checked it when i had the chance)

@roger, i accepted that its just speculation, i even said to linolafett that i can be wrong but this is what i think. and i dont think speculating on whats wrong with something when it is surely wrong would be disrespectful. my way of expressing though, i agree, can be sometimes :) but well, if you dont want negative criticism, dont put yourself on the internet :twisted:
Yes it was 99%... Before the slideshow... Before I attracted a massive gathering of active mines, none of which were visible (they were following me, therefore, behind my view).

In the post a few pages back, I showed that the CPUs were all steady, and despite nothing in particular moving in my view, my GPU was maxed out.

Memory is not maxed... It has 4 GB (or 3.5 if you want). That chart self adjusts the scale.

User avatar
Sam L.R. Griffiths
Posts: 10522
Joined: Fri, 12. Mar 04, 19:47
x4

Post by Sam L.R. Griffiths » Thu, 26. Mar 15, 15:47

@Goobers: I don't think your case proves much related to what Luanda has been referring to. You are both talking about differing circumstances.

You appear to be talking about flying through a tracker mine field and having (lots of?) them follow you, Luanda was referring to the drop in frame rate when in FP mode.
Lenna (aka [SRK] The_Rabbit)

"Understanding is a three edged sword... your side, their side... and the Truth!" - J.J. Sheriden, Babylon 5 S4E6 T28:55

"May god stand between you and harm in all the dark places you must walk." - Ancient Egyption Proverb

"When eating an elephant take one bite at a time" - Creighton Abrams

Luanda
Posts: 429
Joined: Thu, 13. Mar 14, 22:42

Post by Luanda » Thu, 26. Mar 15, 18:02

Goobers wrote:Yes it was 99%... Before the slideshow... Before I attracted a massive gathering of active mines, none of which were visible (they were following me, therefore, behind my view).
yes, thats probably the case roger was mentioning. when the threads are waiting for each other, in this case the mines pathfinding, but it still doesnt say anything about the gpu usage. its just clearly the case when a cpu process stop the engine and its normal that the gpu has nothing to process. its a different case.
In the post a few pages back, I showed that the CPUs were all steady, and despite nothing in particular moving in my view, my GPU was maxed out.
thats something i dont really understand how. i used to test my gpu under really hurting games but in other than some spikes or mad mouseshaking i never hit 99% gpu use. and my card is far weaker than yours
Memory is not maxed... It has 4 GB (or 3.5 if you want). That chart self adjusts the scale.
I see. i already started to speculate about that too :) but thats pointless then. I might buy the game just to start testing it haha. im so depressed im just building theories and i cant check them out :)

could you make 2 images in the same setup in some fine running system in the skunk before docking and one far inside the station?

User avatar
Sam L.R. Griffiths
Posts: 10522
Joined: Fri, 12. Mar 04, 19:47
x4

Post by Sam L.R. Griffiths » Thu, 26. Mar 15, 18:11

@Luanda: If you don't actually own nor play the game yourself as some of your recent posts seem to imply how can you know anything of substance about the way the game currently performs?

I am guessing you are basing your comments on recent experience with the X free-to-play period on Steam?
Lenna (aka [SRK] The_Rabbit)

"Understanding is a three edged sword... your side, their side... and the Truth!" - J.J. Sheriden, Babylon 5 S4E6 T28:55

"May god stand between you and harm in all the dark places you must walk." - Ancient Egyption Proverb

"When eating an elephant take one bite at a time" - Creighton Abrams

Luanda
Posts: 429
Joined: Thu, 13. Mar 14, 22:42

Post by Luanda » Thu, 26. Mar 15, 18:29

Roger L.S. Griffiths wrote:@Luanda: If you don't actually own nor play the game yourself as some of your recent posts seem to imply how can you know anything of substance about the way the game currently performs?

I am guessing you are basing your comments on recent experience with the X free-to-play period on Steam?
you are right

Goobers
Posts: 337
Joined: Sun, 23. Oct 05, 14:48
x4

Post by Goobers » Thu, 26. Mar 15, 22:20

Roger L.S. Griffiths wrote:@Goobers: I don't think your case proves much related to what Luanda has been referring to. You are both talking about differing circumstances.

You appear to be talking about flying through a tracker mine field and having (lots of?) them follow you, Luanda was referring to the drop in frame rate when in FP mode.
Circumstance is different, but the engine processing it isn't.

I was trying to show that, even in VISIBLE space, where clearly there is a GPU load, it's the CPU that becomes bound. Not because it's processing all the visible mines, but because it's handling the physics of everything around.

Now, you're right in that much of what we're saying here is basically guessing, but would think hearing weapons fire on the hull while we're docked would imply that the things in-zone are still occurring outside of the station. Something you've already mentioned, if it gets destroyed while we're docked, game over. So then, physics is still being processed on pretty much everything around you... An "invisible" CPU load. Tacked on to however it processes the intererior (to avoid clipping?).

And while one would assume that the GPU has less work in the interior, frame rate isn't only affect by things we assume only needs to be handled by the GPU... Since its workload also depends on data from the CPU, in particular, the physics processing thread... A stall/overload there can starve the GPU of what it needs to process.

Scoob
Posts: 10011
Joined: Thu, 27. Feb 03, 22:28
x4

Post by Scoob » Thu, 26. Mar 15, 23:35

Just an observation re: what exactly is "In Zone" - it's a little more than you'd think, i.e. NOT just what's in Zone necessarily, as daft as that sounds, and I wonder if this impacts performance negatively.

For example, sit in your nice empty Zone and request guidance to one of your ships in another Zone in the same sector. It'll be highlighted on your HUD as you'd expect. Click said highlighted ship icon and tap F3 - there you are viewing one of your ships externally though it's in another Zone completely. Note how the entire Zone is fully rendered as if you were there.

While doing this, isn't the game technically rendering TWO Zones "live" all of a sudden, with all the physics etc. that implies? Or, was it actually doing this all along? Not rendering to screen of course, but calculating a physically accurate Zone.. I do wonder if "distance from player" could be tweaked some and viewing remote zones many KM away, nice as it is, implies the game is doing more work than it need be.

For the record, my 2500k @ 4.7ghz is rarely taxed and usually shows a nice, even load over all four cores. My GTX 680 @ 1.2ghz (one of two, but the 2nd can be discounted of course) will quite often hit 99% load, though this is invariably accompanied by decent FPS, around 55-60. However, every so often - usually after long play sessions - I get a situation where the FPS drops, but both CPU and GPU utilisation also drops, so something is going on there certainly. Usually the game is in between those two states, so I'm not getting 60fps, but nor am I seeing high GPU usage.

I'm in-game now, in a busy system with three large stations, a lot of ships and the ever present mass traffic. I'm seeing 40-41fps as I sit in space and the sim runs around me. I consider this a passable fps, though it does give me a headache if I play too long. My settings are Ultra @ 1920x1200 with 2x AA. However, my system does not appear to be particularly pushed, despite the less than optimal FPS (I wantz 60!! :)) with my CPU sitting at between 55 and 57% load total - nice and even over four cores - and my GPU is hovering around 60-80% GPU load. Game is using 3.6gb currently and I've been in this session for about 30 mins or so since my last load.

As an aside, I have played with forcing SLI, which MASSIVELY helps my FPS, until that is a PiP is displayed then it tanks to below single GPU levels, making forcing SLI somewhat pointless. I note that the CPU has to work a little harder in SLI, but it's still not particularly pushed, yet my FPS increases a LOT, PiP issue aside.

Just some observations, can't comment on ES's coding, though a LOW FPS paired with LOW resource usage does strike me as odd. Additionally, varying settings from Ultra all the way down to poo makes very little difference to fps when I'm experiencing particularly low FPS moments. As mentioned a number of times since launch, the game does not seem to work as well on better hardware as one would expect, given the performance differences of the hardware. Things ARE improving though.

Edit: it took me a while to type this, since I submitted it, even though I've not moved, my FPS has dropped to ~32fps while my CPU usage remains the same and my GPU usage has dropped somewhat on average. Nothing obviously different in the local Zone, just the usual movement of ships.

Scoob.

P.S. Selfish request, but I wish ES would get PiP playing nice in SLI - the game really is lovely to play with it forced on...until a PiP appears... :)

Goobers
Posts: 337
Joined: Sun, 23. Oct 05, 14:48
x4

Post by Goobers » Fri, 27. Mar 15, 01:29

When your frame rate drops, did you check the task manager graph of CPU usage?

The other day, prior to turning off HT, I had the game's exe set "affinity" to only one core, promptly maxed out... no surprise.

Set to two cores, not completely maxed out... But fairly high.... An oddity appeared when you induce a frame rate drop... The usage of the two would alternately spike to 100% and then drop to 0%. When one spikes, the other drops. It looked as if you could cut one graph, flip it over and fit exactly on the other graph.

Still with two cores, I quit and restarted the game to do another test run... The overall usage went up during the spike/drop... Instead of dropping to 0%, it only dropped to about 40% or so. Even another run afterwards seemed to show the same ~140% total between the two.

At three cores, it fluctuated too, but it was harder to match, unlike the pair.

After that, with four or more cores, another oddity appeared... Despite allowing it to use more than three cores, only three cores showed heavy usage, even during the frame rate fluctuation. Now, this might have more to do with Windows "remembering" usage pattern or something until reboot. Because if you saw my "stable" usage pic that posted earlier in the thread, you'd see all six cores with moderate utilization (by then, I had turned off HT).

Of course, because the other cores were idle (prior to disabling HT), task manager only reported low CPU usage the entire time.

Snafu_X3
Posts: 4472
Joined: Wed, 28. Jan 09, 15:14
x3tc

Post by Snafu_X3 » Fri, 27. Mar 15, 01:56

Scoob, I'm not a GFX freak (I can't afford it!), but is it possible that the PiP is still using legacy (single-core, single thread) code? This would STM to be an adequate explanation.. & may go some way to explain why we're 'locked out' of control while the conversation is taking place..
Wiki X:R 1st Tit capping
Wiki X3:TC vanilla: Guide to generic missions, Guide to finding & capping Aran
Never played AP; all X3 advice is based on vanilla+bonus pack TC or before: AP has not changed much WRT general advice.

I know how to spell teladiuminumiumium, I just don't know when to stop!

Dom (Wiki Moderator) 8-) DxDiag

Goobers
Posts: 337
Joined: Sun, 23. Oct 05, 14:48
x4

Post by Goobers » Fri, 27. Mar 15, 02:07

Snafu_X3 wrote:Scoob, I'm not a GFX freak (I can't afford it!), but is it possible that the PiP is still using legacy (single-core, single thread) code? This would STM to be an adequate explanation.. & may go some way to explain why we're 'locked out' of control while the conversation is taking place..
Yeah, that's seriously annoying... Not fond of the locked out controls bit.

User avatar
TruePikachu
Posts: 51
Joined: Tue, 3. Mar 15, 01:51
xr

Post by TruePikachu » Fri, 27. Mar 15, 07:52

...woah a lot happened while I was gone...

Right now, my best idea for how the FP mode could be optimized would be to split up the stations into chunks, and only render what chunks would be visible from where the player is. I know that, for instance, the Source engine supports this somewhat (and a number of GMod maps utilize the functionality to reduce lag). Basically, it would mean that only one or two "hidden" sections of the station would go on to be rendered (for line of sight calculation of what polys actually get drawn, and few to none actually would pass) in comparison to the entire thing. (I can't recall what the name of the technique is, but I remember it being used even way back in Super Mario 64)


On a completly unrelated note, I rolled back my graphics driver to one that is 2-3 years old (instead of months - don't ask), and nobody would talk to me in my quicksave from X (except for one captain) - similar to how you can't do general chat with plot NPCs. Thankfully, my autosave from about 30 minutes before the quicksave (in comparison to >3 days time the file has) didn't have this issue.

User avatar
Sam L.R. Griffiths
Posts: 10522
Joined: Fri, 12. Mar 04, 19:47
x4

Post by Sam L.R. Griffiths » Fri, 27. Mar 15, 08:18

@TruePikachu: What you are talking about (wrt the Source engine) is generally what I would consider "Culling" in general. Culling covers a multitude of techniques for deciding what is and is not added to the rendering pipeline as well as what parts of objects are rendered when added, the problem is that depending on the complexity of the environment, the way it is structured, and the methods of culling employed it can be more expensive to cull things than rendering the culled objects themselves. Some culling methods may only work if the environment is structured in a certain way, others are more universal but may be more CPU expensive.

Guaranteed optimal culling of objects is a bit of a "holy grail quest" for large complex free movement 3D worlds, but personally I think Egosoft are doing pretty well with their current implementation (it would be better if there was less object and LOD popping though).
Lenna (aka [SRK] The_Rabbit)

"Understanding is a three edged sword... your side, their side... and the Truth!" - J.J. Sheriden, Babylon 5 S4E6 T28:55

"May god stand between you and harm in all the dark places you must walk." - Ancient Egyption Proverb

"When eating an elephant take one bite at a time" - Creighton Abrams

User avatar
TruePikachu
Posts: 51
Joined: Tue, 3. Mar 15, 01:51
xr

Post by TruePikachu » Fri, 27. Mar 15, 18:12

Basically, what I'm referring to is that a station can be considered as partitioned into a number of rooms (not all of which have doors connecting them - hallways also work). From wherever the player is, only a portion of the station is visible; the specific culling method doesn't even pass the rooms which could not be visible to the renderer proper. If you are in a standard Albion commercial port, you can't see the trade floor from the enterance, from the office, from the room near the unblocked section of stairs leading to the office, etc. But in the current setup, if you are facing the direction of the trade floor (e.g. by looking up), I believe that the render engine still believes there is some possibility of being able to view the downward-facing polys from the trade floor, even though there is technically a big chunk of station in the way.

J3ANP3T3R
Posts: 126
Joined: Sat, 14. Mar 15, 15:16

Post by J3ANP3T3R » Tue, 14. Apr 15, 08:32

try having 50 or more player owned ships running their own trade or mining scripts.

Post Reply

Return to “X Rebirth Universe”