Balkans Theater Bad FPS
-
This post is deleted! -
If using Win10 you can activate the GPU usage in TaskManager to get a better gauge of the actually GPU load, and not just the memory. Right-Click one of the column headers in the processes tab and select GPU. Will also display the full performance tab in the Performance Tab, which includes GPU, Memory, and Hardware Accelerators.
Nice! But I don’t have GPU monitoring on my TM, maybe missing some Windows update (Although I updated windows ~2 weeks ago, I usually keep windows update disabled and enables it when I want to update).
However, Process explorer is good enough for that kind of monitoring. -
This post is deleted! -
Balkans theatre generally has a lot more 3D objects than KTO as well.
KTO has 2693 objectives. Balkans has 2956, that a difference of 263 objectives. That’s not a lot more and isn’t the cause of FPS drops!! Balkans used to have over 7000 objects, but no longer.
So I believe too much 3D objects and units, cause this FPS drop.
Yes, there are more units in Balkans as compared to the campaigns in KTO.
Double in one cam file 1812(Balkans)-906(Korea), almost triple in another cam file 1363(Balkans)-576(Korea) and over triple in the other cam file 1747(Balkans)-523(Korea). This is probably the second biggest cost of FPS in Balkans.
But the biggest problem, and this is the root of the FPS issues, is the number of Squadrons.
Balkan’s average amount of Squadrons in the 3 campaigns is 280!! That’s a CHIT load.
Korea’s average amount of Squadrons in it’s 3 campaigns is 100. Almost 60% less than Balkans.
Inland taking off is crazy, but once out in the wide open, over the ocean I’m sure you might get a surge or two of a little better FPS :lol:, but it’s not going to be much with all the aircraft not only taxing to take off but in the air everywhere.
Then throw on top of that JanHas models and there you have it.
Balkans is a bigger theater.
Uh, NO……Bigger than what?? Balkans is a 64 segment theater, same as Korea!
As been said already, it’s the number of objects that can make the most difference.
Not in this case. It’s the huge number of units combined with the JanHas stuff and the inordinate amount of aircraft squadrons. Other than that, the building objects in Balkans are pretty much stock BMS. And the terrain texture are similar in size to KTO.
Of course you may be speaking in general terms, i.e., building objects + unit + aircraft??
Now you know the rest of the story!!!
C9
-
So, if gu and sqd numbers could be reduced, we can expect a smoother cam as Korea ones?
-
So, if gu and sqd numbers could be reduced, we can expect a smoother cam as Korea ones?
I’m pretty confident that would be a yes!!!
Already parring it down, will have something soon.
Of course you’re probably gonna check it too.
C9
-
This post is deleted! -
Objectives can vary in size from 1 feature to 255, Ground units and flights are the real magic number.
Try a TE with 500 squadrons and only 3 flights and you’ll get no FPS issues. Try the TE with 3 Squadrons and 60 flights, different story.
I would focus more on the Ground Units than Air. Particularly Ground units that use more than 8 of the available 16 element slots
You’re not telling me anything I don’t already know and understand.
For anyone who understands the makeup of units, everything you posted is a given.
In a campaign setting, everyone should know and understand that a Squadron ends up breaking into Packages and flights.
So I didn’t feel the need to break it all down to that level.
I’ve dev’d on Balkans for years. Only one time besides now has this problem with FPS been present in the Balkans Theater. The first time was when the theater had over 17,000 objects(ives). Once that was parred down, everything ran fine.
Now, in this current iteration with a lot less objects(ives), a huge amount of Squadrons were added, with the majority being active at start up.
That is the problem, the combined things you post, amount of slots being used, mathematical calculations, etc., is it a part of it, sure, but like I said, Balkans with a ton of object(ives) had well know FPS problems, when scaled back it ran fine. Then the introduction of a huge amount of Squadrons, and we’re back to the same square.
C9
-
I dont have it installed - but just a wild thaught……what about textures? I think Balkan has full texture slot(4096) of hi-res tiles (2048x2048? or 1024x1024?) while my Korea install tiles are 512x512 (and some sets are empty in texture.bin IIRC).
I think models complexity, number of object and their polycount inside objectives, number of units, *.cam complexity etc - everything is relevant… but together with hi-res textures it can slowdown your FPS twice…
-
Also, I responded to your post as you stated Balkans was a bigger theater. Which it is not. You did not specify you were talking about usable land mass, otherwise you would have said that originally!!
C9
-
This post is deleted! -
other people read these too who don’t dev theaters or understand how it all works. Even many who DO work on theaters don’t really understand it all. So someone working on another theater somewhere can benefit from breaking it down.
I understand that and REALLY agree with you about some current people who are actively deving do not understand, which makes me wonder!!! What do I wonder……Not going to get into that!!!
C9
-
but together with hi-res textures it can slowdown your FPS twice…
Yes, but in the normal download of Balkans they are all 512x512. But you are right about hi-res.
Now, to what degree the load would be, saving the textures as DXT1 vice DXT3/5(and/or mipmapped), would be better answered by a Techo-Wiz like MorteSil. I know it does make a difference though.
C9
-
This post is deleted! -
Mipmaps are a must have for terrain textures and generally every “art” texture besides maybe cockpit. Without mip maps the terrain will suffer from very annoying shimmering on the far areas due to great down scaling.
If textures are loaded in chunks instead of on demand, it improves performance considerably.
Terrain textures are loaded (and unloaded) per each terrain sector that is coming into view. But then a draw call is needed for each texture (Some textures are of course tiled on many tiles), so the more textures the theater has, the more potential of loosing performance due to draw calls. For example, a set of 2048 2048^2 textures in a theater will probably rendered faster than 4096 of 512^2. Of course what counts most is the number actually used in a frame, but it makes sense that a theater with more textures will require more draw calls per frame, in average.
Texture arrays not available for DX9 so…
-
If using Win10 you can activate the GPU usage in TaskManager to get a better gauge of the actually GPU load, and not just the memory. Right-Click one of the column headers in the processes tab and select GPU. Will also display the full performance tab in the Performance Tab, which includes GPU, Memory, and Hardware Accelerators.
I know this, my GPU isnt even using half of its capacity(50%), The engine just cant utilize what you have because of its age and DX9.
-
I just want to add seeing as the discussion is trying to explain that balkans has more of this and more of that, this is not a hardware issue, Falcons engine cannot utilize your modern hardware full potential, if it did there wouldnt be FPS issues. Your CPU isnt being over utilized as its running on 1-2 cores max. GPU isnt even breaking a sweat as the engine cannot utilize it to the fullest. In short falcons engine is not able to use all that you have.
-
I just want to add seeing as the discussion is trying to explain that balkans has more of this and more of that, this is not a hardware issue, Falcons engine cannot utilize your modern hardware full potential, if it did there wouldnt be FPS issues. Your CPU isnt being over utilized as its running on 1-2 cores max. GPU isnt even breaking a sweat as the engine cannot utilize it to the fullest. In short falcons engine is not able to use all that you have.
???
1-2 cores ain’t actual. The code as said ain’t optimized on this and it’s on auto mode and OS utilizes as it sees fit. So if u have 4 cores and the OS says use the 4 cores for this it will.
The engine can’t utilize the GPU to the fullest? were does this come from?U mean there that optimization is not optimal with your last sentence. well I don’t think there is any game or sim out there that has ever done that on the multiplatforms that exist and operate.
From xp to win10 from intel to AMD from Nvidia to AMD…Run Falcon with Mono
also use GPU and CPU log while flying… and you can observe the load for your system.
The params are so many that your argument ain’t that simple as u put it.History though and experience proves otherwise.
ITO was a God of FPS killer. Ostsee is also, but semigod :lol:
ITO was cause of the extensive objectives number. Once that got down to a reasonable number things where sweet as honey.
Ostsee now pusses on the Gfx arena and already many have issues regarding this. Its a small theater thus few objectives (Not sure I speculate on this cause of the size) but many complain of the fps and there are some models in uber high detail that could bring VGA’s to their knees.I can give you a theater with just one objective only and get me an 1080ti 11gb and I can bring her to her knees with Falcon. Just one objective and u will have a slideshow with max 5 fps.
Give me a 20cores new intel CPU and I can give u a theater that will bring it down to it’s knees. Even with optimization from Microsoft coders and intel all together. even with stripped OS specifically for Falcon.So if God doesn’t go to the mountain then the mountain goes to God.
Finding the sweet spot is the goal here. It’s not just the code. The code says throw whatever u have and I’ll calculate it. So which is the blame?
Sure code has it’s issues but don’t think that miracles can happen. Falcon code and with the updates from BMS team is in very good condition. It’s not by luck that it carries the nickname of Benchmarksim from the very beginning of Falcon.You can load it with so much data that will have to calculate the engine (AI and Campaign sqdrns etc) and gfx details that it can bring whatever hardware to it’s knees. It’s a 98 code thing and still kills the hardware. It’s not just cause of pure coding. Don’t think if the code will be uber optimized it will be like butter to load actual objectives and squadrons and whatever in it’s engine. It will be just a slideshow.
-
Im not dissing falcon as a game its the preferred sim above all others for me atleast but the reality is that it does not use all resources no matter what is said, DX9 is limited. The engine and code are probably optimized to its fullest but when having a system with 32 cores and a gtx 1080ti or whatever that will bring any calculations let alone a game to its knees and it struggles only on falcon then there is a falcon issue. Heck its not even using all my threads on my CPU not even close.
-
Im not dissing falcon as a game its the preferred sim above all others for me atleast but the reality is that it does not use all resources no matter what is said, DX9 is limited. The engine and code are probably optimized to its fullest but when having a system with 32 cores and a gtx 1080ti or whatever that will bring any calculations let alone a game to its knees and it struggles only on falcon then there is a falcon issue. Heck its not even using all my threads on my CPU not even close.
That is correct and not anything new. Falcon, although being multi threaded has too much restrictions currently so not all the HW capability can be utilized, in fact a pretty small percent of it will be, for a modern CPU.
Regarding rendering, Although not fully utilized, GPU is still important, as the time it is processing, there is a difference if it will do it slower or faster, that will affect frame time.
Just to give you a short example of what’s happening currently:
Only for terrain, we have in a given frame ~1000 draw calls. Because of the number of textures participating in a frame, each texture requires a draw call, draw calls has API overhead and so it means slower performance. Same goes for 3D models, that’s the main reason why all new 3D models coming from BMS will use 2 textures only (1 for body and other stuff, usually large, and a smaller one for transparent stuff). Number of textures will reduce number of draw calls required. For a modern GPU it is less important if it will sample a 1024 or 4096 texture than to get more draw calls and sample more textures while at it.