Possible performance boost for NS2
Martigen
Australia Join Date: 2002-11-01 Member: 2714Members, NS1 Playtester, Contributor, Reinforced - Onos
For those that don't follow Guru3D --
http://forums.guru3d.com/showthread.php?t=389072
See Cyberdyne's post (#18) for an easy to use tool: http://forums.guru3d.com/showpost.php?p=4816359&postcount=18
May or may not help, but given the discussion recently on NS2 performance if it does, then mores the better. I'm currently testing it though I have a pretty beefy system already (takes large firefights on Wooza's for me to drop below 60 normally).
http://forums.guru3d.com/showthread.php?t=389072
See Cyberdyne's post (#18) for an easy to use tool: http://forums.guru3d.com/showpost.php?p=4816359&postcount=18
May or may not help, but given the discussion recently on NS2 performance if it does, then mores the better. I'm currently testing it though I have a pretty beefy system already (takes large firefights on Wooza's for me to drop below 60 normally).
Comments
I remember back when I played stalker there was a mod that did the same thing as this, and it helped, but it was meant to help load times by putting more of the level into memory.
Also, this helps memory read and write speeds which I don't think are an issue in ns2. This is because of the small amount of memory used, again partially because the 32 bit limitation.
What the forum post suggests is telling the operating system to increase the size of these pages. Huge pages are usually 2MB on x86 systems with 64 bit or PAE support (basically all systems you probably have for gaming). This Increases the effective size of the TLB, because each entry can now cover 512 times the amount of memory as before. So there will be less page translation steps when a program reads new data from memory, which can free up a few cpu cycles that can be used to calculate the game instead.
However, I doubt this has any measurable effect in most games, especially ns2. It will not significantly improve loading times, as these are mainly limited by the speed of the HDD. Most large pieces of data in a game are textures, which are stored in the GPU's memory anyways (which doesn't have vitual memory and all those address translation issues). The only effect this technique could have would be to speed up access to the game's code. However, because code usually accesses the same piece of memory a lot [2], this might also not be noticeable much.
The downside of this approach is that if the memory region your mapping is not a multiple of 2MB, you will waste memory as you will have to use more than necessary (you can only allocate memory in units of 2MB now). if you map 10-20 different memory regions this means that on average you will probably waste about 10-20MB of memory.
I'd love to see some benchmarks on this, but doubt there could be a statistically significant performance boost.
[1] http://en.wikipedia.org/wiki/Virtual_memory
[2] http://en.wikipedia.org/wiki/Locality_of_reference
PS: This has nothing to do with 32/64 bit issues, all x86 cpus, if intel or amd have these page size options. It might however impact the available memory on 32 bit systems, as on a 32 bit kernel you can only address about 2GB of memory (worst case on windows 32 bit without /3GB boot switch). So now you wasted about 1% of available memory. Might not be noticable much, but with a game like ns2 that already runs out of memory a lot on these kind of systems...
Your playing on Woozas 42 man server said it all for me xD
Just overclock to 6.6hz on N02.
NS2 performance issues = solved.
If running the client though, then you need a nvidea gpu and then it will lose performance over windows.
Except it's showed a proven increase in performance in the ARMA 3 forums, where it originated, as well as this post in the very thread I linked. Maybe try reading what you're commenting on before posting so you don't look so silly?
It's no wonder NS2 is dying with a community like this. It appears I shouldn't have tried to help those still suffering performance problems by linking an interesting thread. Not one person who has replied has actually tried and tested it. Which is remarkable considering it takes no effort to do so and the possible outcomes are that at best it helps and at worst it does nothing. I expected to see people reporting their experiences, as my system (3970X Tri-SLI) isn't exactly a good benchmark of one that could benefit.
When did you all become so negative and cynical?
Not to be negative - I did read over the post you linked.. but almost ALL of NS2'd performance issues are directly related to CPU.
Network traffic and high numbers of entities and slow areas in the LUA to C++ code communication? = tons of CPU lag in NS2. And apparently there is nothing you can do about it.
I tried your page size changes in the link with my i5 3570k @ 4.8ghz with Nvidia GTX580 and I still bottleneck out on CPU and drop into 40-60 FPS in mid-late game.
So what's to be positive about lol.
I run at 2560x1600 and it took three GTX680s to eliminate them as the bottleneck, when NS2 is set to full details!
You could just put your games on a separate partition (Disk is better) and format it with the max clustersize.
* upside: less parts of a puzzle. So fragmentation is less often. Looking up each individual piece is faster.
* Win7/8 auto defrag has less work to do, leaving more room for.. everything else.
* downside, any part of a file or a file smaller then the clustersize is wasting diskspace.
Even if it only helps like a small %, im in the 'why the heck not' group. My gaming partition is max clustersize.
Dont play on servers above the official playerlimit and play on servers running NS+.
This is not an elitis comment, its a fact.
You lose 50% of your fps on this lagging 42 slot clusterfuck server.
The doubled ammount of entitys on that server must be calculated on your client, wich is a fact also.
Certainty when compared to many of the games out there, NS2 isn't the most ...hardware friendy when it comes to running it silky smooth.
I run at 1920x1080, play at well over 60+ FPS on max settings
I have a i7-3770k 3.5Ghz not overlocked, 16 GB of ram, a single GTX680.
My 20GB OCZ SSD. really helps loading times to the point where its more than bearable, besides you can spend a lot of time waiting for games to start anyways, whats the rush.
I play on servers anywhere between 12-24 players, all along while recording footage to disk AND streaming, performance has no impact.
I choose not play play on 42 players because that is simply chaos and I don't enjoy it.
I did not mean any disrespect, but it sounded to me that you're hamstringing your computers performance by running it at mighty high resolution, and playing on 42 man server compounds that further. It's like trying to take your performance car built for track racing into really muddy terrain, but hey people like to off road I guess...
/end elitist comment
This server goes down to 5 ticks wich mean "hiccups for EVERYONE"
Your triple SLI wont help here cause the server cant handle this ammount of players.
But im sure this fact is a elitist comment also for you.
If you provide hard facts like a serious, unbiased benchmark people might enter into a discussion with you. However, doing so is kind of hard in NS2, because there is no suitable demo system and thus it's almost impossible to reproduce the exact same conditions for a large number of measurements.
Just saying. (Dont do it on SSDs, no point)
Also lets stay in the spirit of the topic folk?
I said -- And obviously I'm talking about client side rendering, not net/server issues as and when they happen.
Precisely! Hence posting to get a wider sample base!
Again, I don't usually have issues, I posted it to help others who might and -- yegads, if people actually tried it -- we'd find out if, indeed, it does help.
Instead, we have a thread debating the value of Woozas and suggestions to help performance unrelated to the linked thread.
So, on topic now yes? Anyone have anything to report back?
If you have a gtx650ti boost or higher i HIGHLY recommend you look into g-sync monitors you wont be sorry.
geforce.com/hardware/technology/g-sync
Yes i own one & they are unreal
/want /budget /cry