Інженер з AMD визнав, що графічний стек Linux потребує вдосконалення

При обговоренні помилки, пов'язаної з відносно високим у порівнянні з Windows споживанням електроенергії на APU AMD з підтримкою апаратного декодування відео, інженер з AMD Алекс Дойкер (Alex Deucher, основний розробник драйвера amdgpu) визнав, що відображення відео в Linux в принципі неефективне.

При виведенні відео в Linux зараз використовується наступний ланцюжок:

  • Стиснутий відеопотік
  • VCN (модуль апаратного декодування відео для GPU AMD)
  • Сирі YUV дані
  • Конвертація палітри, масштабування на модулі GFX (по суті 3D акселератор у GPU, що змушує його підвищувати частоти роботи ядра та VRAM)
  • RGB дані
  • Виведення на екран.

Як має працювати:

  • Стиснутий відеопотік
  • CNV
  • Сирі YUV дані
  • Контролер дисплея, який перетворюватиме палітру, масштабуватиме і відображатиметься.

Більш ефективно це може бути вирішено у Wayland композиторах, але поки що реалізації немає. Ця проблема вирішена в Microsoft Windows і Google Android, бо там є повноцінні поодинокі композитори, які надають відповідні можливості та API — чого поки що немає в Linux, тому що ні X.org, ні Wayland не можуть працювати з YUV-потоками безпосередньо.

Джерело: opennet.ru

Додати коментар або відгук