The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Выпуск Mesa 10.4 с поддержкой трекера состояний для Direct3D 9

14.12.2014 19:18

После трёх месяцев разработки представлен релиз свободной реализации OpenGL API - Mesa 10.4, в котором продолжена реализация новых расширений OpenGL, приближающих Mesa к появлению поддержки OpenGL 4. Поддержка OpenGL 3.3 для драйверов i965, Nouveau (nv50, nvc0), RadeonSI, r600, llvmpipe и softpipe уже реализована полностью. Переход на нумерацию 11.0 будет проведён после реализации поддержки OpenGL 4.x в одном из драйверов, что ожидается в следующем выпуске Mesa. Первый выпуск ветки Mesa 10.4 имеет экспериментальный статус - после проведения окончательной стабилизации кода будет выпущена стабильная версия 10.4.1.

Основные изменения в Mesa 10.4:

  • В состав включен трекер состояний Nine, обеспечивающий поддержку API Direct3D 9 для Unix-подобных систем. В отличие от удалённого в прошлом году экспериментального трекера состояний Direct3D 10/11, Nine полностью работоспособен, обеспечивает более высокую производительность и пригоден для запуска реальных игр, таких как Star Craft 2, Skyrim, Civilization 5 и Anno 1404. Реализована поддержка как базового COM-интерфейса IDirect3DDevice9, так и интерфейса ID3DAdapter9, используемого для финального варианта IDirect3D9Ex.

    При совместном использовании с Wine (требуется использование отдельных патчей) новая реализация позволяет достигнуть двухкратного роста FPS в играх, по сравнению со штатным wined3d. Ускорение достигается за счёт реализации API Direct3D 9 непосредственно на уровне драйверов Gallium3D, без использования дополнительно транслирующей прослойки на базе OpenGL. Следует отметить, что API Direct3D 9 кардинально отличается от Direct3D 10/11, что не позволяет использовать представленный код в качестве базы для дальнейшего обеспечения поддержки Direct3D 10/11.

  • Добавлена начальная реализация трекера состояний VA-API (Video Acceleration API). VA-API представляет унифицированный интерфейс к аппаратным реализациям средств кодирования и декодирования видео, созданный компанией Intel для замены XvMC;
  • Поддержка новых расширений OpenGL, определённых в стандартах OpenGL 4.x:
    • GL_ARB_conditional_render_inverted для драйвера nv50
    • GL_ARB_sample_shading для драйвера r600
    • GL_ARB_texture_view для драйверов nv50, nvc0
    • GL_ARB_clip_control для драйверов nv50, nvc0, r300, r600, radeonsi, llvmpipe, softpipe
    • GL_KHR_context_flush_control для всех драйверов
  • В трекер состояний Clover, нацеленный на обеспечение поддержки OpenCL и организацию выполнения вычислительных задач на стороне GPU, добавлена поддержка компиляции в нативный объектный код, а также представлена начальная реализация clCompileProgram для OpenCL 1.2;
  • В драйверах r600g и radeonsi включена по умолчанию поддержка технологии HyperZ, позволяющей увеличить производительность некоторых графических карт AMD. HyperZ обеспечивает прирост производительности в 2-10%, но данный режим был ранее отключен из-за возникновения проблем с зависанием GPU, которые удалось успешно решить;
  • Проведена значительная работа по расширению возможностей драйвера Freedreno, в рамках которого с использованием методов обратного инжиниринга развивается открытый драйвер для графической подсистемы чипов Qualcomm Snapdragon с GPU Adreno A2xx/A3xx.
  • Внесены улучшения в экспериментальный Gallium-драйвер ILO, развиваемый с целью изучения новых механизмов и оптимизаций для достижения максимальной производительности для видеочипов Intel;
  • Включены наработки по увеличению производительности драйверов Intel i965 и RadeonSI;
  • Прекращена поддержка переменной окружения GALLIUM_MSAA, принудительно включавшей режим MSAA (Multi-Sample AntiAliasing).


  1. Главная ссылка к новости (http://lists.freedesktop.org/a...)
  2. OpenNews: Выпуск Mesa 10.3 с поддержкой новых расширений OpenGL 4
  3. OpenNews: Выпуск Mesa 10.2.0 с продолжением реализации расширений OpenGL 4
  4. OpenNews: Компания Valve оплатила реализацию для Mesa механизма, существенно ускоряющего некоторые игры
  5. OpenNews: Выпуск Mesa 10.1 с поддержкой OpenGL 3.3 для видеокарт NVIDIA и AMD
  6. OpenNews: Переработка поддержки Direct3D в Wine позволила до двух раз увеличить производительность Windows-игр
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/41266-mesa
Ключевые слова: mesa, opengl
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (51) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (-), 20:21, 14/12/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • –7 +/
    Вот бы ещё игру, портированную на Mesa Direct3D. Атишники бы одобрили: большинство игр а режиме OpenGL выдают меньше FPS.
     
     
  • 2.6, Аноним (-), 21:11, 14/12/2014 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Вот бы ещё игру, портированную на Mesa Direct3D. Атишники бы одобрили: большинство
    > игр а режиме OpenGL выдают меньше FPS.

    Только на ати.

     
  • 2.8, Аноним (-), 21:35, 14/12/2014 [^] [^^] [^^^] [ответить]  
  • +5 +/
    > большинство игр а режиме OpenGL выдают меньше FPS.

    Если двигло писали под OpenGL - то нормально там FPSов. А если там конвертер в двигле - очень зависит от двигла и конвертера.

     
  • 2.9, botman (ok), 21:47, 14/12/2014 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > большинство игр а режиме OpenGL выдают меньше FPS

    Большинство оптимизированный под nVidia игр выдают на AMD меньше FPS... интересно почему

     
     
  • 3.11, Аноним (-), 22:05, 14/12/2014 [^] [^^] [^^^] [ответить]  
  • +12 +/
    > Большинство оптимизированный под nVidia игр выдают на AMD меньше FPS... интересно почему

    Объявляется конкурс самых капитанистых Капитанов!


     
  • 3.13, pkunk (ok), 22:18, 14/12/2014 [^] [^^] [^^^] [ответить]  
  • +4 +/
    http://richg42.blogspot.ru/2014/05/the-truth-on-opengl-driver-quality.html
     
     
  • 4.36, Archer73 (ok), 12:23, 15/12/2014 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > B's driver devs try to follow the spec more closely than Vendor A, but in the end this tends to do them no good because most devs just use Vendor A's driver for development and when things don't work on Vendor B they blame the vendor, not the state of GL itself.

    В этом вся суть. Те кто изначально пишут код под NVidia, потом огребают кучу проблем под AMD и Intel, так как на NVidia часто нормально работает неверный с точки зрения спецификаций код. До этого уже встречал авторитетное мнение, что код без проблем работающий на всех картах желательно писать под AMD.

     
     
  • 5.47, клоун Стаканчик (?), 18:52, 15/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    Клоун говорит: "авторитетное мнение анонимным не бывает."
     
     
  • 6.49, Аноним (-), 22:41, 15/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    > Клоун говорит: "авторитетное мнение анонимным не бывает."




    Участник: клоун Стаканчик
    Тип: Аноним
    Рейтинг: -19306 баллов
    Репутация: +377/-1685 голосов



    Хороший FAIL по поводу анонима. Но ты не бойся, я это упущение исправил.

     
     
  • 7.50, клоун Стаканчик (ok), 22:48, 15/12/2014 [^] [^^] [^^^] [ответить]  
  • –1 +/
    p.s. зарегать ник стаканчика... это примерно как получить чемодан говна.
     
     
  • 8.52, Прохожий (??), 09:46, 17/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    Я рыдал ... текст свёрнут, показать
     

  • 1.3, Аноним (-), 20:50, 14/12/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    >новая реализация позволяет достигнуть двухкратного роста FPS в играх, по сравнению со штатным wined3d

    А вот когда сделают отдельный поток, то будет еще быстрее. Но доколе?

     
     
  • 2.4, Аноним (-), 21:00, 14/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    А они совместно работать могут?
     
  • 2.5, Аноним (-), 21:10, 14/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    На Месе + нативные игрушки пока не сделали, а на NVIDIA - да. __GL_THREADED_OPTIMIZATIONS=1 steam
     
  • 2.7, ой (?), 21:34, 14/12/2014 [^] [^^] [^^^] [ответить]  
  • +1 +/
    как небыло так и нет
     
     
  • 3.30, Grammar_Nazi (?), 08:17, 15/12/2014 [^] [^^] [^^^] [ответить]  
  • –5 +/
    как не было так и нет
     
     
  • 4.31, ананим (?), 10:25, 15/12/2014 [^] [^^] [^^^] [ответить]  
  • +10 +/
    Как не было, так и нет.
     
     
  • 5.40, Sergey722 (ok), 15:26, 15/12/2014 [^] [^^] [^^^] [ответить]  
  • +4 +/
    - Как? Не было?
    - Таки нет!


     
  • 2.20, corvuscor (ok), 23:34, 14/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    И как ты подружишь трансляцию из DirectX в OpenGL в отдельном потоке с нативным DirectX, можно полюбопытствовать?

    Теперь так - для блобоводов - костыли в виде CSMT, для труЪ - более православно и почти нативно.

     
  • 2.26, vitalif (ok), 02:21, 15/12/2014 [^] [^^] [^^^] [ответить]  
  • +1 +/
    На Gallium драйверах Nine даёт бОльший прирост FPS и меньшую нагрузку на проц, чем CSMT :)
     

  • 1.10, Аноним (-), 21:51, 14/12/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    >В драйверах r600g и radeonsi включена по умолчанию поддержка технологии HyperZ

    Шо, опять?

     
     
  • 2.12, Аноним (-), 22:06, 14/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    > Шо, опять?

    Да. В том числе и в RadeonSI. Вроде как все известные баги замахали.

     
     
  • 3.14, Аноним (-), 22:25, 14/12/2014 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ждем новых, пока неизвестных.
     
     
  • 4.41, Аноним (-), 18:25, 15/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    > Ждем новых, пока неизвестных.

    У себя так сходу не вижу. А так - "глюк не воробей: вылезет - прибей!" (древняя ITшная поговорка).

     
  • 2.15, Аноном (?), 22:28, 14/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    Еще не весна, назад выключат.
     

  • 1.16, Igor Gnatenko (?), 22:46, 14/12/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    А в Fedora 21 уже пришёл апдейт! http://koji.fedoraproject.org/koji/taskinfo?taskID=8381921

    А в Ubuntu по-прежнему сильно устаревшая 10.3.2. http://packages.ubuntu.com/source/vivid/mesa

     
     
  • 2.17, CrazyAlex25 (ok), 22:53, 14/12/2014 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Для ubuntu есть xorg-edgers (https://launchpad.net/~xorg-edgers/+archive/ubuntu/ppa/+packages)
     
     
  • 3.18, Igor Gnatenko (?), 22:55, 14/12/2014 [^] [^^] [^^^] [ответить]  
  • –6 +/
    оно официально поддерживается дистрибутивом? нет.
     
     
  • 4.21, Аноним (-), 23:54, 14/12/2014 [^] [^^] [^^^] [ответить]  
  • –2 +/
    В Fedora появилось в updates? Нет.
     
  • 4.23, Gannet (ok), 00:37, 15/12/2014 [^] [^^] [^^^] [ответить]  
  • +2 +/
    И что она даёт, эта "поддержка дистрибутивом"? Поддержка есть от разработчиков: есть баг - написал репорт разрабам - они приняли и правят. А чем дистрибутив поможет?
     
     
  • 5.46, Аноним (-), 18:44, 15/12/2014 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > чем дистрибутив поможет?

    Ну вот некоторым как видим помогает пальцы растопыривать.

     
  • 4.37, Аноном (?), 12:26, 15/12/2014 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Да.

    Xorg-edgers официально поддерживается разработчиками дистрибутива.

     
  • 4.42, Аноним (-), 18:29, 15/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    > оно официально поддерживается дистрибутивом? нет.

    Еще для убунты есть Oibaf PPA. Там гитовые версии. Немного камикадзево, но как правило качественно и шустро. И кстати Fabio (oibaF) в своем деле разбирается и его билды как правило оптимизированные и затвиканные.

    Собссно фороникс на этом стеке регулярно бенчит текущие версии месы и ловит регрессии. АМДшники там же на форуме пасутся и разруливают регрессии, все дела. В целом все эти люди очень мило и продуктивно взаимодействуют, вместе делая себе хорошую видеоподсистему. Учитесь как надо. Так победим.

     

  • 1.19, Аноним (-), 23:06, 14/12/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • –8 +/
    Народ, давайте серьёзно поговорим, плиз.
    dx9 уже много и много лет назад выкинут на свалку всеми коммерческими и даже не коммерческими разработчиками игр. Он давно пылится на музейных полках.

    Очень смешно читать новости про то, что в Mesa появилась поддержка некоторых возможностей dx9.

     
     
  • 2.22, CrazyAlex25 (ok), 00:02, 15/12/2014 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Народ, давайте серьёзно поговорим, плиз.
    COBOL уже много и много лет назад выкинут на свалку всеми коммерческими и даже не коммерческими разработчиками ПО. Он давно пылится на музейных полках.

    А вообще, игр написанных на dx9 дофига, так что поддержка не помешает. Её всегда можно выпилить (а вот обратное не всегда просто).

     
  • 2.27, Аноним (-), 03:12, 15/12/2014 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Серьездно, не так много игр не имеет поддержку direct3d 9
     
  • 2.28, Xasd (ok), 03:42, 15/12/2014 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > смешно читать новости про то, что в Mesa появилась поддержка некоторых возможностей dx9.

    не возможностей, а трекер состояния.

    всякиетам возможности были и до этого на OpenGL (включая траслятор DX в OpenGL).

    трекер_состояния+доработанный_wine -- не добавляют новых возможностей, а это лишь просто более оптимизированный костыль для запуска легаси софта.

    новый современный софт (в отличии от легаси софта) -- можешь сразу запускать в режиме Linux_Native_OpenGL , так как современные движки поддерживают Linux и OpenGL.

     

  • 1.24, anonymous (??), 01:46, 15/12/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >В отличие от удалённого в прошлом году экспериментального трекера состояний Direct3D 10/11, Nine полностью работоспособен, обеспечивает более высокую производительность и пригоден для запуска реальных игр

    чёт он у меня сегфолты одни. то ли wine кривой либо mesa. вроде сначало работало даже шустро так, а потом обновилось раз и всё - не работает.

     
     
  • 2.43, Аноним (-), 18:31, 15/12/2014 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > чёт он у меня сегфолты одни.

    Сегфолт без бэктрейса - байты на ветер!

     

  • 1.25, vitalif (ok), 02:19, 15/12/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Ага, только есть НЮАНС: с недавних пор Nine работает только через DRI3. А DRI3 в X-драйвере radeon ОТСУТСТВУЕТ!!!

    Т.е. если его в 10.4 так и приняли с DRI3, то до тех пор пока X-драйвер не допилят, Nine работать не будет...

     
     
  • 2.29, braintorch (?), 05:33, 15/12/2014 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Интересно девки пляшут...
     
  • 2.32, Nicknnn (ok), 11:52, 15/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    Замечательно, вот только при чём тут X-драйвер к 3D?
     
     
  • 3.35, vitalif (ok), 12:12, 15/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    Видимо при том, что 3D работает именно через DRI, а чтобы DRI работал, его должен DDX поддерживать.

    В radeon есть DRI2, но нет DRI3.

    Есть патчик от iXit, включающий базовую поддержку DRI3 в radeon, но она именно что базовая - я её попробовал поюзать, наловил глюков и снёс нафиг.

     
     
  • 4.38, Nicknnn (ok), 13:43, 15/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    ldd d3dadapter9.so.1.0.0
            linux-vdso.so.1 (0x00007fffd31fe000)
            libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fe30aa66000)
            libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fe30a862000)
            libexpat.so.1 => /lib/x86_64-linux-gnu/libexpat.so.1 (0x00007fe30a638000)
            libdrm_radeon.so.1 => /usr/lib/x86_64-linux-gnu/libdrm_radeon.so.1 (0x00007fe30a42b000)
            libdrm.so.2 => /usr/lib/x86_64-linux-gnu/libdrm.so.2 (0x00007fe30a21e000)
            libelf.so.1 => /usr/lib/x86_64-linux-gnu/libelf.so.1 (0x00007fe30a006000)
            libLLVM-3.5.so.1 => /usr/lib/x86_64-linux-gnu/libLLVM-3.5.so.1 (0x00007fe3082e3000)
            libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007fe307fd8000)
            libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fe307cd6000)
            libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fe30792d000)
            libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fe307717000)
            /lib64/ld-linux-x86-64.so.2 (0x00007fe30b127000)
            libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007fe3074fb000)
            libffi.so.6 => /usr/lib/x86_64-linux-gnu/libffi.so.6 (0x00007fe3072f3000)
            libedit.so.2 => /usr/lib/x86_64-linux-gnu/libedit.so.2 (0x00007fe3070ba000)
            libtinfo.so.5 => /lib/x86_64-linux-gnu/libtinfo.so.5 (0x00007fe306e8f000)
            libbsd.so.0 => /lib/x86_64-linux-gnu/libbsd.so.0 (0x00007fe306c7f000)

    Никаких зависимостей от dri3.
    Каким образом это связано? Всегда считал, что dri для иксов. А 3D через drm

     
     
  • 5.39, vitalif (ok), 14:46, 15/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    Я не знаю как это связано, но недавно при попытке запустить очередной собранный wine с nine на радеоне я увидел "no adapters found" жёлтым. Стал копать, докопался до того, что ему был нужен dri3.

    ldd особо ничего не значит, но сейчас, может, и пофиксили, не знаю. Проверять надо.

    P.S: А ещё, кстати, так как эта хрень работает через Gallium3D, на интеловских карточках её заюзать фактически нельзя... Т.е. можно, но только через драйвер ilo, который конкретно убог - умеет только OpenGL 2.1 и медленно и глючно работает в 2D - например, kwin падает на нём постоянно с фразой "../../../../../../src/gallium/drivers/ilo/shader/toy_legalize_ra.c:215:linear_scan_spill: Assertion '!«no spilling support»' failed" - там тупо какая-то фича не реализована.

     
  • 4.44, Аноним (-), 18:42, 15/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    DDX может пользоваться интерфейсами DRI3, но оно само реализовано в низкоуровнев... большой текст свёрнут, показать
     
     
  • 5.48, vitalif (ok), 22:28, 15/12/2014 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > DDX драйвер. Отвечает за ускорение 2D в иксах. Вот в нем поддержку DRI3 только пилят.

    Я честно говоря не знаю, где его там пилят, всё что я видел - это только косой патчик от ixit.

    + вот тут http://dri.freedesktop.org/wiki/DDX/ сказано: Each 2D driver has a bit of code to bootstrap the 3D / DRI features.

    Т.е. ещё DDX отвечает за то, чтобы включить поддержку 3D.

    > А что галлиумовский трекер вообще в DDX драйвере иксов забыл?

    Галлиумовский трекер в DDX ничего и не забыл, но насколько я понимаю, проброс d3dadapter9 в wine хочет работать именно через dri3. А dri3 в DDX radeon выключен... Т.е. это именно специфичный для wine код. А может и не специфичный, я детально не разбирался, как там этот проброс работает...

    Спросил в баге, который ставил им на гитхабе - подтвердили, что так и приняли с dri3.

     

  • 1.33, хрюкотающий зелюк (?), 12:04, 15/12/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Clover реализует OpenCL программно? Чтобы можно было отлаживаться на кошках.
     
     
  • 2.45, Аноним (-), 18:43, 15/12/2014 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > на кошках.

    На зелюках.

     

  • 1.34, Freddy Hardest 2 (?), 12:05, 15/12/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • –7 +/
    так шо окончательно распрощались с  Direct3D 10/11 на юниксе? - брависимо!!!
     
     
  • 2.51, ano (??), 06:04, 16/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    > Currently, we know that VMWare already has this state tracker working. They could eventually release it, but their lawyers have to allow it.
    > All of the Gallium-3D infrastructure is fully prepared to handle D3D10.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру