Содержание
Intel разрабатывает свою Neural Compression — нейросетевую компрессию текстур для игр. Идея простая: меньше вес текстур на диске и в VRAM, а картинка проседает минимально. По ранним данным, по уровню производительности и степени сжатия это близко к Nvidia NTC.
Ключевая деталь для рынка — у Intel будет два варианта технологии. Один заточат под фирменные AI-блоки XMX в видеокартах Arc. Второй сделают с запасным режимом, который работает на обычных вычислительных блоках CPU/GPU, но медленнее.
Два варианта, как у XeSS: быстрый под XMX и универсальный с потерей скорости
Intel описывает подход почти как у XeSS: есть «железный» вариант и есть более универсальный. В версии под XMX компания использует базовую компрессию BC1 и операции линейной алгебры для ускорения декодирования.
А вот fallback-режим опирается на реализацию через FMA (fused multiply-add). Это тот случай, когда технология не упирается в наличие AI-ядер, но платит временем выполнения. Intel прямо говорит, что этот путь работает медленнее, чем линейная алгебра с ускорением XMX.
Цифры по сжатию: 9x в «качестве» и 18x в агрессивном режиме
У Intel два режима компрессии: variant A (выше качество) и variant B (выше степень сжатия). По заявлениям компании, variant A даёт до 9x сжатия, а variant B — до 18x, если сравнивать с индустриальным форматом «3xBC1 + 1xBC3».
Для сравнения, тот самый «3xBC1 + 1xBC3» в тестах Intel показал лишь 4,8x относительно исходных данных. В самом агрессивном пресете Intel получает степень сжатия, сопоставимую с тем, что демонстрирует Nvidia в своей Neural Texture Compression.
Intel приводит и пример на конкретных текстурах 4096 x 4096 (в источнике они обозначены как 64 МБ). В variant A компания берёт первые две текстуры пирамиды и сжимает их до 10,7 МБ каждая, сохраняя 4K-разрешение. Две нижние текстуры в пирамиде режутся до половины разрешения и ужимаются до 2,7 МБ.
В variant B компрессия жёстче. Первая текстура остаётся в исходном разрешении и занимает 10,7 МБ. Вторая падает до половины разрешения и весит 2,7 МБ. Третья режется до четверти и ужимается до 0,68 МБ. Четвёртая падает до одной восьмой и занимает 0,17 МБ.
Как это хотят использовать в играх: диск, стриминг и экономия VRAM
Intel описывает четыре сценария внедрения для разработчиков. Они крутятся вокруг трёх вещей: ускорить установку, уменьшить размер скачивания и снизить требования к видеопамяти.
- Сжатие «до сервера»: текстуры заранее кодируют, кладут на сервер, клиент скачивает меньше данных и распаковывает локально.
- Стриминг при загрузке уровня: текстуры подгружаются по мере старта сцены.
- Стриминг во время игры: подкачка текстур на лету в процессе геймплея.
- Загрузка без удержания в VRAM: вариант для видеокарт с малым объёмом памяти, когда текстуры стараются не держать постоянно в видеопамяти.
Технически схема выглядит привычно: есть энкодер, который кодирует текстуры, и декодер, который распаковывает их в нужный момент. Отличие от классических методов в том, что нейросетевой подход использует «веса» модели, чтобы упаковать данные плотнее при небольших потерях качества.
Отдельно Intel уточняет, что в части с XMX-ускорением опирается на BC1 и «feature pyramid» — пирамиду признаков, где используются четыре BC1-текстуры с MIP-цепочками.
Из внешних материалов по теме полезна ссылка на репозиторий Nvidia с открытой реализацией NTC: NVIDIA-RTX/RTXNTC на GitHub.
Intel не раскрыла, в каких играх и когда появится поддержка Neural Compression, и не показала сравнение качества картинки «лоб в лоб» с Nvidia NTC.