Performance des effets du bureau

From KDE UserBase Wiki
Revision as of 21:54, 6 March 2024 by Dduca (talk | contribs) (Created page with "Le basculement de Précis vers Fluide peut améliorer considérablement les performances d'effets tels que Present Windows.")

Performance des effets du bureau

Les performances de Desktop Effects dans les espaces de travail de KDE Plasma sont principalement déterminées par l'interaction du matériel graphique (GPU), du pilote et de Compositor (Kwin). Le Compositor essaie de choisir les meilleurs paramètres disponibles pour votre GPU en interrogeant le pilote pour savoir ce que le matériel prend en charge. Quelquesfois on peut améliorer les performances en aidant KWin sur ce que le matériel peut réellement supporter.

Choix du gestionnaire correct de matériel

Déterminer le gestionnaire utilisé

Il est important d'installer et d'utiliser le bon pilote. S'il n'y a pas de pilote, ou qu'un pilote incorrect est utilisé, les effets de bureau reviennent à un backend non accéléré (XRender).

Les informations sur le pilote utilisé sont disponibles via le KInfoCenter. Cliquez sur Informations Graphiques -> OpenGL et analysez les informations fournies dans le module affiché. Les informations pertinentes se trouvent dans la section "Driver", en particulier "Vendor", "Renderer" et "OpenGL/ES version". L'information est fournie par le pilote et peut être difficile à analyser.

Informations OpenGL de KInfoCenter
Si le Renderer indique "Software Rasterizer" il n'y a pas de pilote d'installé. Pour tous les autres pilotes vérifiez que vous utilisez le bon.

Pilotes disponibles

AMD/ATI

Pour le matériel AMD/ATI, deux pilotes sont disponibles : le pilote propriétaire fglrx ou Catalyst et les pilotes gratuits Mesa (appelés radeon, r300, r600). ). Avec le pilote fglrx, toutes les fonctionnalités ne sont pas disponibles et les performances en général semblent meilleures avec les pilotes Mesa. La recommandation est de toujours utiliser les pilotes Mesa avec des effets de bureau. Si vous trouvez l'information "Mesa" dans la version OpenGL/ES, alors vous utilisez les pilotes libres et vous n'avez rien à faire.

Les pilotes Mesa existent dans une version plus ancienne et une autre plus récente. Assurez-vous d'utiliser les plus récents que vous pourrez identifier par le mot "Gallium" dans la chaîne de l'afficheur.

Intel

Le matériel Intel utilise les pilotes libres Mesa. Il n'y a pas d'autre possibilité.

NVIDIA

Pour le matériel NVIDIA, deux pilotes sont disponibles : le pilote propriétaire NVIDIA et les pilotes libres Mesa (connus sous le nom de nouveau). Les pilotes libres sont encore en plein développement et ne sont pas tous disponibles dans toutes les distributions ni pour tous les matériels. Généralement, il est recommandé d'utiliser les pilotes propriétaires. Vous utilisez les pilotes propriétaires si vous voyez NVIDIA dans la chaîne OpenGL/ES version .

Installation du pilote

L'installation du pilote est spécifique à la distribution utilisée. Veuillez consulter la documentation de votre distribution sur ce sujet.

Version OpenGL

KWin prend en charge OpenGL 1.x et OpenGL 2.x. Par défaut KWin utilise les fonctionnalités d'OpenGL 2 si elles sont disponibles. OpenGL 2 permet d'utiliser plus d'effets, mais nécessite un matériel plus puissant. Il est important de savoir que même si votre pilote ne prend en charge que par ex. OpenGL 1.4, il est possible que KWin utilise des fonctionnalités d'OpenGL 2 qui sont disponibles via des extensions dans le pilote.

Vous pouvez trouver la version OpenGL fournie par votre pilote dans la chaîne "OpenGL/ES version" de KInfoCenter comme décrit ci-dessus. La version est définie par les deux ou trois premiers chiffres, par exemple 2.1.

Il n'est pas anodin de savoir si KWin utilise OpenGL 1 ou 2 car cela est entièrement déterminé au moment de l'exécution. Le meilleur test disponible consiste à utiliser l'effet Inverser qui peut être activé dans Paramètres système -> Effets du bureau -> onglet Tous les effets. Après l'avoir activé, l'écran doit être inversé lors de l'utilisation du raccourci Meta + Ctrl + I. Si il s'inverse, OpenGL 2 est utilisé, s'il ne fait rien, OpenGL 1 est utilisé.

Il est possible de forcer KWin à utiliser OpenGL 1 via Paramètres système -> Effets du bureau -> onglet Avancé et en décochant Utiliser les shaders OpenGL 2. Cela peut améliorer les performances du matériel plus ancien. En général, il est totalement sûr d'utiliser OpenGL 2 Shaders si le pilote indique une version 3.x (uniquement disponible avec NVIDIA au moment d'écrire ces lignes).

Tip

Pour le matériel moderne, les shaders OpenGL 2 offrent de meilleures performances qu'OpenGL 1. La désactivation de cette option ne constitue pas une garantie de meilleures performances.


kwin_gles

À partir de la version 4.8 de KWin, il est possible d'utiliser le binaire kwin_gles (construit séparément) en remplacement de kwin. Il se comporte presque de la même manière que l'exécutable « kwin » en mode OpenGL2 avec la légère différence qu'il utilise « egl » au lieu de « glx » comme interface native de la plateforme.

Warning

Cela signifie également que si votre « kwin » normal ne fonctionne pas en mode OpenGL 2, il est peu probable que « kwin_gles » le fasse.


Pour tester kwin_gles il vous suffit de lancer kwin_gles --replace dans Konsole. Puisqu'il s'agit d'une fonctionnalité plutôt nouvelle, elle n'est pas testée de manière aussi approfondie que le « kwin » normal et les commentaires sont toujours les bienvenus. En supposant que le test a réussi et que vous souhaitez utiliser kwin_gles régulièrement, vous pouvez ajouter un script exécutable à ~/.kde4/env/ qui exporte la variable d'environnement KDEWM=kwin_gles.

Mise à l'échelle des vignettes

Le compositeur prend en charge différentes méthodes de mise à l'échelle pour les vignettes telles que rendues dans l'aperçu de la barre des tâches ou des effets tels que Present Windows. On essaie de rendre les vignettes aussi précises que possible, ce qui nécessite bien sûr plus de ressources.

La méthode de mise à l'échelle peut être modifiée dans Paramètres système -> Effets du bureau -> onglet Avancé -> Liste de sélection de la méthode de mise à l'échelle. Les paramètres suivants sont disponibles :

  • Croustillant
  • Lisse
  • Précis

Le tableau donne un aperçu sur la manière dont les vignettes sont affichées en fonction des différents réglages.

Aperçu du rendu des vignettes avec les différents paramètres
Croustillant : Crisp
Lisse : Smooth
Précis : Accurate

Par défaut, Précis est utilisé. Sur le matériel Intel, Précis n'est jamais utilisé et ne peut être activé que si la variable d'environnement « KWIN_FORCE_LANCZOS » est définie sur « 1 ».

Le basculement de Précis vers Fluide peut améliorer considérablement les performances d'effets tels que Present Windows.

Vitesse générale des animations

Les animations prennent un certain temps et la durée d'une animation est ce qui fait penser aux gens qu'il s'agit d'une interface rapide ou qu'elle est en retard. Il s'agit d'un sentiment très subjectif et la différence entre trop rapide et trop lent peut être de quelques millisecondes. Il est impossible d’avoir une valeur parfaite pour tous les utilisateurs.

The global animation duration level can be changed through Systemsettings -> Desktop Effects -> General Tab -> Animation speed selection list. It varies from "Extremely slow" to "Instant" which does not render any animations. By changing from "Normal" to "Fast" many users reported having a more snappy interface.

Systèmes graphiques Qt

Since 4.7 (Released July 2011) the Compositor can use the Qt graphics system raster instead of native (X11). This is only relevant for rendering the window decorations and is not related to the compositing backends (OpenGL/XRender).

Which graphics system is used depends on the distribution defaults. For the Compositor raster is recommended especially if the NVIDIA driver is used. KWin will always select the best graphics system for your chosen compositor. The following general combinations can be recommended:

  • OpenGL with raster
  • XRender with native
  • No Compositing:
    • native in case of remote connections (recommended window decoration: Laptop)
    • raster if using fancy window decoration (including Oxygen and Plastik in 4.10 or later)

Décoration des fenêtres

Some Window Decorations perform animations when a window gets activated. This influences the performance of effects if during an animation the active window changes. The performance impact can be reduced by using the graphics system "raster" (see above).

The default window decoration Oxygen provides an option to disable the animations: Systemsettings -> Workspaces Appearance -> Window Decorations -> Configure Decoration... -> General tab Checkbox Enable animations. Disabling the animations can improve the performance.

All window decorations which can be downloaded through the Get New Decorations... dialog use such animations, but it is not possible to disable them. If there is an performance impact due to the theme, it is recommended to use a different one. In general the themed decorations are not optimized and provided to look good and not to be fast.

Another area of window decorations which can impact the performance are shadows. Again the default decoration Oxygen provides a setting to disable them in the same configuration dialog as described above in tab "Shadows" and the themed decorations do not provide an option to disable shadows.

Blur Effect

The Blur Effect is one of the most expensive effects provided by the Compositor. By default it gets enabled for all hardware except Intel hardware. The performance impact of the blur effect depends on the number of open and translucent windows. Especially translucent widget styles (e.g. Oxygen Translucent) and translucent window decorations (e.g. Aurorae Themes) have an impact on the performance. If such a theme is used and the performance is bad it is recommended to either change the theme or disable the Blur effect.

The performance of the Blur effect can be adjusted through Systemsettings -> Desktop Effects -> All Effects tab -> Configuration dialog of Blur effect. Moving the slider for strength to "Light" requires less resources while moving it towards "Strong" requires more resources. Since 4.8 (release January 2012) the intermediate rendering results can be kept (default) which improves the performance even with translucent themes.

Configuration avancée des effets du bureau

The Compositor provides some advanced settings under Systemsettings -> Desktop Effects -> Advanced tab. Some of the settings have already been explained. This section focuses on the remaining settings. Changing these settings in general do not improve the performance but make it worse. The Compositor uses the best possible settings.

Type de composition

The Compositing type allows choice of the compositing backend, either XRender or OpenGL. By default OpenGL is used which is hardware accelerated. XRender is available even if no OpenGL driver is installed (e.g. virtual machines) and uses mostly the CPU for rendering. Many effects are not available with XRender.

Information

If there is no good reason to change, the default OpenGL is the correct choice. If OpenGL is not available there is an automatic fallback to XRender.


Garder les vignettes des fenêtres

This has hardly any influence on performance. It is an option to decide how long thumbnails are kept. Best is to not touch this setting.

Suspendre les effets du bureau dans les fenêtres en plein-écran

This setting influences the performance of fullscreen windows such as games. The compositor is suspended as long as there is a fullscreen window. The disadvantage is that it causes flickering when a window appears on top of the fullscreen window (e.g. a context menu) and is too generic. As well on some distributions (e.g. Kubuntu 11.04) the Intel driver causes a crash when closing the fullscreen window.

If the compositor should be disabled while a fullscreen application such as games or video is used it is better to disable compositing either through the shortcut Alt + Shift + F12 or since 4.7 (Released July 2011) through a window specific rule for the window.

Mode OpenGL

Warning

The setting is obsolete and has been removed in 4.7 (Released July 2011). Any setting except the default "Texture from Pixmap" is likely to break your desktop.


Activer les rendus en direct

Warning

The setting is obsolete and has been removed in 4.8 (Released January 2012).

The compositor determines by itself whether direct rendering can and has to be used. Changing this setting will most likely break functionality.

Utiliser VSync

VSync allows you to synchronize the rendering with the screen. Unless there is good reason to change, this setting should be enabled. Even if the setting is disabled the Compositor tries to use the frame rate the screen supports and by default a frame rate of 60 Hz is used.

For multiple screens it is important to know that the rendering can only be synchronized with one screen. In case the screens have a different frame rate it might be valid to disable this option and to set a manual frame rate.