Рэліз Mesa 20.1.0, свабоднай рэалізацыі OpenGL і Vulkan
Прадстаўлены рэліз свабоднай рэалізацыі API OpenGL і Vulkan Mesa 20.1.0. Першы выпуск галінкі Mesa 20.1.0 мае эксперыментальны статус - пасля правядзення канчатковай стабілізацыі кода будзе выпушчана стабільная версія 20.1.1. У Mesa 20.1 рэалізавана поўная падтрымка OpenGL 4.6 для GPU Intel (драйверы i965, iris) і AMD (radeonsi), падтрымка OpenGL 4.5 для GPU AMD (r600) і NVIDIA (nvc0), OpenGL 4.3 для virgl (віртуальны GPU Virgil3D для QEMU / KVM), а таксама падтрымка Vulkan 1.2 для карт Intel і AMD.
Дададзена праслойка для выбару актыўнай прылады для API Vulkan у сістэмах з некалькімі GPU з падтрымкай Vulkan, якая працуе па аналогіі з DRI_PRIME для OpenGL. Для выбару актыўнага драйвера і GPU прадугледжана зменная асяроддзі MESA_VK_DEVICE_SELECT (калі не ўсталявана выкарыстоўваецца DRI_PRIME).
У драйверы i965 і iris для GPU Intel дададзеная падтрымка чаканых у наступным годзе чыпаў на базе новай мікраархітэктуры. Возера Ракета.
У які развіваецца для GPU Intel Vulkan-драйвер ANV дададзена аптымізацыя для чыпаў на базе мікраархітэктуры Icelake (Gen11), якая дапускае выкарыстанне чыстых кветак пры тэкстураванні. Пры тэставанні ў Dota2 змена дазволіла зменшыць лік аперацый пераўтварэнні кветак на 95% і падвысіць прадукцыйнасць на 3.5%.
У Vulkan-драйверы ANV падвышаная эфектыўнасць выкарыстання кэша на сістэмах з чыпамі Intel Ivybridge і Haswell. Выкарыстанне тэстаў вылічальных функцый Vulkan з набору Geekbench 5 паказала прырост прадукцыйнасці на 330% на абсталяванні Haswell GT3 (прырост за рахунак таго, што раней кэш у некаторых умовах не выкарыстоўваўся).
У драйверы для GPU Intel (i965, вясёлкавая абалонка) дададзены рэжым "чорнай дзюры" (OpenGL-пашырэнне INTEL_blackhole_render), які адключае ўсе аперацыі рэндэрынгу, якія перадаюцца GPU, але захоўвае апрацоўку аперацый OpenGL.
Для графічных чыпаў Intel партаваная раней дададзеная для чыпаў AMD падтрымка вектарызацыі NIR, бестыповага прамежкавага прадстаўлення (IR) шэйдараў, накіраванага на працу на самым ніжнім узроўні, пад GLSL IR і унутраным IR Mesa. З практычнага боку за кошт больш якаснай аптымізацыі шэйдараў змена дазволіла падняць прадукцыйнасць працы OpenGL і Vulkan у шматлікіх гульнях на сістэмах з GPU Intel. Напрыклад, у гульні
Паўстанне Raider Tomb адзначаецца прырост прадукцыйнасці на 3%, а ў Shadow of the Tomb Raider на 10%.
У бэкэнд для кампіляцыі шэйдараўACO«, Які развіваецца кампаніяй Valve ў якасці альтэрнатывы кампілятару шэйдараў LLVM, для GPU GFX9 + дададзена падтрымка тыпу shaderInt16, які дазваляе выкарыстоўваць 16-разрадныя цэлыя лікі ў кодзе шэйдараў. Для
GPU AMD Navi (GFX10) забяспечана ужыванне рухавікоў NGG (Next-Gen Geometry) пры працы з вяршынямі і тесселяционными шэйдарамі.
Для GPU AMD Navi 12 і Navi 14 ўключаная падтрымка рэжыму які адлюстроўваецца DCC (Delta Сolor Сompression), які забяспечвае працу са сціснутымі дадзенымі кветак пры арганізацыі высновы на экран.
Дададзена эксперыментальная падтрымка NIR для класічнага Gallium3D-драйвера R600 (AMD Radeon HD 2000-6000) з падтрымкай геаметрычных, фрагментных, вяршынных і тэселяцыйных шэйдараў.
У Vulkan драйвер RADV дададзены патч за кошт аптымізацыі працы з памяццю які павялічвае прадукцыйнасць гульняў Id Tech на сістэмах з APU AMD.
У драйверы Panfrost рэалізавана эксперыментальная падтрымка OpenGL ES 3.0 і забяспечана падтрымка 3D-рэндэрынгу для GPU Bifrost (Mali G31). Падрыхтавана пачатковая рэалізацыя кампілятара шэйдараў, які падтрымлівае спецыфічны для GPU Bifrost набор унутраных інструкцый.
У Vulkan-драйвер TURNIP, які развіваецца для GPU Qualcomm Adreno, дададзена падтрымка геаметрычных шэйдараў і чыпаў Adreno 650.
У Gallium3D-драйверы LLVMpipe, які забяспечвае праграмную адмалёўку, з'явілася падтрымка теселяцыйных шэйдараў.
Унесена вялікая порцыяаптымізацый у glthread (шматструменная рэалізацыя OpenGL). Пасля занясення змен прадукцыйнасць гоначнага сімулятара Torcs вырасла на 16% у канфігурацыі па змаўчанні і на 40% пры ўключэнні glthread.
Дададзена опцыя allow_draw_out_of_order (уключаецца праз driconf) для ўключэння аптымізацый для паскарэння аперацый неўпарадкаванай адмалёўкі, характэрных для САПР. Пры ўключэнні опцыі ў тэсце Viewperf11 Catia назіраецца паскарэнне ў 7%.