GNU/Linux >> Tutoriels Linux >  >> Linux

Que fait réellement Libgl_always_indirect=1 ?

KDE SC 4.5.0 a quelques problèmes avec certaines cartes vidéo, dont la mienne. Lors de la sortie, Arch a recommandé plusieurs solutions de contournement. L'un d'eux était

exporter "LIBGL_ALWAYS_INDIRECT=1" avant de démarrer KDE

J'ai décidé que c'était la méthode la plus simple et la meilleure. Mais je ne sais pas ce que cela fait ou comment cela affecte mon système. Est-ce plus lent que la valeur par défaut ? dois-je me rappeler de garder un œil sur le problème et de le désactiver plus tard une fois qu'il est résolu ?

Réponse acceptée :

Le rendu indirect signifie que le protocole GLX sera utilisé pour transmettre les commandes OpenGL et que X.org fera le vrai dessin.

Le rendu direct signifie que l'application peut accéder directement au matériel sans communication préalable avec X.org via mesa.

Le rendu direct est plus rapide car il ne nécessite pas de changement de contexte dans le processus X.org.

Clarification : Dans les deux cas, le rendu est effectué par GPU (ou techniquement - peut être effectué par GPU). Cependant, dans le rendu indirect, le processus ressemble à :

  1. Le programme appelle une ou plusieurs commandes
  2. La ou les commandes sont envoyées à X.org par le protocole GLX
  3. X.org appelle le matériel (c'est-à-dire le GPU) pour dessiner

En rendu direct

  1. Le programme appelle une ou plusieurs commandes
  2. La ou les commandes sont envoyées au GPU

Veuillez noter que parce qu'OpenGL a été conçu de telle manière qu'il peut fonctionner sur le réseau, le rendu indirect est plus rapide qu'une implémentation naïve de l'architecture, c'est-à-dire qu'il permet d'envoyer un lot de commandes en une seule fois. Cependant, il y a une surcharge en termes de temps CPU consacré aux changements de contexte et au protocole de gestion.


Linux
  1. Qu'est-ce que NGINX ? Comment ça marche?

  2. Que signifie "-" (double tiret) ?

  3. Que fait Exec 3 ?

  4. Qu'est-ce que Echo $ ? Faire??

  5. Qu'est-ce que . Commande ~/.bashrc Faire ? ?

Que signifie chmod 777

Que fait "lc_all=c" ?

Qu'est-ce que c'est ?

Que fait Bamfdaemon ?

Que fait ulimit -s unlimited ?

Que produit pwd ?