Journal Les drivers Xorg inutiles avec un noyau récent?

Posté par (page perso) . Licence CC by-sa
Tags : aucun
36
18
mai
2016

Salut,

comme je sais qu'il y'a des gens calés en pile graphique par ici…

Hier en trainant sur le forum d'ArchLinux, je tombe sur un mec qui a des problèmes de lags avec sa carte intel et Gnome Shell…. Un autre lui répond de virer xf86-video-intel et cela corrige son problème.

Je teste sur mon pc au taf (ati au lieu de intel) et la différence est flagrante!

Sur mon laptop avec chipset Intel, c'est mon flagrant vu que les perfs était déjà optimales…

Bref, il s'est passé quoi dans le monde Xorg/Wayland/…? C'est quoi cette histoire de modesetting qui remplace l'ensemble des autres drivers?
J'ai regardé là:
https://www.x.org/wiki/ModeSetting/
Mais cela n'explique pas comment un truc générique a pu remplacer des drivers… Il ne faisait que ça les drivers xorg, changer la résolution?

Merci.

  • # Skylake?

    Posté par (page perso) . Évalué à 10.

    Skylake a reçu l'acceleration 2D que très récemment. Cela dit, même sans, je vois quand même dans tous les benchmarks que modesetting est bien moins performance que le pilote xf86-video-intel.

    Du coup, je me demande si la personne utilise un processeur Skylake et quel DE cette personne utilise? Perso, je suis au courant de bien plus de problèmes avec modesetting que Intel.

    • [^] # Re: Skylake?

      Posté par (page perso) . Évalué à 3.

      Sur mon pc au taf:

      01:05.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] RS780C [Radeon 3100]

      Sur mon laptop:

      00:02.0 Intel Corporation Haswell-ULT Integrated Graphics Controller (rev 0b)

      Pas vu de problème de stabilité sous ArchLinux avec linux-lts.

      • [^] # Re: Skylake?

        Posté par (page perso) . Évalué à 6.

        Quel Desktop Environment (DE) tu utilises? Gnome, KDE, autre? KDE a presque pas de soucis car Qt utilise très peu X pour l'accel 2D.

        • [^] # Re: Skylake?

          Posté par (page perso) . Évalué à 2. Dernière modification le 18/05/16 à 13:07.

          Gnome Shell sur les deux machines. La différence est flagrante dans les animations GTK.

          • [^] # Re: Skylake?

            Posté par (page perso) . Évalué à 5. Dernière modification le 18/05/16 à 13:10.

            Cool! DRI2 ou DRI3?

            Pour vérifier, il suffit de taper:
            LIBGL_DEBUG=verbose glxgears

            C'est possible que ce soit ça la différence majeure car DRI3 est par défaut dans modesetting et pas sur Intel!

            • [^] # Re: Skylake?

              Posté par (page perso) . Évalué à 2.

              Je confirme, DRI3 sur les deux machines.

              • [^] # Re: Skylake?

                Posté par (page perso) . Évalué à 4.

                Oui, mais tu utilisais DRI3 avec xf86-video-intel ou pas? C'est ca la question ;)

                • [^] # Re: Skylake?

                  Posté par (page perso) . Évalué à 2.

                  Je viens de vérifier, j'avais DRI2 d'utilisé. C'est une bonne nouvelle? :)

                  • [^] # Re: Skylake?

                    Posté par (page perso) . Évalué à 7.

                    Si tu ne vois aucun problèmes avec modesetting et DRI3, c'est super :)

                    Mais xf86-video-intel n'active pas DRI3 par défaut car certaines applications ne marchent pas bien et tu risques de les rencontrer. Une d'entre elles est "epiphany", le browser de gnome. Teste d'aller dans google et scroller, tu devrais avoir un truc horriblement lent. Lance le comme ca "LIBGL_DRI3_DISABLE=1 epiphany" et tu verras que le problème disparaît :s

  • # Modesetting vs les autres xf86-video-xxxx

    Posté par (page perso) . Évalué à 10.

    Un DDX a plusieurs roles:
    1. Gérer la résolution
    2. Accélérer les primitives 2D de X11 et XRender
    3. Accélérer l'affichage des videos (YUV)

    L'interface KMS du noyau abstrait déjà les pré-requis pour les points 1 et 3. Le point 2 est celui qui est problématique car il est dépendant du matériel et du fabriquant (AMD, Intel, NVIDIA, etc…). Cependant, il y a une interface de rendu 2D/3D qui est commune et qui peut être utilisée, OpenGL. Du coup, le projet glamor est né et accélère les primitives 2D/XRender via OpenGL.

    Par contre, Glamor est clairement pas aussi efficace que le code assembleur écrit dans xf86-video-intel/nouveau. J’espère avoir une présentation sur ça à XDC2016.

    Du coup, je suis plus que surpris quand les gens disent que modesetting marche mieux que xf86-video-intel (à moins qu'ils utilisent pas une version git, vu que la dernière version date de …. 2013?).

    • [^] # Re: Modesetting vs les autres xf86-video-xxxx

      Posté par (page perso) . Évalué à 4.

      14297.706 LoadModule: "modesetting"
      14297.706 Loading /usr/lib/xorg/modules/drivers/modesetting_drv.so
      14297.708 Module modesetting: vendor="X.Org Foundation"
      [ 14297.708] compiled for 1.18.3, module version = 1.18.3
      [ 14297.708] Module class: X.Org Video Driver
      [ 14297.708] ABI class: X.Org Video Driver, version 20.0

      Dans le doute, je viens de vérifier ce qui était chargé à la place du DDX ati.

      Perso, je n'ai vu que du positif en virant le driver ATI.

      • [^] # Re: Modesetting vs les autres xf86-video-xxxx

        Posté par . Évalué à 3.

        Pour la 2D uniquement ou aussi pour la 3D ?

        Ce n'est pas parce que les choses sont difficiles que nous n'osons pas. C'est parce que nous n'osons pas qu'elles sont difficiles. - Sénéque

      • [^] # Re: Modesetting vs les autres xf86-video-xxxx

        Posté par . Évalué à 4.

        Merci pour ton journal, j'ai fait la meme chose sur mon pc et j'ai virer du coup les drivers intel. Les pros:

        • depuis un update recent des drivers intel quand je sortais l'ordi de veille, l'ecran avait des sortes de "flickers". Je ne les a plus avec modesetting.

        • Je ne vois aucune difference, pour le moment, et cela avec un bureau KDE4

        Cons:

        pas grand chose, en fait je n'en vois qu'une, encore pour le moment, cela concerne les resolutions lorsque j'attache mon laptop sur la base. Il n'y a plus celle qui permettait de conserver le ratio correct du laptop mais en diminuant la resolution. Ce qui fait que maintenant je suis en 1920x1080 sur les deux ecrans mais le passage de l'un a l'autre est fatiguant pour les yeux :). C'est honnetement un detail et probablement reglable avec une modif dans xorg.conf.

        Merci encore c'est super cool de voir a quel point le kernel a evolue.

    • [^] # Re: Modesetting vs les autres xf86-video-xxxx

      Posté par (page perso) . Évalué à 4.

      La partie 3D, elle est faite à quelle niveau ? (je pensais que c'était dans xf86-video-xxxx)

      « Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche

  • # Note dans le paquet Debian

    Posté par (page perso) . Évalué à 10.

    Dans le paquet Debian "xserver-xorg-video-intel" la note va dans ce sens :

    The use of this driver is discouraged if your hw is new enough (ca. 2007 and newer). You can try uninstalling this driver and let the server use it's builtin modesetting driver instead.

  • # Yes !

    Posté par (page perso) . Évalué à 4.

    Ça fonctionne également pour moi sur un portable avec vidéo ATI sur une debian testing:

    lspci|grep -i vga
    00:01.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Wrestler [Radeon HD 6320]

    C'est nettement plus fluide avec Gnome Shell

    Merci !

    • [^] # Re: Yes !

      Posté par (page perso) . Évalué à 4.

      Bon, va falloir que je regarde gnome shell alors. Merci pour le retour tout le monde!

    • [^] # Re: Yes !

      Posté par (page perso) . Évalué à 1.

      Tu as fait quelle modification ou suppression de paquet ?

      • [^] # Re: Yes !

        Posté par . Évalué à 3.

        Le plus simple est de forcer l'utilisation de modesetting. Par exemple :

        Section "Device"
        Identifier "monGPU"
        Driver "modesetting"
        EndSection

        Sinon il faut garder au moins un driver xserver-xorg-video-* installé (voir bug 813964). Avec le driver dummy (seul) par exemple, le serveur X sélectionne en priorité modesetting (sans besoin modifier quoique ce soit dans /etc/X11/xorg.conf.d/).

      • [^] # Re: Yes !

        Posté par (page perso) . Évalué à 2.

        Juste supprimé le paquet xserver-xorg-video-ati, je viens de voir que xserver-xorg-video-modesetting n'était plus installé.. du coup je me pose des questions, je me demande si c'était pas un effet placebo

  • # Benchmark

    Posté par (page perso) . Évalué à 5.

    Je ne sais pas si c'est lié mais phoronix a récemment publié un benchmark entre le ddx Intel et le modesetting et il ressort que le ddx Intel est bien mieux (l'inverse de ce que dit le journal). Du coup, c'est assez étrange.

    http://www.phoronix.com/scan.php?page=news_item&px=Intel-DDX-May-Tests

    « Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche

    • [^] # Re: Benchmark

      Posté par (page perso) . Évalué à 2.

      Pour ma part, je ne ressens pas de différence de performance de manière générale.

      Cependant, modesettings semble plus stable sur mon ordinateur, ce qui est amusant vu qu'il est bien plus récent que le pilote intel.

    • [^] # Re: Benchmark

      Posté par . Évalué à 2. Dernière modification le 22/05/16 à 14:38.

      Ici c'est strictement identique en terme de perfs entre le driver Xorg et le modesetting seul. Par contre il y a un effet de bord assez inattendu : avec le binaire nvidia via bbswitch "les perfs" (le résultat de glxspheres64 seul) passent de 450~460Mpixels/s à 470~480Mpixels/s. Et c'est reproductible à chaque fois (de-install xorg-x11-drv-intel, ré-install)


      [0000:00]-+-00.0 Intel Corporation Skylake Host Bridge/DRAM Registers
      +-01.0-[01] 00.0 NVIDIA Corporation GM204M [GeForce GTX 970M]
      +-02.0 Intel Corporation HD Graphics

      • [^] # Re: Benchmark

        Posté par (page perso) . Évalué à 3.

        Ici c'est strictement identique en terme de perfs entre le driver Xorg et le modesetting seul.

        Tu fais quoi comme benchmark pour la 2d?

        « Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.