Переработка поддержки Direct3D в Wine позволила до двух раз увеличить производительность Windows-игр

Разработчик из компании CodeWeavers представил результаты работы по переработке поддержки Direct3D в Wine. В отличие от ранее доступной штатной прослойки для трансляции вызовов Direct3D в OpenGL, которая вызывала много нареканий с позиции производительности, новый код позволяет увеличить производительность игр на 50%-100% и обеспечить скорость их запуска в Wine на уровне или даже быстрее, чем в Windows. В частности, значительный рост производительности отмечается для игр на базе движка Source, StarCraft 2 и 3DMark 2001.

Ускорение достигается за счёт выноса из wined3d отдельной нити для взаимодействия с OpenGL, позволяющей выполнять отрисовку в асинхронном режиме с распараллеливанием на многоядерных системах. Применённый метод напоминает режим __GL_THREADED_OPTIMIZATIONS в проприетарном драйвере NVIDIA, но реализован на уровне Wine, подконтролен разработчикам и не привязан к конкретному драйверу.

Дополнительно отмечается увеличение скорости игр (например, Duty Modern Warfare 2), ранее требовавших включения опции StrictDrawOrdering в настройках Wine. Среди ситуаций для которых не наблюдается заметного роста производительности отмечаются игры, завязанные на возможности GPU или упирающиеся в производительность CPU в не связанном с Direct3D коде, например, Mass Effect 2 и Civilization V. Также упоминается незавершённость реализации динамических поверхностей в представленном наборе патчей, что дополнительно ограничивает производительность некоторых игр.

Источник:
http://www.opennet.ru/opennews/art.shtml?num=37818

<= Назад
Комментарии
]]> ipv6 ready Kiev LUGLinux4MeНостальгияЛичный сайт skeletora ]]>