gta 5 only using 40% of gpu?

DarqFX

Reputable
Jan 7, 2017
138
0
4,710
This makes no sense... my frames will drop and stay at a consistent 40-50 in the centre of a city, but i realised its because my pc isnt using my gpu to the fullest, why is it doing this? it used to run the game fine but ive revisited it and now its deciding to not use my specs to 100% or at least close to that.

SPECS:
cpu: i5-6400
gpu: gtx 960
HDD: 1tb barracuda
RAM: 8gb DDR4
 
Solution


I'm pretty sure it always ran that way,center of the city is the hardest on the CPU and 40-50 FPS is actually pretty good.
The game just needs a lot more CPU then GPU.
 


The logical inconsistency though is he said it ran fine before on his system.

THIS guy with same basic specs is getting 60-70FPS average:
https://www.youtube.com/watch?v=AEB4EzqxVwE

It does sound like a CPU bottleneck so I'm not sure what is going on.

I agree the game can be hard on the CPU, and the i5-6400 Turbo max is only 3.3GHz so my best guess is that perhaps the game is:
a) game is more CPU intensive now, or
b) game settings are different (some settings hit CPU harder such as traffic density or "population" or whatever), or
c) an application is eating up CPU resources (easy to check, just make sure CPU usage is under 10% when launching game)

If I was forced to guess I'd say it's game settings... thus, try dropping everything to the lowest to see if the FPS jumps up a lot. If so, then I'd jump up to "HIGH" or whatever then look at individual settings.

Also, if the monitor is 60Hz and if 60FPS can be hit at least 80% of the time I'd consider forcing on Adaptive VSYNC. You do NOT want to use VSYNC if you can't hit a solid 60FPS (at 60Hz) as it adds stutter.

You do NOT want to use VSYNC OFF if it causes bad screen tearing. Adaptive VSYNC keeps VSYNC ON if you can maintain 60FPS/60Hz but turns it off if you drop below (so screen tearing instead of added stutter).

Here's how:
a) start then close game
b) NCP-> manage 3d games-> ... add game (use the GTA5 at top)-> (setting)-> save

Other:
If the CPU was causing bottleneck issues then the GPU usage should be higher where the FPS is higher and lower where the FPS is lower... so if it's 40% at 40-50FPS is it a lot higher when say 80FPS?

If so that's pretty much confirmation of a CPU bottleneck.
https://www.reddit.com/r/GrandTheftAutoV_PC/comments/338qvj/what_options_to_reduce_cpu_usage/

I can't confirm this would help, but with that said:
"Try setting the population a bit lower. That should relieve some stress on the cpu. Distance scaling low as well. "


 

He said it ran fine but that doesn't mean that he had already reached the inner city back then,or he might just not remember how bad it was in the inner city.

Video is of the "suburbs" and not the inner city and also doesn't show FPS,it looks much worse then 60-70FPS though.
 


None of that matters much since I go into detail on why I think it's a CPU bottleneck anyway, though it's worth noting that he also said "40 to 100FPS" thus he's dropping to 40FPS, using the same CPU so that would be consistent with the 40-50FPS average in demanding areas from the initial post.

So again, look at game settings related that primarily affect the CPU such as (apparently) population
 






ok some more information for you guys, my cpu usage in the centre of a city is ranging from 80-90 whilst my gpu goes as low as 25% which is literally insane, this causes my fps to not stutter but in fact just stay consistently poor. when doing this i have zero other programs open and easily below 10% cpu usage before i even open it. I have lowered as much gpu intensive settings, for example, running everything at normal, turned off all anti aliasing settings and post fx are normal. taking this into account it makes ZERO sense why it STILL struggles. p.s turning my settings higher does not do anything it literally acts the same (as of typing this i also found that it does happen mostly in dense population areas, which i can understand but even then... surely my gpu should be running at 100% to keep up with it? no instead it decides to give up.
 
"ok some more information for you guys, my cpu usage in the centre of a city is ranging from 80-90 whilst my gpu goes as low as 25% which is literally insane, this causes my fps to not stutter but in fact just stay consistently poor. when doing this i have zero other programs open and easily below 10% cpu usage before i even open it. I have lowered as much gpu intensive settings, for example, running everything at normal, turned off all anti aliasing settings and post fx are normal. taking this into account it makes ZERO sense why it STILL struggles. p.s turning my settings higher does not do anything it literally acts the same (as of typing this i also found that it does happen mostly in dense population areas, which i can understand but even then... surely my gpu should be running at 100% to keep up with it? no instead it decides to give up."

It actually makes perfect sense what's going on. It's a CPU bottleneck.

Let's step back and think about how games are created. The CPU is doing two main things:
a) running the game code (main thread plus branching threads), and
b) sending draw calls to the GPU

The CPU will execute these tasks as quickly as it is able. A CPU often uses less than 100% of its capability because the main game code thread runs on a single core so it's limited by the speed of that core. Branching tasks can run on other cores (or even the same core if there's CPU cycles left over) but can't necessarily use all cores fully.

Bottom line is the reported CPU usage does NOT tell you if the CPU is the bottleneck or not. Starcraft 2 for example is coded to use only TWO THREADS so you can have a CPU bottleneck on an EIGHT CORE CPU even though reported CPU usage might be 20 to 30% (depending on other tasks running etc).

So the GPU receives draw calls from the CPU then executes them to create a new frame which it then sends to the monitor. If it's too fast then it sits idle waiting for new CPU draw calls... this is a CPU bottleneck.

If you see GPU Usage of say 50% (and max frequency) that means it's waiting half the time for new CPU draw calls. Roughly speaking a CPU that is 2x faster would then be able to keep up (assuming there's no FPS cap and that the CPU is the sole bottleneck).

Some things the CPU does are about graphics and some things are not. If you adjust game settings that have relatively little CPU involvement (anti-aliasing?) then the FPS won't change much in a CPU bottleneck situation though the graphics will.

*So never drop settings if there's no loss of FPS.
(though some settings don't always affect the FPS such as say smoke effects that only affect things when there's smoke... that may or may not affect the FPS though if it's primarily a GPU effect and you have sufficient free cycles on the GPU due to a CPU bottleneck)

Conversely if you lower a setting that affects the CPU a lot (population density?) then your FPS may go up since it MAY free up CPU cycles to commit to increasing the draw call rate (I say "MAY" because again there's a main thread of code and branching threads... if you only affect a BRANCHING thread code but not the main game thread it might not affect the FPS at all... all you can do though is try and see.)

So in summary:
1. CPU bottleneck is often due to the main game thread limited by the speed of a single CORE
(the code can jump between cores though so Task Manager won't necessarily show a core using 100%)

2. CPU sends draw calls to the GPU so if the GPU is relatively fast it sits WAITING

3. Every game setting impacts the CPU alone or both the CPU and GPU, and by varying amounts
(though not just the GPU as the GPU only does what the CPU tells it to do AFAIK, though some requests may use relatively few CPU cycles)

*Long story short is that for the most part either the CPU is the bottleneck or the GPU is. The GPU only executes instructions the CPU sends it so again if the CPU is relatively slow then the GPU is left waiting.

(so the GPU doesn't try to "keep up" with the CPU. It can only execute instructions it is sent)
 
Massive oversimplification would be:

HDD/SSD-> DDR3-> CPU-> GPU-> Monitor

If any part of that chain is too slow that's the bottleneck or choke point. Thus a slow component causes the next component to sit waiting part of the time. (the HDD/SSD would be the choke point during initial game LOAD, level loads etc.. once the code is sitting in DDR3/4 memory the CPU or GPU is likely then the bottleneck based on the game, game settings and relative processing speed of the CPU vs GPU).

So bottlenecks jump around but for most games for most of the time it's either the CPU or GPU. It can shift back and forth though such as Starcraft 2 which may start out as a GPU bottleneck (if no FPS cap) but then later during large battles the CPU may get overloaded with calculations and become the bottleneck (thus reducing the draw calls to the GPU).

(PREY has textures that stream from the storage drive. On my PC I get bad STUTTERING if it's on an HDD but it's smooth on the SSD... so in this case the choke point part of the time would be an HDD)

**IMPORTANT**
If I didn't say, do not use VSYNC as it can cause really bad stuttering. When I drop below 60FPS with VSYNC ON (60Hz monitor) the stutter was really bad but VSYNC OFF caused bad screen tearing.. I ended up forcing on Adaptive VSYNC which leaves VSYNC ON if I can maintain 60FPS but auto turns VSYNC OFF (to avoid added stutter) if I can't.. thus it's a tradeoff between stutter and screen tearing.

Start and exit GTA5, then
NCP-> manage 3d settings-> .. add game-> Adaptive VSYNC-> save
 


thanks for the detailed reply, learned a lot from this post, my conclusion is that my cpu is bottlenecking my gpu, which blows my mind because i thought my 3 year old 960 wouldve been the issue and even the cheapest i5s i wouldve thought could run gta 5 but it seems not, or at least when theyre old. I concluded this by making the job on the gpu as EASY as possible (downscaling the resolution drastically and changing texture settings etc) and the frames literally are the same as when im on very high settings. i checked and contrary to this conclusion, my gpu was the one running at a higher temperature (70c) which how that makes sense i have no idea as its running at 30% usage but whatever. If my cpu really is the issue i can only assume that i was able to run gta 5 fine before purely because ive done A LOT of rendering in programs which may have worn it down over time. not sure if thats completely wrong but this is my conclusion, ill update if i found out something new
 


ISSUE SOLVED: everything you said was still completely valid but it turned out to be one of the mods i was using, i did have several mods installed that added new peds and "random events" and things like that, even though i couldnt see them actively working all the time it seemed to be eating away at my pc, still a bizarre thing. so in case anyone is reading this for a solution, REMOVE ALL MODS if you use them and see how gta runs then.

 
Solution