Performance build? ;)
Balmark
Join Date: 2002-11-01 Member: 3476Members, Constellation, Reinforced - Silver, Reinforced - Shadow, WC 2013 - Shadow
<div class="IPBDescription">1 build based on increasing performance?</div>Hey,
I'm one of these guys who kinda had to slow down playing due to my machine not really up to the task lately.
Have a mediocre machine, nothing like the specs people have been posting here..
Any chance you could put a developer on trying to optimise some of the code for a build? ;)
Lovin NS2.. but will probably have to upgrade before I can do much more :( and can't afford an upgrade for a good while.. new baby on the way to keep my first company ;)
/Bal
I'm one of these guys who kinda had to slow down playing due to my machine not really up to the task lately.
Have a mediocre machine, nothing like the specs people have been posting here..
Any chance you could put a developer on trying to optimise some of the code for a build? ;)
Lovin NS2.. but will probably have to upgrade before I can do much more :( and can't afford an upgrade for a good while.. new baby on the way to keep my first company ;)
/Bal
Comments
Without some bug squashing as well and onos annnddd jetpack.
hell, I don't even know what language this is all done in ;)
I think you don't quite understand what this short sentence entails in terms of extra workload <img src="http://members.home.nl/m.borgman/ns-forum/smileys/confused.gif" border="0" class="linked-image" />
<!--quoteo--><div class='quotetop'>QUOTE </div><div class='quotemain'><!--quotec-->"Any chance you could put a developer on trying to optimise some of the code for a build? ;)"<!--QuoteEnd--></div><!--QuoteEEnd-->
It might not seem like much, but in fact it would probably quadripple their workload, if not more. There is no magic fix to get NS2 running completely optimized to use in a separate "optimized" build. Besides, the thing with optimization is that the more you optimize, the code will get more complex and it will most likely affect other parts of the engine/game code. Resulting in exponentially more work you have to do to keep it all optimized and have it all play nice together.
But there have been significant improvements already, the dev team and community programmers are finding more and more things to optimize each day. It's the code and server/client communication, not the stuff that's in the game that are causing the issues on lower end machines
Where I am, we can pickup on alot of performance tweaks through code reviews, but I wasn't asking to do a full build on performance.. was just wondering if 1 person, for the course of 1 release concentrates on reviewing the existing code.. looking at the most commonly accessed stuff for little things like duplication of effort code, not talking about redoing existing frameworks or anything.
tbh I just want a new pc, just ranting :P
side note, is the server still restricted to only using 1 core? If so, changing that would hardly be throwaway code and would drastically improve performance? surely that's something that must be done and should be of very high priority?
Patience is a virtue, I tellz ya :P
Wish someone else would have thought of it first :P
Patience if a virtue alright, but I just don't want to see what happened with NS1 happening (loved NS1) .. it arrived too late (end of life of the old HL engine) and was plagued with performance issues that lost it alot of players early on.
meh .. I dont see the problem or why people gets their backs up when I'm suggesting something that is common practice.. I want NS2 to succeed.. I don't really care too much how it gets there.. my personal priority would be proper multithreading for server over new features, but I know I'm in the vast minority and I can deal with that :P ... my crappy machine for running the client is my own problem too I know.. nothing anyone can do about that... hmm or is there :P (new detail level .. '286' which only shows polygons :P )
They are always working on optimizations as well as new features.
But how cant i play it smoothly on my pc? The requirements are.. i dont know... gigantic.
i have a i7 2600K (3,4Ghz), Nvidia GTX 570 and 8 Gb Ram and an SSD. And iam still not able to play it on high details and 1920x resolution. I thinks that a big point why the servers are empty. But iam sure team already working on it.
I think it would benefit the game/community greatly in many ways if it was more accessible performance wise, but we will have to make do with the current situation for now.
<!--quoteo(post=1888310:date=Dec 4 2011, 09:07 AM:name=Balmark)--><div class='quotetop'>QUOTE (Balmark @ Dec 4 2011, 09:07 AM) <a href="index.php?act=findpost&pid=1888310"><{POST_SNAPBACK}></a></div><div class='quotemain'><!--quotec-->but I also know, someone who's just targetting performance in general, can run through alot of code quickly and apply alot of small changes..<!--QuoteEnd--></div><!--QuoteEEnd-->
Optimizing a lot of random little things does nothing but introduce weird and exciting new bugs.
<!--quoteo(post=1888310:date=Dec 4 2011, 09:07 AM:name=Balmark)--><div class='quotetop'>QUOTE (Balmark @ Dec 4 2011, 09:07 AM) <a href="index.php?act=findpost&pid=1888310"><{POST_SNAPBACK}></a></div><div class='quotemain'><!--quotec-->1 small change in an area that's used everywhere would have knock-on effects etc.<!--QuoteEnd--></div><!--QuoteEEnd-->
That's true. Those places are often called "hot spots". They're not necessarily where you think they are(hence profiling tools) and they're not necessarily called frequently.
Those kinds of optimizations are not trivial, but they tend to be manageable, bit-sized chunks. Like vectorizing a small function that loops over a lot of elements with SIMD intrinsics.
That works, and it can get you some performance, but it's just not where the big wins are to be had. The big wins are mostly structural redesigns and algorithmic changes and figuring out that you can not do something and still be OK(do hydras need to reconsider their target every tick? No, when they have just fired they can't fire again for some time and they can just chill out for a while. does the collision geometry for that egg need to have that detailed geometry or is it just a waste of performance and a hindrance to player movement?) or that you can precompute and cache something instead of computing it on the fly(hydras don't move and neither do enemy buildings; if a hydra and a building don't have line of sight due to static geometry you don't need to keep checking if its a viable target).
<!--quoteo(post=1888310:date=Dec 4 2011, 09:07 AM:name=Balmark)--><div class='quotetop'>QUOTE (Balmark @ Dec 4 2011, 09:07 AM) <a href="index.php?act=findpost&pid=1888310"><{POST_SNAPBACK}></a></div><div class='quotemain'><!--quotec-->hell, I don't even know what language this is all done in ;)<!--QuoteEnd--></div><!--QuoteEEnd-->
C++ and LUA.
The lack of performance really does diminish _every other piece of work_ in the game.
It was more in an attempt to let Max/Dushan/etc not need to context switch what they are working on in order to implement/resolve a different feature/bug in the game.
I totally understand the need to push forward with features and not hold the game up, I'm a developer myself and I sympathize.
What I am suggesting (if it sounds right to Max/Dushan) is to see if they could have a week or two to even investigate/profile/resolve performance problems.
I don't mean to undermine anyones work at all; rather having worked on projects (not a game engine!) myself where I needed to tackle problems like performance, I've always appreciated having it as a task to be completed, rather than just picking at the problem whenever I had free time etc.
Cheers