
Про це розповідає KURAZH
Через 14 років після виходу відеокарти Radeon HD 7870 XT у Linux нарешті усунули баг, який тривалий час ускладнював її використання. Вирішенням проблеми займався Тимур Кристоф — розробник драйверів компанії Valve, який спеціалізується на графічних рішеннях для Linux.
Особливості архітектури та проблема сумісності
Radeon HD 7870 XT відрізняється від стандартної 7870 тим, що створена на базі урізаного чипа Tahiti, який також використовувався у моделей HD 7950 та HD 7970. AMD обмежила частину обчислювальних блоків, щоб зробити пристрій доступнішим для середнього сегмента. Проте саме ця архітектурна особливість і стала причиною тривалих проблем із сумісністю в Linux.
Сучасний драйвер AMDGPU тривалий час не підтримував цю карту через специфіку роботи кешу TCC (Texture Cache Controller). Частково відключені блоки збивали драйвер із пантелику, змушуючи систему використовувати застарілий модуль radeon. Це, у свою чергу, позбавляло користувачів можливості застосовувати сучасні графічні API та нові оптимізації.
Рішення від Valve і нові можливості для користувачів
Тимур Кристоф здійснив зміни в коді драйвера, завдяки яким AMDGPU навчився правильно розпізнавати та працювати з “обрізаними” версіями Tahiti. Тепер AMDGPU є драйвером за замовчуванням для архітектур Southern Islands і Sea Islands, а разом із цим користувачі отримали повну підтримку бібліотеки RADV і доступ до API Vulkan, що суттєво покращує роботу таких рішень, як Proton для запуску ігор з Windows.
“Результати оптимізації виглядають майже фантастично: у деяких сценаріях продуктивність відеокарти зросла втричі”.
Попри те, що відеокарти 2012 року не можуть конкурувати з сучасними рішеннями, оновлення драйвера робить систему значно швидшою та відкриває можливість комфортно запускати ретро-ігри або використовувати пристрій як медіацентр.
Підтримка таких старих пристроїв пояснюється прагненням до уніфікації й стабільності SteamOS та графічного стека Linux для всіх поколінь GCN. Усунення подібних помилок дозволяє очистити код драйверів від застарілих рішень, а відкритий код Linux дає змогу оновлювати драйвери навіть для пристроїв, які не підтримуються виробником офіційно вже багато років. Це дозволяє власникам старих відеокарт продовжувати використовувати їх для спеціальних завдань.
Водночас, попри оновлення для старого обладнання, сучасні технології вимагають значно більшої обчислювальної потужності. Наприклад, нові ноутбуки Asus Zephyrus G14 і G16 мають топову продуктивність, але їхня ціна може переконати багатьох користувачів залишатися зі своєю Radeon ще трохи довше.