Jump to content

Recommended Posts

Optimization. Everybody in many different threads are always bringing this word up and referencing it as some nebulous future occurrence that will eventually happen to Squad and how everything will be so great. But again what does optimization really mean? Better yet, what does it mean to you, ergo what is your perception of how "optimization" will manifest itself in Squad and you will view it on your monitor?

 

Let me explain. The reason I bring this up is lately people are showing up and making a special point of saying EFT & PUBG does this and that better or EFT & PUBG looks better, so why can't Squad do such and such etc? Obviously these kind of questions & comparison/contrasts with other games are utilizing defective logic and are little more than a trivial nuisance.

 

However, this got me thinking. So I dabble with the Squad UE4 editor in my free time and basically just do a lot of testing related to the vanilla maps themselves and their assets as they impact frame rates. Bottom line, first I do a control standard where I join an empty server online and then I note my average fps on a pad. Next I load the same map from the regular game in local mode and again note my fps. Then I again load the map from from UE4 in standalone mode and record my fps. (I know this is getting tedious, bear with me here) Now I delete every single asset, foliage and spline from the same map and record my fps. 

 

The results aren't really that surprising as you can imagine. On completely empty Chora, Yeho, Goro & Kohat maps I'm getting well over 100 fps. But then I did something interesting to further push the limits of my testing. Just out of curiosity I purchased all the Pure Polygons Procedural Nature Packs from the Unreal Marketplace and changed the material instance of the empty landscapes to 8k textures. Logically my fps dropped below a hundred but the landscape looks absolutely stunning especially at higher settings.

 

So the conclusion I've come to is I'm not sure we can have our cake and eat it too. There needs to be a trade-off somewhere especially as the boundaries on these same maps will probably be increased for aerial assets. So in my mind optimization of Squad means reducing the amount of buildings, foliage & splines plus further reducing the landscape texture quality coupled with increasing the map boundaries in order to get playable frame rates. Less is more.

 

 

Share this post


Link to post
Share on other sites
banOkay   

No point benchmarking this when actual bottlenecks are completely elsewhere. Optimization will be good when performance on full 100 man servers is similar to an empty server. That will only matter when the game doesn't look like a 2010 game though.

Share this post


Link to post
Share on other sites
SHO-SHIN   

Not being a smart ass or directing at OP but for the thread:

Optimisation
The action of making the best or most effective use of a situation or resource.

Those of us that follow Squad's alpha development are aware of at least 2 major optimisation passes, and with each release comes minor optimisation work. This is to keep the game reasonably playable for a large number of people, who want to play (sorry test).

For me, the big deal here is well what is 'optimised' to a standard that's reasonable, for most people and for the kind of project Squad is.

Putting aside the issues with older AMD CPU's I think this is a target for each release to go for.

45fps lowest in 1080p.
on full servers, across all official maps

CPU: 6500 or higher 3.6Ghz turbo clock 4 core
GPU: 1060 3GB VRAM or higher
RAM: 8GB 2644Mhz or higher

I don't feel we are actually that far away from this situation but I run much more powerful hardware so it's hard to tell.

Squad at 45fps or higher is absolutely playable.

Share this post


Link to post
Share on other sites

Definition as applied here:

This is how I view it for a computer program.  You could have graphic optimization, thread optimization, sound optimization, network optimization,  all related to instructions in a computer program that runs on your hardware that is capable of running it optimized.   :)

 

www.dictionary.com/browse/optimize
  1.  

Computers. to write or rewrite (the instructions in a program) so as to maximize efficiency and speed in retrieval, storage, or execution. 4. Mathematics. to determine the maximum or minimum values of (a specified function that is subject to certain constraints).

 

 

Share this post


Link to post
Share on other sites
4 hours ago, banOkay said:

No point benchmarking this when actual bottlenecks are completely elsewhere. Optimization will be good when performance on full 100 man servers is similar to an empty server. That will only matter when the game doesn't look like a 2010 game though.

I'm not sure how these "bottlenecks" you speak of fit into my research but I'd imagine you're referring to the inclusion of the 80-100 online players on the server and how the game interacts with them. I'm pretty sure that my testing and that element aren't separate issues though. Granted, everything we as players view on our screen resides on our hard drive though so I do see your point as everything else relates to the constant stream of uploads and downloads from each players particular connection and how all those actions dovetail together for fluid gameplay.

 

So yeah, I would totally accept a 100 player super low resolution Squad with reduced assets on a huge map that consistently ran at 60fps with zero warping, hiccups and lag over a much smaller 40 player eye candy Squad any day of the week. I guess thats my whole point.   

Share this post


Link to post
Share on other sites

If you wanted to test UE4, why would you test Squads implementation of UE4 over UE4 itself? Because if you wanted to actually see how your assets looked in engine or see how good you can make a scene look without the fps bogging down that would be the path.  It's not always the Engine fault when something goes wrong. It a lot of the time, it has to do with how the person implemented a feature or core systems. A big thing people seemly forget about UE4 as well, is that source code is free for developers. So when they need to work on the underlying problem; they can.

 

To addressing your example with pubg.Pubg or bluehole has probably spent more time optimizing their work, and probably has more educated staff to tackle the problem of optimization. And it clearly shows, when you account for the assets squad has, and pubg. It's possibly  a 5x increase in individual assets.

Edited by godamntwitch

Share this post


Link to post
Share on other sites
1 hour ago, godamntwitch said:

If you wanted to test UE4, why would you test Squads implementation of UE4 over UE4 itself? Because if you wanted to actually see how your assets looked in engine or see how good you can make a scene look without the fps bogging down that would be the path.  It's not always the Engine fault when something goes wrong. It a lot of the time, it has to do with how the person implemented a feature or core systems. A big thing people seemly forget about UE4 as well, is that source code is free for developers. So when they need to work on the underlying problem; they can.

 

To addressing your example with pubg.Pubg or bluehole has probably spent more time optimizing their work, and probably has more educated staff to tackle the problem of optimization. And it clearly shows, when you account for the assets squad has, and pubg. It's possibly  a 5x increase in individual assets.

Respectfully speaking it seems as though you're somewhat unware of the process and how UE4 handles assets. Those with more knowledge of UE4 can correct me if I'm wrong here but adding new content to the Squad UE4 in a proper fashion requires you to first open up the project in normal UE4. Then and only then can you "migrate" these assets to your other particular projects. In this case I migrated the content to the new Unreal Tournament as well as Squad.

 

Suffice it say so it's a given that I extensively tested out the 8k content in 1st person mode in the standard UE4. However, I also fashioned an identical outdoor forest level in Unreal Tournament as well. That said, the results were always similar to my findings in Squad. Frame rates drop accordingly to map size and asset quality & quantity.

 

As far as PUBG goes in no way was I using that game as a benchmark. If you go back and read what I said I simply stated that I was referencing how several times now random folks have appeared here (often their first posts) and tried trolling this community by offering comparison/contrasts with other games.

 

In addition, I think it's inappropriate to be condescending to the OWI development team by making the inference that another studio has a "more educated staff". Honestly I'm not sure how that's even relevant to the topic.

 

So yeah, in conclusion your vague supposition regarding the asset content of Squad vs. PUBG seems a bit confused and ambiguous as well.

 

 

 

 

Share this post


Link to post
Share on other sites
1 hour ago, Zylfrax791 said:

 

 

In addition, I think it's inappropriate to be condescending to the OWI development team by making the inference that another studio has a "more educated staff". Honestly I'm not sure how that's even relevant to the topic.

 

So yeah, in conclusion your vague supposition regarding the asset content of Squad vs. PUBG seems a bit confused and ambiguous as well.

 

 

 

 

It's not disrespectful to OWI when they haven't developed a standalone themselves, while bluehole has. To how it's relevant to the topic, i'd say it's probably one of more relevant things when it comes to game development. When you have a team of programmers that is ready to redesign an engine to there liking, it's going to run a lot faster/better than a team that only has a few programmers.It's kinda like what do you expect?

1 hour ago, Zylfrax791 said:

 

Suffice it say so it's a given that I extensively tested out the 8k content in 1st person mode in the standard UE4. However, I also fashioned an identical outdoor forest level in Unreal Tournament as well. That said, the results were always similar to my findings in Squad. Frame rates drop accordingly to map size and asset quality & quantity.

 

 

 

First off why 8k content?Is there an actual point? And is the average poly count of each of the assets? as well as your average in those scenes.  And it's completely understandable that you may not be able to get everything out of the engine you may like.  A lot of the time developers get engines, it's not designed to do those things, so you redesign features to allow you to get there. That's one of the reasons why ue4 is designed around whole open source model. 

 

1 hour ago, Zylfrax791 said:

 

 

As far as PUBG goes in no way was I using that game as a benchmark. If you go back and read what I said I simply stated that I was referencing how several times now random folks have appeared here (often their first posts) and tried trolling this community by offering comparison/contrasts with other games.

 

 

 

 

The example of PUBG isn't a bad example. Because when you are pushing out a graphics complexity that is considerably better than squad. Then it sorta showcases the engine really isn't the fault. I also really don't think it's condescending to point out the obvious.The obvious is Pubg is a big open world battlegrounds game that is capable of taking 100 players, and put them on the same map; while giving relatively decent fps. It ain't perfect, in terms of optimization. But it's still a whole of a lot better than squad. So that's why it's used as a point of comparison.  

Edited by godamntwitch

Share this post


Link to post
Share on other sites
21 hours ago, SHO-SHIN said:

Optimisation
The action of making the best or most effective use of a situation or resource.

Squad certainly doesn't use the full resources of my PC so I guess optimisation is still required. Just a matter of priority. No point optimising things just to add stuff and have to re-optimise again when the game is still playable for most.

 

Much has been made of the poor animation system we currently have in the past I hope just changing it in v10 will bring performance rewards. I believe most people playing Squad get decent fps on empty / low pop servers but once it fills up and there are more assets built their fps drops significantly. I'd really like to know why that is and what the devs could do about it.

 

Comparing Squads performance to PUBG is valid imho. Both games have a high player count and large maps with long view ranges and run on UE4. Where they differ is as a Squad maps plays through the performance goes down but with PUBG it improves. Over the course of a PUBG round you have fewer players and you don't have any assets being built either. PUBG performance still leaves a lot to be desired and Blueholes game is a lot simpler than that being produced by OWI who are also a much smaller team. PUBG only have 1 map, at the moment, to deal with so optimising it is far easier for them. Hardly the same level of variety of vehicles as Squad to deal with either. Although we can compare performance we can't compare speed of development as that would be totally unfair to OWI.

Share this post


Link to post
Share on other sites
LugNut   

I don't profess any knowledge, skill or background in engines or code, but if you want to crush your fps, go into Jensens on a pub server and start building assets, especially a zillion radios, it'll run my rig down into single digits. So, it's not just the static meshes on the map, it's the players and all the placeable objects that your computer has to keep track of that really place a load. 

Share this post


Link to post
Share on other sites
2 hours ago, LugNut said:

I don't profess any knowledge, skill or background in engines or code, but if you want to crush your fps, go into Jensens on a pub server and start building assets, especially a zillion radios, it'll run my rig down into single digits. So, it's not just the static meshes on the map, it's the players and all the placeable objects that your computer has to keep track of that really place a load. 

Certainly that's correct. If you recall at one point the developers had a series of matches on a large empty desert terrain with a much larger quantity of vehicles. I never did hear any feedback on how that actually went. 

Share this post


Link to post
Share on other sites

As it seems squad seems to cpu-bottlenecked and doesn't utilise multithreading very well. My hope is that there will be a lot of stuff left that can be parallelized and off-loaded to other cores. That would vastly improve the situation for most people because it seems most people have a lot of empty cores but full single thread load.

I doubt the engine or assets for it could be very optimized. Those guys who made it are experts for sure. More the workload and the way that is distributed to the cpu. Mapping could of course be optimized though.

Share this post


Link to post
Share on other sites
2 hours ago, SpecialAgentJohnson said:

As it seems squad seems to cpu-bottlenecked and doesn't utilise multithreading very well. My hope is that there will be a lot of stuff left that can be parallelized and off-loaded to other cores. That would vastly improve the situation for most people because it seems most people have a lot of empty cores but full single thread load.

I doubt the engine or assets for it could be very optimized. Those guys who made it are experts for sure. More the workload and the way that is distributed to the cpu. Mapping could of course be optimized though.

Is the single core specific to just the Squad game logic or is it a trait of UE4?

Share this post


Link to post
Share on other sites
LugNut   

I have 15 other cores sitting and twiddling their thumbs while one is barely keeping up, so I'd love to see that addressed at some point. 

Share this post


Link to post
Share on other sites
Psyrus   
30 minutes ago, LugNut said:

I have 15 other cores sitting and twiddling their thumbs while one is barely keeping up, so I'd love to see that addressed at some point. 

It's quite a simplistic analogy, and not necessarily aimed at you as you may already be aware, but there are some parts of the game that will never be able to be parallelized (is that a word?)... 

 

Explain how the job of recording the winning lottery numbers in real time (as they are read out) onto a single piece of paper could be parallelized among 16 people. 

 

Or how about having two tasks:

- Recording the winning lottery numbers 

- Looking through a database to find who has won money

__________________________

 

As we can see, if the first task is the only one, parallel computing/work is meaningless, as it is a sequential task... but if we had to do something with that information, we could easily have 16 people take down the numbers, and each have a pre-set part of the database (1/16th) that they search through and report any numbers back to the "main" worker who would then compile their separate 16 results. At the end though, the compilation is still bound by that single worker waiting for everyone to finish before the full data set can be returned. 

 

With something complex like a game engine, things like the UI can probably be offloaded, but a lot of the actual game-logic is interdependent and thus very difficult to parallelize. With any luck though, the devs (OWI & EPIC) can find some nice places to offload work to other threads. 

 

On a side note, I have never tried multithreading something as intricate as game-logic, it may be much easier than I think... hopefully someone more knowledgeable can weigh in :) 

Share this post


Link to post
Share on other sites
1 hour ago, Psyrus said:

It's quite a simplistic analogy, and not necessarily aimed at you as you may already be aware, but there are some parts of the game that will never be able to be parallelized (is that a word?)... 

 

Explain how the job of recording the winning lottery numbers in real time (as they are read out) onto a single piece of paper could be parallelized among 16 people. 

 

Or how about having two tasks:

- Recording the winning lottery numbers 

- Looking through a database to find who has won money

__________________________

 

As we can see, if the first task is the only one, parallel computing/work is meaningless, as it is a sequential task... but if we had to do something with that information, we could easily have 16 people take down the numbers, and each have a pre-set part of the database (1/16th) that they search through and report any numbers back to the "main" worker who would then compile their separate 16 results. At the end though, the compilation is still bound by that single worker waiting for everyone to finish before the full data set can be returned. 

 

With something complex like a game engine, things like the UI can probably be offloaded, but a lot of the actual game-logic is interdependent and thus very difficult to parallelize. With any luck though, the devs (OWI & EPIC) can find some nice places to offload work to other threads. 

 

On a side note, I have never tried multithreading something as intricate as game-logic, it may be much easier than I think... hopefully someone more knowledgeable can weigh in :) 

That's why I said "My hope is...". If there's not much that can be parallelized  (word dunno but you get the idea) then I guess we are in for much more meagre optimization results...

 

Still, I mean, if we have 1000 different bullet penetration calculations going on in one particular instant, maybe that wouldn't have to be sequential...? However, I guess only the devs can answer that one.

 

Please note also that offloading work to other threads is much more complicated and difficult to program because of all the sync problems, so it's kind of a tedious process, and maybe not something that you would want to do if a lot of stuff is still changing in major ways.

Edited by SpecialAgentJohnson

Share this post


Link to post
Share on other sites
eagon89   
7 hours ago, Zylfrax791 said:

Is the single core specific to just the Squad game logic or is it a trait of UE4?

 

5 hours ago, godamntwitch said:

Squad 

 

It's an Unreal Engine 4 "features".

As per others UE4 games:

 

http://gamegpu.com/mmorpg-/-онлайн-игры/fortnite-test-gpu-cpu

 

http://gamegpu.com/action-/-fps-/-tps/hellblade-senua-s-sacrifice-test-gpu-cpu

 

http://gamegpu.com/mmorpg-/-онлайн-игры/playerunknown-s-battlegrounds-test-gpu-cpu

 

even on Epic Games games:

 

http://gamegpu.com/mmorpg-/-онлайн-игры/paragon-test-gpu

 

http://gamegpu.com/action-/-fps-/-tps/unreal-tournament-test-gpu.html

 

But it seems a logic choice also for other games:

 

http://gamegpu.com/rpg/ролевые/kingdom-come-deliverance-beta-test-gpu-cpu

 

http://gamegpu.com/action-/-fps-/-tps/sniper-ghost-warrior-3-test-gpu

 

and there are other games that seems to use quite correctly the PC resource:

 

http://gamegpu.com/action-/-fps-/-tps/crysis-3-2013-retro-test-gpu-cpu

 

http://gamegpu.com/rpg/ролевые/the-witcher-trilogiya-test-gpu-cpu

 

http://gamegpu.com/action-/-fps-/-tps/doom-api-vulkan-test-gpu

 

http://gamegpu.com/action-/-fps-/-tps/destiny-beta-test-gpu-cpu

 

http://gamegpu.com/mmorpg-/-onlayn-igry/star-citizen-test-gpu.html

 

Personally I do not complain too much recently, I'm just waiting for this famous V10 and I always remember that they promise "optimisation" (whatever it is meant for anyone) with the Beta.

But to be honest, since the "one core" is a feature of the engine itself I don't think the dev's will improve the game over some point, especially if the idea is the "100 player on 1 server with a big map full of vehicle, bullet drop, penetration etc.".

Maybe (since we are still in alpha) is better to change the whole idea of the game and be less demanding, especially on the number of player, we could try to reach a compromise between backers/player and dev's; 64 player could be acceptable ?

 

https://mordhau.com/faq/#what-is-mordhau

 

Edited by eagon89

Share this post


Link to post
Share on other sites

Not everything in gaming can be processed in parallel efficiently by the cpu. I've seen many yt benchmarks that clearly show negligible performance increase past 6 cores and that's with latest titles like Ashes of the Singularity running DX12. Maybe in the future devs may learn how to develop code to take advantage of more cores. If you're going to be doing more than just gaming at the same time (streaming) then extra cores is really going to help out but for just gaming now and the near future 6 cores is enough.

Share this post


Link to post
Share on other sites
eagon89   
22 minutes ago, Psyrus said:

I'm not sure if I read the data properly, but it looks like the higher IPC 4 core CPU outperforms the 8 cores in that one?

 

Is exactly what I think, and is not only in Destiny but, for example, also in Hellblade or Playerunknown's.

Share this post


Link to post
Share on other sites
9 hours ago, eagon89 said:

 

 

It's an Unreal Engine 4 "features".

As per others UE4 games:

 

http://gamegpu.com/mmorpg-/-онлайн-игры/fortnite-test-gpu-cpu

 

http://gamegpu.com/action-/-fps-/-tps/hellblade-senua-s-sacrifice-test-gpu-cpu

 

http://gamegpu.com/mmorpg-/-онлайн-игры/playerunknown-s-battlegrounds-test-gpu-cpu

 

even on Epic Games games:

 

http://gamegpu.com/mmorpg-/-онлайн-игры/paragon-test-gpu

 

http://gamegpu.com/action-/-fps-/-tps/unreal-tournament-test-gpu.html

 

But it seems a logic choice also for other games:

 

http://gamegpu.com/rpg/ролевые/kingdom-come-deliverance-beta-test-gpu-cpu

 

http://gamegpu.com/action-/-fps-/-tps/sniper-ghost-warrior-3-test-gpu

 

and there are other games that seems to use quite correctly the PC resource:

 

http://gamegpu.com/action-/-fps-/-tps/crysis-3-2013-retro-test-gpu-cpu

 

http://gamegpu.com/rpg/ролевые/the-witcher-trilogiya-test-gpu-cpu

 

http://gamegpu.com/action-/-fps-/-tps/doom-api-vulkan-test-gpu

 

http://gamegpu.com/action-/-fps-/-tps/destiny-beta-test-gpu-cpu

 

http://gamegpu.com/mmorpg-/-onlayn-igry/star-citizen-test-gpu.html

 

Personally I do not complain too much recently, I'm just waiting for this famous V10 and I always remember that they promise "optimisation" (whatever it is meant for anyone) with the Beta.

But to be honest, since the "one core" is a feature of the engine itself I don't think the dev's will improve the game over some point, especially if the idea is the "100 player on 1 server with a big map full of vehicle, bullet drop, penetration etc.".

Maybe (since we are still in alpha) is better to change the whole idea of the game and be less demanding, especially on the number of player, we could try to reach a compromise between backers/player and dev's; 64 player could be acceptable ?

 

https://mordhau.com/faq/#what-is-mordhau

 

I would have appreciated benchmarks in English. But still i can find others. Here's what i found about Hellbade Senua's Sacrifice.

"The results here clearly show that in Hellblade: Senua's Sacrifice that the game operates at optimal levels when using 4 total CPU cores, with any increase in core/thread count thereafter yielding no further increase in performance."

 

https://www.overclock3d.net/reviews/software/hellblade_senua_s_sacrifice_pc_performance_review/8

 

It's extremely common for a dx11 title to have max 4 core usage. But it still doesn't equate to the usage of cores squad currently has. On top of that it's pushing out top of the line graphics.

 

The rest of your examples don't really make that much sense. One is a game that is rapidly improving it's performance, and is almost okay in terms of optimization(PUBG).While the other example is a game going for the cartoon-y look, and isn't pushing the bar whatsoever in graphically or even scale of game. It also doesn't have nearly as bad as performance as squad. 

 

Then when i go down to the examples of good usage. I see games like doom which use a total different api. And then i see star citizen which has had it's optimization "****ed"(sorry children close your eyes) for a while now. Then we can go on to destiny, and i actually go read benchmarks that are in english. I read " The lack of CPU performance scaling across multiple settings sort of makes you wonder what’s going on, and whether the final launch will modify this behavior."

 

http://www.gamersnexus.net/game-bench/3038-destiny-2-beta-cpu-benchmarks-testing-research

 

Crisis 3, i guess you got me there. But the game was created a century ago, making it not a good comparison.For the Whither 3 you're correct in saying the game benefits from an i7 with more cores. But where your wrong is that it's using pc resources correctly. Because if you actually check recent benchmarks with chips more than 6 or 8 cores you will see the Whitcher 3 doesn't use any cores past 6. 

https://youtu.be/ocwwaVGUFtk?t=4m16s

 

On a final note, if i wanted to cherry pick my best benchmarks, i would just throw out gears of war. Which scales amazingly across high cpu count, and different cards. 

 

 

 

 

 

Share this post


Link to post
Share on other sites
19 hours ago, Zylfrax791 said:

Is the single core specific to just the Squad game logic or is it a trait of UE4?

UE4 is fully capable of supporting and getting max out of modern CPU design, including multicore support (for now it's 8 threads from what I remember). Current bad CPU performance/usage is just about how Squad engine works.

 

http://kotaku.com/5477534/unreal-engine-4-still-a-long-ways-off

Originally posted by Mark Rein

[...]Unreal Engine 4 is designed for the day we get massively multi-core processors, [...]

Share this post


Link to post
Share on other sites
13 hours ago, Psyrus said:

I'm not sure if I read the data properly, but it looks like the higher IPC 4 core CPU outperforms the 8 cores in that one?

 

That's because the title only uses 4 cores. If he linked a benchmark in english it would say that.

Edited by godamntwitch

Share this post


Link to post
Share on other sites
Psyrus   
5 hours ago, godamntwitch said:

That's because the title only uses 4 cores. If he linked a benchmark in english it would say that.

If you know any english sites that test that comprehensively, I'm sure everyone is keen on you sharing it. In all my years I've never seen a single site with such a breadth of data. There is an automatic translation selector at the top right of that site anyway 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×