Planetside 2 is a pretty heavy game on CPUs, it's mostly single-threaded, and it's a twitchy shooter in which the resulting bad framerates are a pretty big deal. I've got much more trouble with it than most because I'm running it on Linux through Wine. In fact, it's the one thing for which I really don't have enough single-thread performance with an OC'ed G3258. In the interest of figuring out what kind of upgrades and/or overclocking would help most with that, I did some benchmarking of how downclocking specific components affects it. So long as I did that, I thought I'd post the results here.
//// //// disclaimers //// ////
I'm running this on Linux, and there is a very real performance hit associated with that. My results may or may not bear any resemblance to most people's. Planetside doesn't have a single-player mode of any sort, and it's impossible to get entirely away from other players doing whatever other players do. I did my best to minimize the effects of that, but it's not impossible something slipped through. Finally, my framerates with low player density are quite alright. It's when there are big fights with 100+ players in an area that things get unworkable, and that may load the system differently than what I'm looking at here.
I should have downclocked the core and uncore more independently, but it shouldn't make the results much different.
//// //// setup //// ////
I've got a Pentium G3258, a GTX 960, 8 GB of DDR3-2133 at 9-11-10-28-2, an ASRock Z97E-ITX/ac, and a 512 GB SanDisk X300. The display is basic 1080p60 garbage. My default clocks are 4.1 GHz core, 3.5 GHz uncore, 1442 GPU core, and 7800 VRAM. Main RAM is stock. It's running up-to-date Arch Linux as of Sunday. The kernel is 4.7.6 and the Nvidia driver is 370.28.
The game's graphics settings are mostly as low as they go. Exceptions are that textures are on medium, model quality is on medium (because low doesn't draw characters until they get well within deadly range), and draw distance is at 1500 (about the minimum I find practical). FOV is 72. I usually run at 1080p, but to fully focus on the CPU, I set the render resolution to 50% for this testing (this boosted the framerate by <5%).
To get some consistency in-game, I went to the VR training grounds, took a Scythe east to the canyon with the bridge, then south to the cluster of holographic Vanu well away from the spawn area. I climbed a small hill to their east and centered the view on a particular one of them to the west, leaving many Vanu holograms and my Scythe in view. This made things pretty consistent between tests, despite the inconsistent nature of the game.
I used the game's internal framerate monitor (accessible with alt-f). This doesn't output any data I could do statistics on, but it bounces around within a fairly narrow and consistent range, so I just recorded the lowest and highest common figures. Frametime variance subjectively feels pretty low.
For testing, I slowed down different components of my system to 3/4ths their original speed. The options didn't always line up perfectly, but it was pretty close, and I compensated for that when calculating effect sizes.
//// //// results //// ////
It's mostly about core clocks, but none of the items are useless:
I did double-check my math on those effect sizes above one. My guess is that it shows up that way due to CPU time being spent on things that aren't per-frame.
On the uncore and bandwidth tests, there were some anomalies I cut out of the data. They didn't fit the pattern, and I suspect they had to do with the actions of other players on the map.
I'm at about 125% CPU usage when testing this stuff (where 200% is two cores fully loaded), so more cores will probably do nothing. The smaller parts all help, and keeping them good is going to be necessary, but it doesn't look like they can move anything from unplayable to playable. More cache might do something, but it's probably mostly in the same boat. It looks like if I want this to work well, I'm looking at Skylake-C or Kaby Lake-C at entirely unsafe clocks, which is not exactly what I had in mind for my next upgrade.