NS2 Bi-polar frame rate.

DemoNnDemoNn Montreal Join Date: 2014-02-28 Member: 194432Members
Greetings all! Love the game design and concept of NS2... not too crazy about the engine. Maybe you guys can help me get past my excessive frame rate drops so I can better enjoy the game. I'd be super grateful!

I built a new computer about 2 months ago:

i5 4670k
8 Gigs of RAM
and two GTX 760s running in SLI
Windows 7 Ultimate x64


Most of the time (when running around with my marine buddies) my frame rate is well above 100 (usually between 130 and 170), but as soon as we enter a battle (depending on the number of players), my frame rate can drop all the way down to the 50s. I'm playing at the lowest possible in-game quality settings (almost) and at my monitor's native resolution of 1080p (required for 144hz). My NVidia settings are also set to "best performance." .... The great majority of the time (almost always) r_stats is giving me 0ms for waiting on the GPU, so that tells me my CPU is the bottleneck. Is this normal? My CPU's not THAT bad is it?

I've also tried overclocking my CPU to 4.5ghz... This gives me about a 20% increase to my frame rate. Do I need to get a new CPU? Because I'll probably do it, as I really enjoy playing NS2. Secondly, what CPU do I need to get in order to maintain a steady 140+ frame rate?

Are there any tests or logs I can post to help my case?

Thank you all who took the time to read my post. I really hope we can figure this one out.


Thanks again,

DemoNn

Comments

  • OuchOfDeathOuchOfDeath Join Date: 2013-02-04 Member: 182825Members
    This is normal probably. The game is very CPU heavy. You can try disabling SLI, but the issue is probably that the game is simply very CPU heavy. You can disable some graphics settings to lower the CPU load. There isn't a CPU out there that can give you 140 FPS in this game. It doesn't exist. I'm pretty sure you have the fastest CPU for this game out there.
  • Omega_K2Omega_K2 Join Date: 2011-12-25 Member: 139013Members, Reinforced - Shadow
    DemoNn wrote: »

    I've also tried overclocking my CPU to 4.5ghz... This gives me about a 20% increase to my frame rate. Do I need to get a new CPU? Because I'll probably do it, as I really enjoy playing NS2. Secondly, what CPU do I need to get in order to maintain a steady 140+ frame rate?

    You already have one of the best CPUs for this game and on the market. So in other words, unless you do extreme overclocking you won't get that framerate. A new CPU won't do much, only at stock speeds you'd see a minor increase.
  • JektJekt Join Date: 2012-02-05 Member: 143714Members, Squad Five Blue, Reinforced - Shadow
    edited March 2014
    It just isn't possible to maintain a 140+ stable framerate in NS2. Even if you did upgrade your already great CPU, I think the performance increase would be so minimal it isn't even worth mentioning.
  • IronHorseIronHorse Developer, QA Manager, Technical Support & contributor Join Date: 2010-05-08 Member: 71669Members, Super Administrators, Forum Admins, Forum Moderators, NS2 Developer, NS2 Playtester, Squad Five Blue, Subnautica Playtester, Subnautica PT Lead, Pistachionauts
    Keep it OC'd
    Might want to mess around with disabling SLI or trying different profiles. NS2 has never been perfect in regards to SLI.. (not that SLI itself has been without issues, either)
    Some good tips here:
    http://forums.unknownworlds.com/discussion/132474/dx11-sli-and-you#latest

    I'd be interested in seeing what is the cause of your slowdowns.
    type p_logall in your console, and after you've captured some poor performing scenarios (The worst you can) either type p_endlog or quit ns2.
    Try to keep it less than 15 minutes with this log running if you can.
    You will find the log in your hidden %appdata%/Roaming/Natural Selection 2/ folder with a file extension of *.plog
    RAR it/ compress it, then upload it on the interwebs to share with me.

    This will give a per frame analysis of what is occurring for you and what is eating up your performance the most.
  • NeXuSNeXuS US Join Date: 2013-10-13 Member: 188681Members, NS2 Playtester, Reinforced - Silver, Reinforced - Shadow, Subnautica Playtester
    edited March 2014
    IronHorse wrote: »
    compress it
    Miss this step and IronHorse will be angry with you and he will write you a letter telling you, how angry he is with you. :P
  • Dictator93Dictator93 Join Date: 2008-12-21 Member: 65833Members, Reinforced - Shadow
    edited March 2014
    This is normal probably. The game is very CPU heavy. You can try disabling SLI, but the issue is probably that the game is simply very CPU heavy. You can disable some graphics settings to lower the CPU load. There isn't a CPU out there that can give you 140 FPS in this game. It doesn't exist. I'm pretty sure you have the fastest CPU for this game out there.

    Disabling SLI is not a good idea, would actually rediuce his framerate. Do you play in DX11 or DX9? With SLI, the 327.23 driver, and a custom SLI bit for DX22 I get a higher framerate than in DX9 (the latest Nvidia driver has problems with DX11 SLI in NS2, do not use it unles you are DX9).

    Like everyone here said though, this game is insanely CPU hungry. Not much to do about it.
  • DemoNnDemoNn Montreal Join Date: 2014-02-28 Member: 194432Members
    Thank you so much, everyone, for replying. From what I'm understanding, NOBODY is playing at a constant 140+ frames per second. In that case, it sounds like everyone is playing on an even playing field, more or less. So that means, I'm not the only one frustrated with trying to shoot down a skulk at 60+- FPS? I'm gonna get that p_logall posted as soon as possible, IronHorse. I'll also read that article about SLI and write again. Also, I'm using dx9.. Seems to give me the best results (highest frame rates (over dx11 and openGL)). Thanks again! Will write back soon.
  • DemoNnDemoNn Montreal Join Date: 2014-02-28 Member: 194432Members
    IronHorse, I have a great log file for you here. I jumped into a game that was, or what I thought was, about to end. It was one of those games where the marines were beat, but were not going down without a fight. The aliens had the map and were moving in on the marines' very well barricaded last base. There were armories everywhere, blocking all entrances into the base. I was on the marines' team and my frame rate was in the 40s most of the time and sometimes even dropped to the low 30s for extended periods of time. It was an 8v8 game at least. Unfortunately, I don't recall how long we lasted, so I'm not sure how long the log file is.... It's a 200MB file compressed down to 37 megs.

    Running CPU @ 4.5Ghz, using dx9, SLI enabled.

    Also, CPU load seems to be evenly distributed amoung the 4 cores... so instead of having, like, 2 cores at 100% usage when playing NS2, I have 4 cores fluctuating around the 50% mark... so my 50% of my CPU is idling, doing nothing, unfortunately... Is this a Windows 7 thing? I wonder if dedicating 2 cores to NS2 would help, and how would I do that, if even possible?

    Also my 2 GPUs are usually around the 65% usage level, unless my frame rate is well above 100, in which case they will be in the high 90s, almost 100%.

    Would be cool if we could choose to have the PhysX processing handled by one of the GPUs. This, I think, would greatly free up our CPUs, and in turn, loosening the bottleneck. In the NVidia Control Panel, choosing your GPU to process PhysX does nothing for NS2. The CPU is still used instead.

    IronHorse, lemme know if you see anything fishy in that log!!! There's gotta be somethin'....... Thanks again!
  • cooliticcoolitic Right behind you Join Date: 2013-04-02 Member: 184609Members
    edited March 2014
    Heh, I play this with medium-high settings 900p with 2630qm (up to 2.8 Ghz) with 50-65 fps. Simply, your cpu is more than fast enough.
  • Dictator93Dictator93 Join Date: 2008-12-21 Member: 65833Members, Reinforced - Shadow
    edited March 2014
    DemoNn wrote: »
    Would be cool if we could choose to have the PhysX processing handled by one of the GPUs. This, I think, would greatly free up our CPUs, and in turn, loosening the bottleneck. In the NVidia Control Panel, choosing your GPU to process PhysX does nothing for NS2. The CPU is still used instead.

    IronHorse, lemme know if you see anything fishy in that log!!! There's gotta be somethin'....... Thanks again!

    Just loade dup the game multiple times to make sure. And Nvidia control panel is reporting the game is using CPU physX. The game reports that the dispatcher is sent to the GPU, but the overlay reports CPU usage.

    I then loaded up a different game with GPU physX to make sure the overlay was not broken, and indeed, it said GPU.

    GPU PhysX seems to be busted in NS2.
  • IronHorseIronHorse Developer, QA Manager, Technical Support & contributor Join Date: 2010-05-08 Member: 71669Members, Super Administrators, Forum Admins, Forum Moderators, NS2 Developer, NS2 Playtester, Squad Five Blue, Subnautica Playtester, Subnautica PT Lead, Pistachionauts
    edited March 2014
    So, someone may be able to determine more than me, but here's what I see:

    This is a look at your overall performance.. as you can see there are two things to note, there are occasional spikes and there is also poor performance at the end.

    Looking at the spikes, it shows that files are being opened quite a bit.
    What hard drive do you have this on and is it the same as your OS and pagefile? Hows the health of your HD?

    Looking at the poor performing areas in detail and comparing them to the typical / first portion shows that it's simply the rendering (gpu) being stressed and taking a huge percentage of the operation for every frame. When expanding that tree beyond "RenderScene:InternalRenderer" to expose the ~60% usage and how it breaks down.. it really didn't show anything important other than what i surmised in the previous sentence.

    Long story short: It's due to your graphics cards. In one way or another.

    Because of this, i think what i said before should still be tried:
    You should attempt disabling SLI and compare the results.. for better or worse. FPS *will* suffer, but you may gain something else, I know i did when i used to use SLI setups.
    Also, after you try this i do believe that there's an issue with the default SLI profile being used by NVIDIA for NS2.
    @Dictator93‌ has more accurate information on which to use, i believe. I suggest you try a different SLI profile setup and again compare the results.
    Lastly, double check that every thing is running as should be, to include clocks etc with the free program, GPU-Z

  • AnzestralAnzestral Join Date: 2013-05-21 Member: 185327Members, NS2 Playtester, Reinforced - Shadow, WC 2013 - Silver, Subnautica Playtester
    edited March 2014
    I experience about the same. In early game or on an empty server I have between 120 and 200 fps depending on where I am on the map.
    In the endgame my fps drop to 70 or 80.

    So far I don't really understand what is included in the profilers rendering section. Is that really just stuff done by the gpu or also by the cpu (like processing rendering related data before sending it to the gpu)?
    I have done some tests yesterday on an empty server in falls on biodome (because there I used to experience worst fps whenever playing).
    The importand system specs are probably just: i7 2700k @ 4.5 GHz and GTX 570.

    Settings were 1920x1080 with every graphics setting on low.
    With this almost all the time per frame is spend for rendering (up to 7 or 8ms leading to approx. 120fps) and r_stats shows 0ms waiting on gpu and renderig thread.
    Lowering resolution didn't change anything on this numbers. I have then tested to artificially lower my cpu performance wich gave me higher times for rendering.

    The only thing that made me wait for the gpu was turning ambient occlusion to high. With that r_stats shows waiting about 3-4 ms for the gpu wich results in rendering times of about 10-11ms leading to less than 100fps.

    So my assumption from this was that I am not limited by the gpu (except when turning on AO) and that the rendering in the profiler is the overall time spent on rendering by cpu and gpu. Is that correct?
  • JektJekt Join Date: 2012-02-05 Member: 143714Members, Squad Five Blue, Reinforced - Shadow
    I have pretty much the exactly same experience. 0ms waiting for GPU and render thread in r_stats nearly all of the time. Still 60 fps in a late game pub from 170 early game.
  • IronHorseIronHorse Developer, QA Manager, Technical Support & contributor Join Date: 2010-05-08 Member: 71669Members, Super Administrators, Forum Admins, Forum Moderators, NS2 Developer, NS2 Playtester, Squad Five Blue, Subnautica Playtester, Subnautica PT Lead, Pistachionauts
    edited March 2014
    Anzestral wrote: »
    So my assumption from this was that I am not limited by the gpu (except when turning on AO) and that the rendering in the profiler is the overall time spent on rendering by cpu and gpu. Is that correct?
    Based on the info you provided, yes that is correct.
    If you have 0 ms waiting for GPU and yet are seeing rendering take up the highest percentage in profile - i would want to see a screenshot of it to be sure - but i would say that you hit the nail on the head.

    Feel free to go to falls again and type profile in the console and then use the spacebar to pause it, the arrow keys to select the worst performing frame at the bottom of the screen, and then click the tallest horizontal purple bars to expand what is taking the most time to process. Then take a screenshot of this and post it here.

  • AnzestralAnzestral Join Date: 2013-05-21 Member: 185327Members, NS2 Playtester, Reinforced - Shadow, WC 2013 - Silver, Subnautica Playtester
    edited March 2014
    1920x1080, AO off:
    NQr5fgx.jpg

    1920x1080, AO high:
    qd5fdpF.jpg

    All 4 threads:
    8MYt6iH.jpg

    With detailed info for rendering thread:
    xzVOqOC.jpg


  • DemoNnDemoNn Montreal Join Date: 2014-02-28 Member: 194432Members
    IronHorse, you rule dude. Thank you so much for looking into this!

    My HDD is actually an old 160GB SATA! The OS is also on this drive, but not the pagefile. I noticed there's a new "Extra Pre-Caching" (or something like that) option in NS2. I'll try enabling that to see if it helps with the spikes. Otherwise I can just buy an SSD.

    As for the general poor performing areas.... Yes, I'll disable SLI and compare. Can I get a perfAnalyzer program like the one you have? not sure if the one I found from perfanalyzer.net will work. Gotta try it when I get back to my desktop computer. Will download GPU-Z as well, thanks.

    I won't be able to get back on my gaming rig until the weekend after next, unfortunately *super sad :(* but I'll definitely post my results as soon as I have them.

    I feel we are making good progress here! Thanks again, IronHorse.

    Have a good weekend.
  • IronHorseIronHorse Developer, QA Manager, Technical Support & contributor Join Date: 2010-05-08 Member: 71669Members, Super Administrators, Forum Admins, Forum Moderators, NS2 Developer, NS2 Playtester, Squad Five Blue, Subnautica Playtester, Subnautica PT Lead, Pistachionauts
    No problem man, glad i could help any amount :)

    I suggest buying the SSD.. they have come down now in price and is what everything is moving towards (TB HDs are still useful for storage, however) and you will notice a difference using it, especially if its what you are running your OS and NS2 on. Remember that you can install NS2 on a separate hard drive too, if you want to put it on your SSD while the rest of the games sit on your storage drive.

    That perfanalyzer comes with NS2 ;)
    Look in NS2/Utils folder
    You'll need python installed first, (its free) and be sure to read the readme or you'll be lost, hehe (protip: click the timeline and not the image to zoom on the graph, only click the image/graph when you are ready to inspect a small portion.. then wait 15 seconds)

    Can't wait to see what you discover.


    @Anzestral‌
    We already spoke on steam and found out what was going on but just for records sake for everyone else tracking here:
    It was in fact the CPU bottlenecking him, and the time that it takes for the CPU to pass on the info to the GPU is an acceptable 6 ms..
    So he can increase his visuals a bit and maintain the same FPS as long as he is using that CPU.
  • Dictator93Dictator93 Join Date: 2008-12-21 Member: 65833Members, Reinforced - Shadow
    SSD is integral to preoper NS2 performance.

    Also, since you do have SLI. Shoot me a PM. We should work out together how to get that best running on given your specs.
  • DemoNnDemoNn Montreal Join Date: 2014-02-28 Member: 194432Members
    edited March 2014
    "Good news everyone!" Nice call on the harddisk read/writes dropping my frame rate, IronHorse. I selected the Extra Pre-Caching option in-game and it drastically improved my frame rate!! Thanks so much dude! It feels great to be able to actually aim and hit skulks in most situations. I played for a few hours on Saturday and was very pleased to see my frame rate stay above 100 for most of the time. The lowest I remember seeing it drop to was low 80s. Didn't do much testing. Left everything else the same. CPU overclocked, SLI enabled, etc. When I have more time, I'm gonna try more things and post my findings here.

    I am still using the old SATA1 HDD... however, I ordered a Samsung 840 Pro. Expecting it to arrive in a week or 2. Would be cool if I could see the difference in the plogs... maybe I can create a plog of a recorded demo (the same recorded demo) before and after the new drive install.

    The Extra Pre-Caching option is like night and day. What a difference! Thanks again IronHorse. I would have never even tried the option if it weren't for you.

    I still want to play around with the SLI configuration... see if I can squeeze some more FPS out of it. I'll keep you posted.

    Dictator93, sending you a PM now.
Sign In or Register to comment.