Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Can't get VSync in OpenGL with onboard via
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Desktop Environments
View previous topic :: View next topic  
Author Message
bLUEbYTE84
Guru
Guru


Joined: 21 Jul 2006
Posts: 566
Location: universe.tar.gz, src/earth.h, struct homo_sapiens_table

PostPosted: Tue Nov 07, 2006 2:21 pm    Post subject: Can't get VSync in OpenGL with onboard via Reply with quote

Hi,
I have an onboard via unichrome video card (K8M800 chipset). I did the hardware accel. & opengl setup and it's working fine (~800 fps in glxgears). However I experience severe tearing in full-screen opengl applications. Many applications don't have any way to trigger vsync setting, so I need to activate it in driver, which I didn't succeed. Tearing continues after modifying config files, and glxgears FPS stays the same (i.e. setting is ineffective). Here are the relevant config/diagnostic data:

xorg.conf

Code:

Section "Module"

# This loads the DBE extension module.

    Load        "dbe"     # Double buffer extension

# This loads the miscellaneous extensions module, and disables
# initialisation of the XFree86-DGA extension within that module.
    SubSection  "extmod"
      Option    "omit xfree86-dga"   # don't initialise the DGA extension
    EndSubSection

# This loads the font modules
#    Load        "type1"
#    Load        "speedo"
    Load        "freetype"
#    Load        "xtt"

# This loads the GLX module
   Load       "glx"
# This loads the DRI module
   Load       "dri"

EndSection

. . .

Section "Monitor"

    Identifier  "LG700s"

# HorizSync is in kHz unless units are specified.
# HorizSync may be a comma separated list of discrete values, or a
# comma separated list of ranges of values.
# NOTE: THE VALUES HERE ARE EXAMPLES ONLY.  REFER TO YOUR MONITOR'S
# USER MANUAL FOR THE CORRECT NUMBERS.

    HorizSync   30-70

#    HorizSync   30-64         # multisync
#    HorizSync   31.5, 35.2    # multiple fixed sync frequencies
#    HorizSync   15-25, 30-50  # multiple ranges of sync frequencies

# VertRefresh is in Hz unless units are specified.
# VertRefresh may be a comma separated list of discrete values, or a
# comma separated list of ranges of values.
# NOTE: THE VALUES HERE ARE EXAMPLES ONLY.  REFER TO YOUR MONITOR'S
# USER MANUAL FOR THE CORRECT NUMBERS.

#    VertRefresh 50-160
   VertRefresh 60

EndSection

Section "Device"
    Identifier  "Unichrome"
    Driver      "via"
#   Option   "EnableAGPDMA"   "true"
#   Option   "DisableIRQ"   "false"
    #VideoRam    32768
    # Insert Clocks lines here if appropriate
EndSection


Section "Screen"
    Identifier  "Screen 1"
    Device      "Unichrome"
    Monitor     "LG700s"
    DefaultDepth 16

    Subsection "Display"
        Depth       8
        Modes       "1024x768" "800x600" "640x480"
        ViewPort    0 0
    EndSubsection
    Subsection "Display"
        Depth       16
        Modes       "1024x768" "800x600" "640x480"
        ViewPort    0 0
    EndSubsection
    Subsection "Display"
        Depth       24
        Modes       "1024x768" "800x600" "640x480"
        ViewPort    0 0
    EndSubsection
EndSection


Section "ServerLayout"

# The Identifier line must be present
    Identifier  "Simple Layout"

    Screen "Screen 1"

    InputDevice "Mouse1" "CorePointer"
    InputDevice "Keyboard1" "CoreKeyboard"

EndSection

Section "DRI"
   Mode 0666
EndSection


Output of xdriinfo screen 0
Code:

<driinfo>
<section>
<description lang="en" text="Performance"/>
<description lang="de" text="Leistung"/>
<description lang="es" text="Rendimiento"/>
<description lang="nl" text="Prestatie"/>
<description lang="fr" text="Performance"/>
<option name="fthrottle_mode" type="enum" default="2" valid="0:2">
<description lang="en" text="Method to limit rendering latency">
<enum value="0" text="Busy waiting for the graphics hardware"/>
<enum value="1" text="Sleep for brief intervals while waiting for the graphics hardware"/>
<enum value="2" text="Let the graphics hardware emit a software interrupt and sleep"/>
</description>
<description lang="de" text="Methode zur Begrenzung der Bildverzögerung">
<enum value="0" text="Aktives Warten auf die Grafikhardware"/>
<enum value="1" text="Kurze Schlafintervalle beim Warten auf die Grafikhardware"/>
<enum value="2" text="Die Grafikhardware eine Softwareunterbrechnung erzeugen lassen und schlafen"/>
</description>
<description lang="es" text="Método para limitar la latencia de rénder">
<enum value="0" text="Esperar activamente al hardware gráfico"/>
<enum value="1" text="Dormir en intervalos cortos mientras se espera al hardware gráfico"/>
<enum value="2" text="Permitir que el hardware gráfico emita una interrupción de software y duerma"/>
</description>
<description lang="nl" text="Methode om beeldopbouwvertraging te onderdrukken">
<enum value="0" text="Actief wachten voor de grafische hardware"/>
<enum value="1" text="Slaap voor korte intervallen tijdens het wachten op de grafische hardware"/>
<enum value="2" text="Laat de grafische hardware een software onderbreking uitzenden en in slaap vallen"/>
</description>
<description lang="fr" text="Méthode d'attente de la carte graphique">
<enum value="0" text="Attente active de la carte graphique"/>
<enum value="1" text="Attente utilisant usleep()"/>
<enum value="2" text="Utiliser les interruptions"/>
</description>
</option>
<option name="vblank_mode" type="enum" default="1" valid="0:3">
<description lang="en" text="Synchronization with vertical refresh (swap intervals)">
<enum value="0" text="Never synchronize with vertical refresh, ignore application's choice"/>
<enum value="1" text="Initial swap interval 0, obey application's choice"/>
<enum value="2" text="Initial swap interval 1, obey application's choice"/>
<enum value="3" text="Always synchronize with vertical refresh, application chooses the minimum swap interval"/>
</description>
<description lang="de" text="Synchronisation mit der vertikalen Bildwiederholung">
<enum value="0" text="Niemals mit der Bildwiederholung synchronisieren, Anweisungen der Anwendung ignorieren"/>
<enum value="1" text="Initiales Bildinterval 0, Anweisungen der Anwendung gehorchen"/>
<enum value="2" text="Initiales Bildinterval 1, Anweisungen der Anwendung gehorchen"/>
<enum value="3" text="Immer mit der Bildwiederholung synchronisieren, Anwendung wählt das minimale Bildintervall"/>
</description>
<description lang="es" text="Sincronización con el refresco vertical (intervalos de intercambio)">
<enum value="0" text="No sincronizar nunca con el refresco vertical, ignorar la elección de la aplicación"/>
<enum value="1" text="Intervalo de intercambio inicial 0, obedecer la elección de la aplicación"/>
<enum value="2" text="Intervalo de intercambio inicial 1, obedecer la elección de la aplicación"/>
<enum value="3" text="Sincronizar siempre con el refresco vertical, la aplicación elige el intervalo de intercambio mínimo"/>
</description>
<description lang="nl" text="Synchronisatie met verticale verversing (interval omwisselen)">
<enum value="0" text="Nooit synchroniseren met verticale verversing, negeer de keuze van de applicatie"/>
<enum value="1" text="Initïeel omwisselingsinterval 0, honoreer de keuze van de applicatie"/>
<enum value="2" text="Initïeel omwisselingsinterval 1, honoreer de keuze van de applicatie"/>
<enum value="3" text="Synchroniseer altijd met verticale verversing, de applicatie kiest het minimum omwisselingsinterval"/>
</description>
<description lang="fr" text="Synchronisation de l'affichage avec le balayage vertical">
<enum value="0" text="Ne jamais synchroniser avec le balayage vertical, ignorer le choix de l'application"/>
<enum value="1" text="Ne pas synchroniser avec le balayage vertical par défaut, mais obéir au choix de l'application"/>
<enum value="2" text="Synchroniser avec le balayage vertical par défaut, mais obéir au choix de l'application"/>
<enum value="3" text="Toujours synchroniser avec le balayage vertical, l'application choisit l'intervalle minimal"/>
</description>
</option>
</section>
<section>
<description lang="en" text="Debugging"/>
<description lang="de" text="Fehlersuche"/>
<description lang="es" text="Depurando"/>
<description lang="nl" text="Debuggen"/>
<description lang="fr" text="Debogage"/>
<option name="no_rast" type="bool" default="false">
<description lang="en" text="Disable 3D acceleration"/>
<description lang="de" text="3D-Beschleunigung abschalten"/>
<description lang="es" text="Desactivar aceleración 3D"/>
<description lang="nl" text="3D versnelling uitschakelen"/>
<description lang="fr" text="Désactiver l'accélération 3D"/>
</option>
</section>
</driinfo>



Content of file ~/.drirc
Code:

<driconf>
   <device screen="0" driver="via">
      <application name="all">
         <option name="vblank_mode" value="3" />
      </application>
   </device>
</driconf>


Content of file ~/.drirc
Code:

<driconf>
   <device screen="0" driver="via">
      <application name="all">
         <option name="vblank_mode" value="3" />
      </application>
   </device>
</driconf>


And putting "unichrome" in place of via doesn't help either
Content of file ~/.drirc
Code:

<driconf>
   <device screen="0" driver="unichrome">
      <application name="all">
         <option name="vblank_mode" value="3" />
      </application>
   </device>
</driconf>
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Desktop Environments All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum