Швидкодія стільничних ефектів

From KDE UserBase Wiki
Revision as of 13:19, 11 December 2011 by Yurchor (talk | contribs) (Created page with "Перемикання зі способу «Точний» на «Плавний» може значно покращити швидкодію ефектів, зокрема е...")

Швидкодія стільничних ефектів

Швидкодія стільничних ефектів у робочих просторах Плазми KDE здебільшого визначається взаємодією графічного обладнання (графічного процесора), його драйвера і підпрограми композитного відтворення (Kwin). Підпрограма композитного відтворення намагається вибрати найкращі з доступних параметрів для вашого графічного процесора опитуванням драйвера щодо можливостей обладнання. Іноді ваша допомога KWin у визначенні реальних можливостей обладнання може покращити швидкодію.

Вибір належного драйвера

Визначення назви драйвера, який використовується

Важливо, щоб у системі було встановлено і використано належний драйвер. Якщо драйвер не буде встановлено або буде встановлено не той драйвер, стільничні ефекти буде повернуто у режим без апаратного прискорення (XRender).

Дані щодо використано драйвера можна отримати за допомогою Центру інформації. Виберіть пункт Графічна інформація -> OpenGL і вивчіть дані, показані відповідним модулем. Відповідні дані буде показано у розділі Драйвер, зокрема пункти Постачальник, Відтворювач і Версія OpenGL/ES. Дані буде надано драйвером, можливо вам буде важко у них розібратися.

Дані щодо OpenGL у KInfoCenter
Якщо для пункту відтворювача вказано «Програмне відтворення», драйвер не встановлено. Якщо використано інший драйвер, будь ласка, перевірте, ви використано належний драйвер.

Доступні драйвери

AMD/ATI

Для обладнання AMD/ATI створено два драйвера: закритий fglrx або Catalyst і відкриті драйвери Mesa (також відомі як radeon, r300, r600). У разі використання драйвера fglrx доступні не всі функціональні можливості, а швидкодія загалом краща за швидкодію драйвера Mesa. Втім, рекомендується використання драйверів Mesa для обробки стільничних ефектів. Якщо у полі версії OpenGL/ES вказано «Mesa», ви користуєтеся вільними драйверами, — нічого робити не треба.

Існує дві версії драйверів Mesa: старіша і новіша. Вам потрібна новіша версія, та версія, для якої у рядку відтворювача буде слово «Gallium».

Intel

Обладнанням Intel використовуються вільні драйвери Mesa. Альтернативних драйверів не існує.

NVIDIA

Для обладнання NVIDIA створено два драйвери: закритий драйвер NVIDIA і відкриті драйвери Mesa (він називається nouveau). Розвиток вільних драйверів все ще триває, ними можна скористатися не у всіх дистрибутивах і не для всіх карток. Загалом, рекомендується використовувати закриті драйвери. Ви користуєтеся закритими драйверами, якщо у рядку Версія OpenGL/ES вказано NVIDIA.

Встановлення драйвера

Спосіб встановлення драйвера залежить від вашого дистрибутива. Будь ласка, зверніться до документації, щоб дізнатися більше.

Версія OpenGL

У KWin передбачено підтримку OpenGL 1.x і OpenGL 2.x. Типово у KWin використовуються можливості OpenGL 2, якщо вони доступні. Використання OpenGL 2 надає змогу скористатися більшою кількістю ефектів, але накладає обмеження на швидкодію обладнання. Важливо зауважити, що навіть якщо у вашому драйвері передбачено лише підтримку OpenGL 1.4, KWin може використовувати можливості OpenGL 2, доступ до яких здійснюється за допомогою розширень драйвера.

Визначити версію OpenGL, роботу якої забезпечує ваш драйвер, можна за допомогою рядка «Версія OpenGL/ES» вікна інформації Центру інформації, як це описано вище. Версія визначається першими двома або трьома цифрами, наприклад 2.1.

Визначити, яку версію OpenGL використовує KWin, 1 або 2, непросто, оскільки сама програма визначає версію під час роботи. Найкращим з доступних тестів є використання ефекту «Інверсія», увімкнути який можна за допомогою вкладки Системні параметри -> Стільничні ефекти -> Всі ефекти. Після вмикання ефекту кольори екрана буде обернуто після натискання комбінації клавіш Meta + Ctrl + I. Інверсію буде виконано, якщо використовується OpenGL 2. Якщо використовується OpenGL 1, нічого не станеться.

KWin можна наказати використовувати OpenGL 1 за допомогою вкладки Системні параметри -> Стільничні ефекти -> Додатково: зніміть позначення з пункту Використовувати шейдери OpenGL 2. Таким чином можна покращити швидкодію на застарілому обладнанні. Загалом, повністю безпечно використовувати шейдери (програми для побудови тіней) OpenGL 2, якщо система повідомляє про підтримку версії 3.x (доступна лише для NVIDIA на час написання цієї сторінки).

Підказка

На сучасному обладнанні шейдери OpenGL 2 покращують швидкодію, порівняно з шейдерами OpenGL 1. Зняття позначення з цього не є універсальним рецептом для покращення швидкодії.


Масштабування мініатюр

У підпрограмі композитного показу передбачено підтримку різних способів масштабування для мініатюр попереднього перегляду панелі задач або ефектів представлення вікон. Ця підпрограма намагається створити мініатюри якомога точніше, що, звичайно ж, потребує додаткових обчислювальних ресурсів.

Метод масштабування можна змінити за допомогою спадного списку Системні параметри -> Стільничні ефекти -> Додатково -> Спосіб масштабування. Передбачено такі варіанти:

  • Швидкий
  • Плавний
  • Точний

У наведеній нижче таблиці ви можете ознайомитися з мініатюрами, створеними за використання різних параметрів.

Огляд показу мініатюр за різних значень параметрів
Швидкий: Швидкий
Плавний: Плавний
Точний: Точний

Типово використовується спосіб «Точний». На обладнанні Intel спосіб «Точний» ніколи не використовується, його не можна увімкнути, якщо для змінної середовища KWIN_FORCE_LANCZOS визначено значення 1.

Перемикання зі способу «Точний» на «Плавний» може значно покращити швидкодію ефектів, зокрема ефекту «Показ вікон».

Загальна швидкість анімації

Animations take some time and the length of an animations is what makes people think that this is a snappy interface or that it lags. This is a very subjective feeling and the difference between too fast and too slow can be milliseconds. It is impossible to have a perfect value for all users.

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.

Графічна підсистема 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.

Обрамлення вікон

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.

Ефект розмивання

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.

Додаткові параметри стільничних ефектів

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.

Тип композитного відтворення

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.


Keep window thumbnails

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.

Suspend desktop effects for fullscreen windows

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.

Режим 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.


Увімкнути апаратне відтворення

Попередження

Цей пункт є застарілим, його було вилучено у версії 4.8 (випущено у січні 2012 року).


Підпрограма композитного відтворення самостійно визначає, чи може бути і чи слід використовувати апаратне відтворення. Зміна типового значення відповідного параметра ймовірно порушить роботу системи.

Використовувати VSync

VSync надає змогу синхронізувати обробку зображення. Якщо у вас немає вагомих причин змінювати типову поведінку, цей пункт має бути позначено. Навіть якщо позначку з пункту не буде знято, підпрограмою показу буде виконано спробу використати частоту кадрів, яка підтримується екраном. Типово використовуватиметься частота кадрів у 60 Гц.

Якщо використовується декілька екранів, важливо знати, що обробка може синхронізуватися лише на одному екрані. Якщо на екранах використовується різна частота кадрів, варто зняти позначку з пункту і встановити частоту кадрів вручну.