Finding out whether your FPS are CPU or graphics card limited

Discussion in 'Assetto Corsa Competizione' started by dud, Sep 13, 2018.

  1. dud

    dud
    Premium

    Messages:
    462
    Ratings:
    +73
    Do just take the "unreal is cpu intensive" unmeasured blah-blah statements.

    Do this:
    • get framerate in a reproducible way that you like
    • go into the BIOS and downclock your CPU by 1/3rd, repeat benchmark
    • download an overclocking utility for your graphics card and use it to downclock your GPU by 1/3rd, repeat benchmark
    • for added fidelity, do same for:
    • RAM
    • graphic card RAM

    I don't have time right now but I'll post mine later.

    We need a reference thread about hardware-to-fps anyway.
     
    • Disagree Disagree x 3
    • Like Like x 2
  2. winston malcolm

    winston malcolm

    Messages:
    62
    Ratings:
    +13
    What I did was start Task Manager, and click on Performance while the game is running and look at GPU and GPU usage.
     
    • Agree Agree x 7
    • Like Like x 4
    • Haha Haha x 2
  3. RasmusP

    RasmusP
    AC Stuff and G27 help Staff Premium

    Messages:
    4,156
    Ratings:
    +1,448
    That's the best way! Nice description! :cool:

    The easier way is to read out the gpu load with openhardwaremonitor or similar. If it's at 3D clock but below ~95% load it's 99 percent surely the cpu that's limiting.
    If the game is worth a better cpu or if you decide the game is so badly optimized that you give it the "crap vote" is a different story :p
     
    Last edited: Sep 15, 2018
    • Agree Agree x 1
  4. Martin Fiala

    Martin Fiala
    Moving Chicane Premium

    Messages:
    3,735
    Ratings:
    +3,401
    Was about to post exactly this. Why mess about with downclocking CPU, GPU, memory and whatever when all you need is one look at your CPU/GPU usage (or multiple looks, as it's quite likely you'll sometimes be CPU bottlenecked and sometimes GPU bottlenecked, especially with this game).
     
    • Like Like x 2
    • Agree Agree x 1
  5. Ben Lee

    Ben Lee

    Messages:
    481
    Ratings:
    +291
    Generally speaking, if your frame rate stays the same no matter what graphics options you set -> you are CPU limited.
     
    • Agree Agree x 7
    • Beer Beer x 1
  6. Pawel Ziolkowski

    Pawel Ziolkowski

    Messages:
    189
    Ratings:
    +55
    Wait why in this day and age i would need to go to bios... There are many tools that allow changing modern CPU clock times on the fly at OS level.
    I'd say downlclocking your GPU memory can be just as important, especially if running triple screen or using super-resolutions to sharpen image.

    Thou i have not seen any modern game that is RAM dependant... last one i remember where ram speed mattered was Dwarf fortress and thats because it literally simulates whole fantasy world, from how skin burns on (or off) a creature, through magma flow to creature thoughts and marriage proposals, and all that needs huuuge tables that don't fit in CPU's cache and need to be fetched in and out of RAM constantly. Modern CPU's have enough cache to fit everything a normal game would want to throw at them and does not need fast ram at all.

    Anyways this definitely would be most accurate way to benchmark, but i think just simple info from windows built in process monitor is enough to see how much cpu and gpu is utilized.
     
  7. RasmusP

    RasmusP
    AC Stuff and G27 help Staff Premium

    Messages:
    4,156
    Ratings:
    +1,448
    This part is important. While a gpu is "like one single core" and you can directly see the real load on it, it's not that easy with the cpu.
    With 8 threads in the Taskmanager you could reach the cpu limit at 12.5% cpu usage!
    If you download process explorer and go into the details of assetto corsa for example you'll see the cpu load per game thread (a lot of threads are there underlaying behind the running exe).
    My fps go down when one of the 2 main threads reaches 12+ % which means single thread limitation.
    Windows shuffles the threads around so in the Taskmanager you'll see a kinda evened out cpu load on all cores/threads but that's not showing the truth behind it.

    That's why only the look at the graphics card load will indicate which part is limiting.
     
    • Like Like x 1
  8. Pawel Ziolkowski

    Pawel Ziolkowski

    Messages:
    189
    Ratings:
    +55
    @RasmusP Yeah im using ProcExp too, but in process monitor you can actually see thread bottleneck as it shows each core usage too. It's not perfect but enough i think.
     
  9. RasmusP

    RasmusP
    AC Stuff and G27 help Staff Premium

    Messages:
    4,156
    Ratings:
    +1,448
    I see all 8 cores/threads in the Taskmanager too or do you mean something else?
    When playing ac all 8 cpu threads are below 60% but if I activate too many apps in ac the fps go down.
     
  10. Pawel Ziolkowski

    Pawel Ziolkowski

    Messages:
    189
    Ratings:
    +55
    8 cores ... hmm sounds like i7 or more modern CPU. Mine is pretty old and don't have hyperthreading. It might be that my taskmanager is able to paint more accurate picture because of that. When testing AC apps impact some months ago, i had a single core fill up to 80-90% with unlocked FPS and lots of apps on screen. Rest was 35%, 15%, 15% or something like that.
    So yeah it's probably useless nowadays, i guess game fps+GPU load is best indicator of CPU usage we can have atm.
     
    • Like Like x 1
  11. RasmusP

    RasmusP
    AC Stuff and G27 help Staff Premium

    Messages:
    4,156
    Ratings:
    +1,448
    You're right, the less cores/threads are shown by the taskmanager, the closer it gets to the real thing.
    I have an i7 2600k, pretty "old" but still doing it's job. Which CPU do you have?

    However, even with just a dual core without HT you could get 50% on both cores and be stuck in the single thread limit.

    I have absolutely no clue what windows does internally though. Some old games run at 20% on all cores (should be 12.5% for me but somehow windows can utilize more?!), some others just run on one core/thread up to 100%...
    For some reason the ones that are split although running on only 1-2 main threads like AC are still running at higher fps if I activate hyperthreading and on lower fps if I disable HT or deactivate a core.
    So although in theory it shouldn't make a difference if you have 3 real cores (2 main threads, rest running on the 3rd core) or 16c/32threads in boosts fps somehow.

    I did some testing and 8 threads with hyperthreading at 4 GHz give me the same fps as 4 threads (no HT) at 4.4 GHz.

    That's why the i7 8700k is such a beast. It has an increased performance per core and clock compared to almost any other CPU while going easily close to 5 GHz and 6 cores + hyperthreading.

    Sorry for the long post... :rolleyes::speechless:
     
  12. Pawel Ziolkowski

    Pawel Ziolkowski

    Messages:
    189
    Ratings:
    +55
    @RasmusP It's i5 4670K

    As for Hyperthreading increasing performance, idk exactly but i think it's related to how data is loaded and unloaded. A single thread can probably be chopped into chunks and executed on two (or more) cores, giving the advantage of doubling data bandwidth. The calculation itself is never paralleled but everything else can be sped up by sharing work on different cores. This probably is why single thread utilization is higher than one core percentage too.

    Between hardware shortcuts for certain calculations or whole data structures, predictions (hello spectre/meltdown), thermal and wear control, data in CPU flies all over the place all the time. So i don't think it's even possible to define "per core" work on modern CPU's anymore.
     
    • Like Like x 1
  13. hotak

    hotak

    Messages:
    72
    Ratings:
    +14
    hyperthreading simply executes one thread while the other is waiting for data from the memory (cache or ram). It can take quite some clock cycles to get data, so hyperthreading can offer significant speedups depending on the workload
     
    • Like Like x 1
  14. suspectmonkey

    suspectmonkey
    Premium

    Messages:
    435
    Ratings:
    +301
    When I run the quick race in Special Events with 20 opponents my GPU sits around 70% most of the time, so I'm assuming the opponent AI is bottlenecking my CPU? When I run with the same settings in Hotlap my GPU sits at 99% or thereabouts which I guess is what you'd expect?
     
    • Agree Agree x 2
  15. hotak

    hotak

    Messages:
    72
    Ratings:
    +14
    considering that AC runs AI on the same phisics as player (unlike for example pCars2), AI will hit CPU use pretty much linearly with the opponents number (double the opponents, double the CPU usage)
     
  16. Andrew_WOT

    Andrew_WOT

    Messages:
    765
    Ratings:
    +162
    I got better results on 6 core i7 with HT disabled.
     
    • Agree Agree x 1
    • Disagree Disagree x 1
  17. Martin Fiala

    Martin Fiala
    Moving Chicane Premium

    Messages:
    3,735
    Ratings:
    +3,401
    @suspectmonkey Yep, just like me - somewhat GPU bottlenecked in solo mode, CPU bottlenecked in AI races. I can only run around 6-8 AI opponents before the CPU is no longer able to keep up.

    Being GPU bottlenecked is certainly a lot better, since you can drop some setting to manage. With CPU bottleneck, you're pretty much screwed :cry:
     
    • Agree Agree x 3
  18. farjam

    farjam

    Messages:
    357
    Ratings:
    +118
    • get framerate in a reproducible way that you like
    I have noticed that there is not much difference between actual game and its replay's performance (using cockpit view for both) , could "using the replay function" be a good way for having the same piece of gameplay to test our frame rates in different settings/clocks ?
     
    • Agree Agree x 1
  19. Greg Pugliese

    Greg Pugliese
    Premium

    Messages:
    97
    Ratings:
    +19
    Isn't it the opposite? If your GPU is pegged at nearly full usage, but your CPU is not, then that means the app is using the full potential of the GPU and would therefore benefit from any more potential that a more powerful GPU would provide -- i.e., the app is currently GPU-limited.
     
    • Agree Agree x 3
  20. Neilski

    Neilski
    Staff Premium

    Messages:
    1,691
    Ratings:
    +576
    Yeah I think that was a typo ;)
     
    • Agree Agree x 1
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.