Why does vblank_mode improve framerate drastically in benchmarks?

15,918

vblank_mode=0 tells the graphic card to ignore the refresh rate of your monitor and just try to reach the maximux fps it's capable off.

You usually don't want this, because it causes tearing and wastes battery life without any benefits (you can't view more then, in your case, 60fps because your monitor isn't able to change what's displaying more than 60 times every second).

You might sometimes want this (in online shooters such as cs:go for example) because otherwise you will have a lot of input lag. It's a trade-off, input lag vs. screen tearing.

I think optirun sets vblank_mode=0 by default, so it doesn't change whether you specify it or not. primusrun doesn't and it too caps at 60 fps without vblank_mode=0.

Share:
15,918

Related videos on Youtube

dhojgaard
Author by

dhojgaard

Love the free beer "Ubuntu", nah just kidding, actually love the freedom philosophy. "We had nothing, we give what we gained for free"

Updated on September 18, 2022

Comments

  • dhojgaard
    dhojgaard almost 2 years

    I am messing around trying to find the best graphics solution for my Laptop with Optimus Nvidia. (ASUS K55VD)

    I've got bumblebeed running and i use optirun when i want to improve graphics performance. The only problem is that i dont know if it is really working.

    When i execute eg. glxgears i get the following performance results:

    normal glxgears on intel graphics: arround 60 FPS
    optirun glxgears on nvidia graphics: arround 1300 FPS

    Well this looks fine i guess..

    My wondering starts when i execute with vblank_mode=0 in front of both the commands:

    vblank_mode=0 glxgears gives: arround 5000 FPS
    vblank_mode=0 optirun glxgears gives: around 1400 PFS

    Why am i getting such weird results?

  • dhojgaard
    dhojgaard about 11 years
    Ok, thank you - So how would you actually benchmark primusrun and optirun to see the different performance?
  • bercio
    bercio about 11 years
    you would indeed use vblank=0 for all cases. primusrun should outperform optirun in all cases, I believe. here are some benchmarks:reddit.com/r/linux/comments/1dafbl/…