Getting Battlefield V to run on older hardware.
Door: switchboy op: 2018-12-07, 948 views
Currently I own a intel i7 2600K and up until this point I have not found a game this CPU could not handle. That was until I installed the latest battlefield. While playing on the lowest settings I was only getting at average 40 frames per second. What in the world was going on? After turning on the on-screen display of afterburner the problem seemed obvious. My CPU was being hammered! It was constantly at a hundred percent usage, while my GPU was only registering a thirty to fourthy percent usage. A clear CPU bottleneck was the easy diagnosis. It appeared it was finally time to retire my old and trusty 8-year companion. Or was it?
Overclocking the CPU and memory
Overclocking the CPU
As I sported a 2600k thus supporting overclocking through setting a higher multiplier I decided that that was my answer to getting a little more life out of the old. Up until this point I never felt the need to run at a 24/7 overclock so I had to do some reading up. I found out that the best way to get a stable overclock is to disable vitalization, EIST, C1, thermal protection and C6 stepping. This effectively locked the CPU down to one clock speed. I also set the core voltage (v Core) manually. With these precautions, I managed to get my CPU stable at a multiplier of 46 and a vCore of 1.4 giving me a CPU clock speed of 4600Mhz. This is effectively a 35% overclock; not bad considering my rig is air-cooled. I made sure my overclock was stable and my CPU package temperature stayed below eighty degrees Celsius during three hours of stress testing. Once in game I noticed that my framerate sadly did not improve by 35%. It was closer to 15-20% not as much as I had hoped, but an improvement nonetheless.
Overclocking the RAM
Because I was close to the thermal and electrical limits of my CPU with my current overclock, I decided I might as well squeeze as much bandwidth out of the hardware as I possibly could. Because my rig is quite ancient and upgraded through the years it has 2 dims of 4GB DDR3-1333Mhz CL9 memory and two dims of 8GB DDR3-1600Mhz CL9 making a total of 24GB RAM running at 1333Mhz in dual channel. I decided to manually setting the timings to the values reported by SPD for the 1600Mhz setting in UEFI and try if the 1333Mhz dims would accept these settings at 1600Mhz. To my utter surprise it worked! I ran a couple of passes of memtest86 to be sure. This endeavor gave me 1-2 precious frames. I was still a little more than 10FPS off from an average framerate.
Disappointed in my results up until this point I was starting to do some research on CPU’s that worked well with Battlefield V. And I noticed something odd. I knew that BFV really scales well on multithreaded systems. Basically the more threats the better. I saw I was getting about the performance of an i5 2500k a little better but not as much as you would expect from a CPU with double the threats thanks to hyperthreading. Then it hit me: hyperthreating was severely neutered in the Spectre and Meltdown patches in CPU’s right up until 2016! This could explain everything!Therefore, I found a way to disable the spectre and meltdown patches in windows using InSpectre. After disabling all the protection from the exploits I uncrippled my CPU. A reboot later I found out that it had actually had the intended effect! I was getting an average of 60 frames a second on the Rotterdam map with 64 players actively thrashing the place. I had achieved playable framerates. My CPU usage was now on hovering between 75-90% instead of a constant 97-100%.
So I had achieved a playable experience, but I wasn’t quite satisfied yet. There were still the intermittent framerate drops and CPU usage spikes. I felt there was still more that could be done. After reading a lot performance guides on both battlefield V and I and a lot of trial and error I found a few extra tweaks that help to smooth out the gameplay
Disabling all the overlays
Turning off the Origin, Nvidia and windows Game bar. Turning off the game bar in the windows setting doesn’t completely turn off the windows game bar service. For that you need to rename two files in system32 as well:
For this you first need to take ownership of the files and then allow the administrator write permission. You can do this as follows:
- right click the file
- select properties
- select the security tab
- click advanced
- Click the shield icon after trustedInstaller
- type "everyone" in the textbox and click OK twice
- back in the security tab click Edit
- Select administrator
- Check allow full control
- Click OK twice
- Rename the file
Oddly enough after doing this my CPU usage dropped more dramatically than I had expected. It might even had a greater effect than reverting the spectre and meltdown patches.
Optimizing the game settings
Future frame rendering
Turn on future frame rendering, this helps with keeping a steady framerate if the CPU doesn’t finish a frame in time. The input lag it causes is minimal giving that a new frame is displayed every 10ms and a setting of rendering 1 to 3 frames ahead will cause a maximum of 30ms input lag and only if your CPU can’t keep up. So the effect on gameplay is negligible while it does smooth out the experience preventing that occasional stutter.
V-sync might prevent tearing when experiencing fluctuations in framerate but it also causes a 50-100ms standard input lag! So turn it off!
Set the frame limiter to the refresh rate of you monitor. This prevents tearing from high framerates and limits resource usage on useless frames your display cannot display. Ideally, without the frame limiter you are sporting 70-80 fps by now with drops above 60. If your framerate is stable, enough this would mean that with the frame limiter on tearing should not be an issue.Most of the other settings I left on the medium preset.
With all these alterations I went form a totally unplayable experience to a situation where CPU bottle-necking is not really noticeable anymore. And the CPU usage hovers comfortably between 60-80%. My GTX 970 is still only reporting a 55% GPU usage because of the frame limit. I might even have some room to play with higher settings but I like to have some extra overhead for keeping a solid 60 frames per second when the action gets intense.
If you happen to own a CPU from before 2016 with hyperthreading I would suggest trying to start with disabling the spectre and meltdown patches while gaming. Do note that spectre and meltdown are serious exploits so when using your computer for other tasks especially browsing the internet you should have your patches enabled. Luckily, this can be done with a click of two bottoms and a reboot. Secondly, completely disable the overlays and apply the suggested settings. Lastly you could try your luck at the silicon lottery with overclocking your CPU and RAM. Do use caution and read up on the subject first, you could permanently damage your hardware!
System specifications for reference
i7 2600K @4600Mhz
24GB kinston hyperX @1600Mhz CL9
Geforce eVGA 970 OC 4GB @ 1250Mhz core & 3750 Mhz memmory
500GB samsung 850 EVO
Volgende en vorige item:
How to get the most out of your Chromecast: get around restrictions to get local files playing