Announcement

Collapse
No announcement yet.

Open source drivers force vsync for everything 3D - why?

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Open source drivers force vsync for everything 3D - why?

    Why is vsync on for everything and can it be disabled for games?

    Using ubuntu 11.04

  • #2
    These are the two toggles, disable both for the best speed.

    vblank_mode (vsync)
    swapbufferswait (anti-tearing)

    Comment


    • #3
      Where and how do I "toggle" them?

      Comment


      • #4
        Originally posted by curaga View Post
        These are the two toggles, disable both for the best speed.

        vblank_mode (vsync)
        swapbufferswait (anti-tearing)
        Hmm, what happens if vblank_mode is disabled and swapbufferswait is enabled? And what's the difference between the two?

        Comment


        • #5
          @Not so pretty now

          "man radeon", "man xorg.conf" for the latter, driconf for the former.

          @RealNC

          Last I tested that combo, it synced at twice the refresh rate (120fps cap). I don't know the internals, but I think that -wait is a lighter form that only avoids the blank, while vsync has a max cap of refresh rate.


          Me <3 editing

          Comment


          • #6
            With swapbufferswait Off sync_vblank doesn't matter anymore and vsync is OFF.
            With swapbufferswait On and sync_vblank set to 0 vsync is OFF.
            With swapbufferswait On and sync_vblank set to 3 vsync is ON.
            You can set sync_vblank on a per-application basis.

            At least with Intel.
            ## VGA ##
            AMD: X1950XTX, HD3870, HD5870
            Intel: GMA45, HD3000 (Core i5 2500K)

            Comment


            • #7
              Originally posted by curaga View Post
              "man radeon", "man xorg.conf" for the latter, driconf for the former.
              Couldn't you just tell the commands? What is the point of me reading through xorg.conf man page if I only need one concrete thing. I see nothing that could be helpful:
              Code:
              man radeon | grep sync
                            XV_VSYNC is used to control whether textured adapter synchronizes the screen update to  the
                            XV_CRTC is used to control which display controller (crtc) the  textured  adapter  synchro‐
                            nizes  the screen update with when XV_VSYNC is enabled.  The default, 'auto'(-1), will sync
                            things  like clone mode where the user can best decide which display should be synced.  The
              man xorg.conf | grep sync
                            This option controls whether the log is flushed and/or synced to disk after  each  message.
                            Possible values are flush or sync.  Unset by default.
                     HorizSync  horizsync-range
                            gives   the   range(s)   of   horizontal   sync   frequencies  supported  by  the  monitor.
                            horizsync-range may be a comma separated list of either discrete values or ranges  of  val‐
                            HTimings  hdisp hsyncstart hsyncend htotal
                            VTimings  vdisp vsyncstart vsyncend vtotal
                                of  the  VSync  signal.   "Composite" can be used to specify composite sync on hardware
                                used to select the composite sync polarity.
                            tal  timings.   These  numbers are the hdisp, hsyncstart, hsyncend, and htotal values.  The
                            the  vdisp,  vsyncstart, vsyncend, and vtotal values.  The final section is a list of flags
                            select  the  polarity of the VSync signal.  Composite can be used to specify composite sync
                            be used to select the composite sync polarity.  The HSkew and VScan options mentioned above
                            This option controls whether the video card should drive the sync signal on the green color


              You can set sync_vblank on a per-application basis.
              How?

              Comment


              • #8
                Code:
                Option "SwapbuffersWait" "boolean"
                You can set sync_vblank on a per-application basis.
                Use driconf and look under performance tab.
                Last edited by DanL; 05-29-2011, 12:14 PM.

                Comment


                • #9
                  Heh, that's a Linux user for you .
                  With r300g I have to change both swapbufferswait and sync_vblank for vsync to be turned completely off. For swapbufferswait just add the option to your xorg.conf and set it to off. For sync_vblank use either driconf, although I then had to configure the .drirc file it creates in my home directory and change the "driver" entry to dri2 instead of the r300 it uses (but amusingly enough that doesn't seem to work with Narwhal ).

                  Comment


                  • #10
                    Originally posted by Not so pretty now View Post
                    How?
                    http://dri.freedesktop.org/wiki/Conf...Infrastructure
                    ## VGA ##
                    AMD: X1950XTX, HD3870, HD5870
                    Intel: GMA45, HD3000 (Core i5 2500K)

                    Comment


                    • #11
                      Originally posted by DanL View Post
                      Code:
                      Option "SwapbuffersWait" "boolean"

                      Use driconf and look under performance tab.
                      I did that, but there is still vsync. Is it because of Unity? Vsync is turned off in compiz settings.

                      Comment


                      • #12
                        *bump* I am back using open source drivers in Ubuntu 11.04 temporarily

                        Here is my .drirc:

                        Code:
                        <driconf>
                            <device screen="0" driver="r600">
                                <application name="Default">
                                    <option name="fthrottle_mode" value="2" />
                                    <option name="vblank_mode" value="1" />
                                    <option name="allow_large_textures" value="1" />
                                </application>
                                <application name="warsow" executable="/home/myname/warsow/warsow">
                                    <option name="fthrottle_mode" value="2" />
                                    <option name="vblank_mode" value="0" />
                                </application>
                            </device>
                        </driconf>
                        Frames per second in Warsow is still locked at 60

                        Comment


                        • #13
                          Originally posted by Melcar View Post
                          For sync_vblank use either driconf, although I then had to configure the .drirc file it creates in my home directory and change the "driver" entry to dri2 instead of the r300 it uses (but amusingly enough that doesn't seem to work with Narwhal ).
                          Alright, I just froze everything, not even REISUB saved me.

                          *gives up on gaming with open source drivers for another 10 years*

                          Comment


                          • #14
                            Ubuntu 11.04 is still using 7.10. The difference between r600g in 7.10 and (what will be released as) 7.11 is like night and day. Very much worth the effort to grab from git or by using some unofficial packages.

                            You still need to manually edit drirc:
                            Code:
                            <driconf>
                               <device screen="0" driver="dri2">
                                  <application name="Default">
                                      <option name="vblank_mode" value="0" />
                                  </application>
                                </device>
                            </driconf>

                            Comment


                            • #15
                              I added this ppa:
                              Code:
                              ppa:oibaf/graphics-drivers
                              Described here: http://phoronix.com/forums/showthrea...aphics-Drivers

                              I don't know what driver version I now have, but vsync issues are gone! I didn't even have to run driconf and disable it there.
                              Unfortunately Warsow can't achieve stable 125 fps yet, even at 640x480 resolution.

                              Comment

                              Working...
                              X