Компания AMD опубликовала код с реализацией A-Sync DMA Engines для драйвера Radeon

Ранее появилась информация, что в недрах компании AMD готовится к открытию какое-то интересное дополнение для драйвера Radeon, которое попадет в ядро Linux 3.8. Изначально не было известно что это за код, что создало определенную интригу вокруг данного события и появление ряда различных гипотез. Сообщается, что в недрах компании AMD данный код уже циркулировал несколько месяцев. Теперь процесс рассмотрения юристами компании завершен и разработчики опубликовали данный код, который попадет в результате в ядро Linux версии 3.8.

Хотя оказалось, что представленная разработка не является чем-то совершенно неординарным, тем не менее, она оказалась достаточно интересной. В опубликованном коде реализована поддержка асинхронных движков DMA (a-synchronous DMA engines) на видеокартах Radeon, начиная от семейства Radeon HD 2000 (R600) и заканчивая картами Radeon HD 7000 (Southern Islands).

Отмечается, что данный код позволяет GPU копировать или перемещать данные даже когда шейдерная часть занята рендерингом сцен. Это позволит подгружать новые данные в GPU даже в те моменты пока он занимается рендерингом. Ожидается, что в ряде ситуаций это может значительно улучшить скорость работы. В частности, участником форума Aaron Watry было проведено тестирование производительности, в ходе которого было обнаружено, что в тесте Unigine Heaven, запущенном в конфигурации с видеокартой HD6850, использование данной техники привело к десятикратному (!) приросту производительности.

Дополнительно можно отметить наработки независимого разработчика Marek Olšák для Gallium-драйвера R600g, который недавно смог повысить производительность открытого драйвера Radeon очередным патчем. В данном случае речь идет о реализации суб-аллокатора - техники, когда небольшие буферы выделяются из более крупных регионов, помечая выделенное. Это хорошо работает для короткоживущих буферов очередей. В данном случае Aaron Watry отметил 27% прирост FPS в игре Reaction Quake 3 в той же конфигурации с видеокартой HD6850.

В целом ожидается, что данные наработки в ближайшее время заметно повысят производительность открытого стека драйверов для видеокарт семейства Radeon.

©  OpenNet