AnsweredAssumed Answered

Optimize gaming on 7870K

Question asked by nec_v20 on Jan 15, 2017
Latest reply on Jan 23, 2017 by kxuping

If you look at my system Silent Grizwald you will notice that I don't have a dedicated graphics card installed on it and yet it plays the games I like to play, even games like Fallout 3 or Fallout New Vegas (Fallout 4 does hammer it though and I have to notch down the settings).


Here is some very old - arcane even - knowledge that nobody seems to know about which will improve your gaming performance on the 7870K dramatically for the very low cost of nothing whatsoever.


Although the 7870K has a "quad core" CPU portion two of the cores each share a common L3 Cache.


When gaming Microsoft goes out of its way with its OS to kick you in the nuts with regard to task switching the game between cores (and wiping out the L3 Cache data) and giving time slices to other processes which again can mark portions of the L3 Cache that your game was relying on dirty and forcing the CPU to reload the data from the vastly slower RAM or even storage media.


What this means is that your game will stutter when it needn't.


The solution to this is actually built into the OS although it is a PITA to implement manually.


If you look in the task manager and at the processes, if you right click on one of the running processes you will see the option to "set affinity". What this does is allow you to constrain a process to a single core - by default all processes, and your game is also a process, are allowed to access all cores.


If you go through all the processes and assign them to CPU 0 and CPU 1, load the game and assign that to CPU 2 and CPU 3 exclusively, then the game will have exclusive domain over the two cores sharing one of the L3 Caches. Sorted you may think, however when you reboot all those settings will be forgotten and you have to do the whole thing over again - hence the PITA I mentioned.


There is however a utility called "CPU Control" which allows you to create a profile and load it to the preferences you saved with regard to the assigning processes to the various cores. The author of the software no longer maintains his site, but the software is still available here - Home


With games that are CPU intensive (as opposed to offloading onto the GPU) this will dramatically increase the performance of the games you like to play. It will have a lesser impact on games which rely more on the GPU.


This solves the two main performance hits on games, the game being task switched and other processes being able to pre-empt the game to run (Windows uses pre-emptive multitasking where each process only gets a time slice before another process is given CPU time - also some processes run at a higher priority and can interrupt any other process and skip ahead of the queue).


Having said that, DO NOT, UNDER ANY CIRCUMSTANCES, think that if you increase the priority of your game process that the game will run better. All you will do is crash Windows.