Поиск по сайту

up

Компьютерные новости

Все разделы

Низкоуровневые API позволят использовать всю память связок Multi-GPU

Очень интересной информацией поделился один из сотрудников компании AMD, а именно Роберт Халлок (Robert Hallock). Она касается низкоуровневых API (в первую очередь AMD Mantle, а также последующих (DirectX 12 и других)) и связок Multi-GPU (в первую очередь AMD CrossFireX).

В подобных системах традиционным подходом считается метод Alternate-frame rendering (AFR), при котором GPU поочередно обрабатывают кадры: GPU1 производит рендеринг кадра А, GPU2 – кадра B, GPU1 – кадра С, GPU2 – кадра D и так далее. При этом для корректной работы в условиях некоторых современных программных интерфейсов (API) обе видеокарты должны иметь полную копию всех данных, чтобы в случае необходимости поделиться ею с другими компонентами. Сохраняется вся эта информация именно в видеопамяти, поэтому при использовании связок Multi-GPU общая память не суммируется.

API AMD Mantle

Но с приходом API AMD Mantle все изменилось. Поскольку это низкоуровневый API (то есть он работает максимально близко к аппаратной платформе), то он позволяет более эффективно распределять ресурсы видеокарт. Например, можно разделить рендеринг кадра между двумя GPU и их памятью, чтобы каждый обрабатывал свою половину экрана. Это минимизирует количество необходимой информации для корректной работы, ускоряет процесс выполнения и позволяет задействовать суммарный объем памяти. То есть для двух видеокарт с 4 ГБ видеопамяти у каждой метод AFR позволяет использовать лишь 4 ГБ, а вот с AMD Mantle общий видеобуфер может возрасти до 8 ГБ.

Все эти возможности уже реализованы в API AMD Mantle, однако требуется еще желание разработчиков отойти от принятого метода AFR для оптимизации игр под технологии Multi-GPU, чтобы пользователи могли эффективнее и в полной мере использовать ресурсы своих видеокарт.

http://wccftech.com
Сергей Будиловский