Limit frame-rate maxes out CPU load of target application

Discussion in 'MSI AfterBurner Application Development Forum' started by Eini, Oct 31, 2012.

Thread Status:
Not open for further replies.
  1. Eini

    Eini Guest

    Messages:
    62
    Likes Received:
    6
    GPU:
    Nvidia 9600M GT
    Hello!

    I tried using Afterburner for limiting the frame-rate of some games (Civilization 4, Eve Online, Europa Universalis), but unfortunately they all suffer from the same issues with Afterburner. As soon as AB limits the frame-rate of any of these games their respective CPU load increases to maximum (12.5% on my 4 core i7 = 1 core fully loaded)!

    Using Dxtory to limit frame-rates of said games results in CPU decrease and is the main reason why I am limiting frame-rates to begin with (laptop fans are disturbing). So whatever method AB uses to limit frame-rates, it is not exactly healthy for the CPU.
     
  2. XBEAST

    XBEAST Ancient Guru

    Messages:
    1,600
    Likes Received:
    0
    GPU:
    MSI GTX 770 Gaming
    Try NVIDIA Inspector.
     
  3. Unwinder

    Unwinder Ancient Guru Staff Member

    Messages:
    17,124
    Likes Received:
    6,689
    Of course it affects CPU load because it shifts CPU/GPU load balance, the only proper framerate limiting approach for SMOOTH framerate is a simple wait loop executed on CPU to provide expected target frame timing and reduce GPU power consumption. So most of time CPU will spend in wait loops and it will be reflected of CPU usage.
    Statement about "not healthy for CPU" is a total misunderstaning and not true. Judging about CPU power consumption by CPU load only is just plain stupid, otherwise it won't be necessary to program sophisticated CPU stress test applications loading all pipelines and cores of CPU with heavy calculations. If it was just a question of CPU load, anyone could create an empty loop application to burn the CPU. It doesn't work that way. And AB won't change, it works as expected.
     
  4. Eini

    Eini Guest

    Messages:
    62
    Likes Received:
    6
    GPU:
    Nvidia 9600M GT
    Sorry, UW, but you are wrong on this one. Albeit I have to admit that the choice of the word "unhealthy" was not the best (I do not fear any damage being done), just as your choice of the word "stupid" wasn't either.

    AB's Limit Frame Rate function keeps one of my i7 CPU cores permanently in C0 state, which in turn leads to increased power-consumption, increased heat and increased fan-noise. I can measure these things and I assume you can do so, too.

    AB does everything the opposite of why I am limiting frame-rate to begin with. It doesn't matter what you load my CPU with if the consequences are the ones listed above. As a result AB's function leads to worse results compared to not using it at all. If you do not care to take a look at this and think the current implementation is fine, then that's ok. But Dxtory demonstrates that there are better ways of implementing frame rate limiters, which result in less CPU stress instead of more.
     

  5. Unwinder

    Unwinder Ancient Guru Staff Member

    Messages:
    17,124
    Likes Received:
    6,689
    Of course I am, forums are being regulary visited by users who know how to develop Afterburner properly but due to some odd reason none of you actually develop anything for community. But you definitively know it better, right? You know it better than even display driver developers, which also frequenty implement VSync via the same wait loops, right? Probably you just have to create your own proper framerate limiter and share it with people?

    The only framerate limiting purpose is providing more smooth gaming framerate and save extra GPU power. It is not and never willl be intended for seeing lower CPU usage, that's your personal difficulties than you're trying to acheive some different result with it instead of slowing the CPU down different ways.

    Lie, you don't understand what it is serving for. Let's say: axe leads to worse results if you try to eat with it instead of fork. And it gives much better result if you use it for its primary purpose.

    Sure, skipping frames instead with fluctuating frame times is better way than preciese timing. And AB demonstrates the smoothest framerate of all existing framerate limiters and satisfies a lot of users who try to use it for stutter free gaming and who KNOWS what is framerate limiting for. So don't forget to add IMHO to your "better ways of implementing framerarte limiters".
    Closed, you've got enough text for reading it a few times and thinking at least a bit.
     
    Last edited: Oct 31, 2012
Thread Status:
Not open for further replies.

Share This Page