
Microsoft нещо випустила свій Agility SDK 1.619 з серйозними покращеннями DX12, такими як Shader Model 6.9 та DXR 1.2.
Microsoft Agility SDK додає Shader Model 6.9, DXR 1.2 та різноманітні покращення DX12: відеокарти NVIDIA RTX, AMD Radeon та Intel Arc готові
У найновішому релізі Agility SDK 1.619 Microsoft вносить три оновлення: Shader Model 6.9, DXR 1.2 та покращення, пов’язані з DX12. Функції перелічені нижче:
- Shader Model 6.9 (через DXC 1.9.2602.16):
- Довгі вектори (Long Vector)
- Спеціальні операції з 16-бітними числами з плаваючою комою (16-bit float Specials)
- Операції шейдерів та хвильові операції (shader ops & wave ops) з 16-бітними та 64-бітними числами тепер є обов’язковими функціями
- HLSL-інтерфейс для наступного в DXR 1.2:
- DXR 1.2:
- Мікрокарти непрозорості (Opacity Micromaps – OMM) (випущені раніше, з невеликою частиною SM 6.9, яка тепер активна)
- Перевпорядкування виконання шейдерів (Shader Execution Reordering – SER)
- Функції, запитані клієнтами D3D:
- Оновлені API для створення ресурсних переглядів (Resource View Creation APIs)
- Періодичні повідомлення про обрізання (Periodic Trim Notifications)
- Збільшений ліміт сітки диспетчеризації (Increased Dispatch Grid Limit)
- Роздільна здатність запитів на часовій шкалі CPU (CPU Timeline Query Resolves)
Найбільшою частиною цього релізу Agility SDK є впровадження Shader Model 6.9, яке додає чотири нові функції: Long Vector, 16-bit float Specials, 16-bit / 64-bit shader op & wave ops, та HLSL-інтерфейс для DXR 1.2. Завдяки Long Vectors, HLSL може завантажувати, зберігати та виконувати операції з векторами довжиною понад 4 елементи та до 1024 елементів. Операції шейдерів та хвильові операції з 16-бітними та 64-бітними числами також тепер є обов’язковою функцією з Shader Model 6.9.

Переходячи до оновлень DXR (DirectX Ray Tracing), найновіші функції включають Opacity Micromaps, які були випущені раніше, та SER (Shader Execution Reordering).
Щодо D3D12 Opacity Micromaps, або OMM, Microsoft заявляє, що нова функція дозволить апаратному забезпеченню набагато ефективніше обробляти геометрію з альфа-тестуванням, ніж покладатися на дорогі виклики AnyHit shared invocations.

У попередніх прикладах Microsoft демонструвала приріст продуктивності до 2.3x у іграх з трасуванням променів, які використовують OMM. Один із демо-прикладів, продемонстрований NVIDIA, показує понад 60% приріст. Зліва ви можете бачити референсну сцену при 55 FPS, а кадр праворуч з увімкненими Opacity Micro-maps забезпечує 90 FPS. Наразі тільки NVIDIA пропонує драйверну підтримку OMM для своїх відеокарт RTX, тоді як підтримка від інших виробників очікується в майбутньому.

Alan Wake від Remedy – це ще одна гра, яка значною мірою покладається на геометрію з альфа-тестуванням. Одна сцена може містити від 4.5M + 9.3M трикутників загалом, з 5.2M вершин зі скінінгом та 2.2K екземплярів зі скінінгом. Гра також є однією з найвимогливіших візуально ігор, що використовує трасування променів, і при високих налаштуваннях трасування променів гра може генерувати 10 променів на піксель або 36.9M на кадр. RTX 4090 без будь-яких оптимізацій в середньому витрачає 16.8 мс на рендеринг сцени, але з SER та OMM кадр може бути відрендерений всього за 10.2 мс.
Мікрокарти непрозорості (Opacity Micromaps)
Мікрокарти непрозорості (OMMs) дозволяють апаратному забезпеченню ефективніше обробляти геометрію з альфа-тестуванням, ніж покладатися лише на дорогі виклики AnyHit shader invocations. Ця функція була випущена раніше, і зараз виходить з попереднього перегляду лише HLSL-частина.
Перевпорядкування виконання шейдерів (Shader Execution Reordering)
Перевпорядкування виконання шейдерів (SER) дозволяє коду шейдерів програми інформувати апаратне забезпечення про те, як знаходити узгодженість між променями, щоб їх можна було сортувати для кращого паралельного виконання.
Ця функція виходить з попереднього перегляду зараз. Відмінність від попереднього перегляду полягає в тому, що програми можуть запитувати, чи пристрій дійсно виконує перевпорядкування.
через Microsoft
Нарешті, Microsoft Agility SDK 1.619 додає деякі приємні покращення D3D для свого API DirectX 12 Ultimate. Оновлення вирішують попередні обмеження в буферних переглядах, які потребували еволюції разом із досягненнями в архітектурах GPU. З новим оновленням буферні перегляди тепер можуть вимірюватися за допомогою байтових зміщень та розмірів.
Оновлені API створення ресурсних переглядів (Revised Resource View Creation APIs)
З еволюцією архітектур GPU, оригінальна модель створення переглядів D3D12 показала обмеження, особливо щодо шаблонів доступу до буферів, управління дескрипторами та правил вирівнювання. Оновлене створення переглядів модернізує цю область API у відповідь на численні запити клієнтів.
Раніше буферні перегляди були обмежені вимірюванням в елементах. З цією зміною їх також можна вимірювати за допомогою байтових зміщень та розмірів. Крім того, додано варіанти створення переглядів, які повертають HRESULT замість void, щоб дозволити програмну обробку помилок, на відміну від покладання на валідацію шару налагодження та вирішення проблем з видаленням пристрою.
Періодичні повідомлення про обрізання
Тепер доступні повідомлення про обрізання на рівні ядра через інтерфейси часу виконання D3D12, що дозволяє програмам отримувати сповіщення, коли системі слід обрізати резидентність. Для цієї функції не потрібна нова підтримка драйверів.
Збільшений ліміт сітки 1D диспетчеризації
Збільшує максимальний розмір 1-вимірного диспетчера/сітки диспетчера (зараз 65535) до значення, специфічного для пристрою, яке значно більше для більшості сучасних апаратних засобів.
- D3D12_FEATURE_DATA_D3D12_OPTIONS22.Max1DDispatchSize
- D3D12_FEATURE_DATA_D3D12_OPTIONS22.Max1DDispatchMeshSize
Роздільна здатність запитів на часовій шкалі CPU
Новий тип Query Heap, який може бути розділений на часовій шкалі CPU, уникаючи непотрібної роботи GPU та накладних витрат. Впроваджує ID3D12Device15::CreateQueryHeap1 разом з ID3312Device15::ResolveQueryData.
через Microsoft
Підтримка апаратного/програмного забезпечення від виробників GPU для Microsoft Agility SDK 1.619
Щодо підтримки, всі три виробники GPU мають готову підтримку останніх функцій Microsoft Agility SDK 1.619. Рівень підтримки варіюється залежно від архітектури.
Апаратна підтримка
| Виробник | Посилання на драйвер |
| AMD | AMD Software: Adrenalin Edition 26.2.1 AMD Software: AgilitySDK Developer Preview Edition 25.30.21.01 |
| Intel | Intel Arc Graphics – Windows |
| NVIDIA | Завантажте офіційні драйвери NVIDIA | NVIDIA або NVIDIA App, який автоматично оновлює драйвери. Версія драйвера 595 і новіша. |
Для NVIDIA, виробник GPU вказує, що всі його відеокарти RTX підтримують останні функції. Для DXR1.2, OMM апаратно прискорюються на RTX 40 і новіших GPU, тоді як SER підтримується на RTX 40 і новіших GPU. Підтримка OMM обмежена програмною емуляцією на старішому обладнанні.
Щодо AMD, вони вказують підтримку для GPU RX 7000, RX 900 та Ryzen AI 300/400, що по суті означає підтримку архітектур RDNA 3, RDNA 3.5 та RDNA 4. Архітектури RDNA 3 та RDNA 3.5 підтримують покращення D3D, тоді як функції DXR 1.2 та Shader Model 6.9 обмежені GPU RDNA 4 (Radeon RX 9000).
Нарешті, Intel вказує підтримку для серії Arc B (Battlemage) для всіх функцій, тоді як певні функції D3D, такі як VPblit 3DLUT, застосовуються також до процесорів Lunar Lake.
Цікаво, що OMM підтримуються лише на RTX 40 і новіших GPU, тоді як підтримка SER демонструє перевпорядкування на NVIDIA RTX 40+ GPU, Intel Arc B-Series GPU, але не забезпечує перевпорядкування на RX 9000 GPU.
| AMD | Intel | NVIDIA | |
| Довгі вектори (Long Vector) | Серія AMD Radeon RX 9000 | Intel Arc B-Series Graphics | Вся апаратна база RTX |
| 16-бітні спеціальні операції з плаваючою комою (16 bit float Specials) | Серія AMD Radeon RX 9000 | Intel Arc B-Series Graphics | Вся апаратна база RTX |
| Мікрокарти непрозорості (OMM) | N/A | N/A | Вся апаратна база RTX. Апаратно прискорюється на RTX 4xxx+ GPU, програмно емулюється на старіших. |
| Перевпорядкування виконання шейдерів (SER) | Серія AMD Radeon RX 9000 підтримує API, але не виконує перевпорядкування. | RTX 4xxx+ GPU підтримують API та виконують перевпорядкування. | Intel Arc B-Series Graphics. Існуючий ліміт 64k, буде збільшено для майбутніх драйверів. |
| Оновлені API створення ресурсних переглядів | Серії AMD Radeon RX 7000 та 9000 | Intel Arc B-Series Graphics | Вся апаратна база RTX |
| Періодичні повідомлення про обрізання | N/A | Intel® Arc B-Series Graphics | Вся апаратна база RTX |
| Збільшений ліміт сітки диспетчеризації | Серії AMD Radeon RX 7000 та 9000. UINT_MAX для обчислень, 64k для сітки. | Intel Arc B-Series Graphics. Існуючий ліміт 64k, буде збільшено для майбутніх драйверів. | Вся апаратна база RTX. Існуючий ліміт 64k, буде збільшено для майбутніх драйверів. |
| Роздільна здатність запитів на часовій шкалі CPU | Серії AMD Radeon RX 7000 та 9000 | Intel Arc B-Series Graphics | Вся апаратна база RTX |
| Бар’єри синхронізації (Fence Barriers – preview) | Серії AMD Radeon RX 7000 та 9000 | Intel Arc B-Series Graphics | Зв’яжіться зі своїм представником з розробницьких відносин для доступу до драйверів, що розробляються. |
| VPblit 3DLUT (preview) | Відеокарти серії AMD Radeon RX 7000 та процесори Ryzen AI 300/400 з інтегрованою графікою | Платформи Intel Core Ultra Lunar Lake та Panther Lake | Зверніться до свого представника з розробницьких відносин для отримання деталей. |
Чи варто купувати? (Порада ІТ-Блогу): Оновлення Agility SDK 1.619 приносить суттєві графічні покращення, особливо для трасування променів та оптимізації продуктивності. Хоча багато з цих функцій є програмними, апаратна підтримка від NVIDIA (RTX 40+), AMD (RDNA 4) та Intel (Arc B-Series) для найновіших функцій DirectX 12 Ultimate є ключовою. Якщо ви плануєте оновити відеокарту для максимальної продуктивності в сучасних і майбутніх іграх з трасуванням променів, вибір сумісного заліза зараз є виправданим, особливо якщо ви орієнтуєтеся на топові моделі від NVIDIA чи новіші рішення від AMD та Intel.
Інформація підготовлена на основі матеріалів: wccftech.com
