mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-09 04:00:12 +01:00
read-only mirror of https://gitlab.freedesktop.org/mesa/mesa
this lets us optimize VS for linked shaders (across APIs). less indirection, less ALU in the VS, less loads in the preamble (Vulkan) / USC uniform pushes (OpenGL). not the most critical thing, this was already optimized to make unlinked shaders fast, but it can't hurt ;) also optimizing linked shaders is less objectionable from an ESO perspective than optimizing static state. GL: total instrs in shared programs: 2866067 -> 2778519 (-3.05%) instrs in affected programs: 1041399 -> 953851 (-8.41%) total threads in shared programs: 27802944 -> 27803648 (<.01%) threads in affected programs: 1984 -> 2688 (35.48%) total uniforms in shared programs: 2064008 -> 2036112 (-1.35%) uniforms in affected programs: 978997 -> 951101 (-2.85%) Vulkan: Totals from 20408 (37.78% of 54019) affected shaders: MaxWaves: 20342464 -> 20342976 (+0.00%) Instrs: 7262316 -> 6958468 (-4.18%); split: -4.18%, +0.00% CodeSize: 53744780 -> 51480354 (-4.21%); split: -4.22%, +0.00% ALU: 5691626 -> 5385049 (-5.39%); split: -5.39%, +0.00% FSCIB: 5691626 -> 5385049 (-5.39%); split: -5.39%, +0.00% IC: 1210560 -> 1210512 (-0.00%) GPRs: 1231162 -> 1252219 (+1.71%); split: -0.58%, +2.29% Uniforms: 3854892 -> 3759804 (-2.47%); split: -2.47%, +0.00% Preamble instrs: 3390251 -> 3238677 (-4.47%); split: -4.47%, +0.00% Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36501> |
||
|---|---|---|
| .ci-farms | ||
| .ci-farms-disabled | ||
| .github/workflows | ||
| .gitlab | ||
| .gitlab-ci | ||
| .marge/hooks | ||
| android | ||
| bin | ||
| build-support | ||
| docs | ||
| include | ||
| licenses | ||
| src | ||
| subprojects | ||
| .clang-format | ||
| .clang-format-ignore | ||
| .clang-format-include | ||
| .dir-locals.el | ||
| .editorconfig | ||
| .git-blame-ignore-revs | ||
| .gitattributes | ||
| .gitignore | ||
| .gitlab-ci.yml | ||
| .graphqlrc.yml | ||
| .mailmap | ||
| .mr-label-maker.yml | ||
| .shellcheckrc | ||
| CODEOWNERS | ||
| meson.build | ||
| meson.options | ||
| README.rst | ||
| rustfmt.toml | ||
| VERSION | ||
`Mesa <https://mesa3d.org>`_ - The 3D Graphics Library ====================================================== Source ------ This repository lives at https://gitlab.freedesktop.org/mesa/mesa. Other repositories are likely forks, and code found there is not supported. Build & install --------------- You can find more information in our documentation (`docs/install.rst <https://docs.mesa3d.org/install.html>`_), but the recommended way is to use Meson (`docs/meson.rst <https://docs.mesa3d.org/meson.html>`_): .. code-block:: sh $ meson setup build $ ninja -C build/ $ sudo ninja -C build/ install Support ------- Many Mesa devs hang on IRC; if you're not sure which channel is appropriate, you should ask your question on `OFTC's #dri-devel <irc://irc.oftc.net/dri-devel>`_, someone will redirect you if necessary. Remember that not everyone is in the same timezone as you, so it might take a while before someone qualified sees your question. To figure out who you're talking to, or which nick to ping for your question, check out `Who's Who on IRC <https://dri.freedesktop.org/wiki/WhosWho/>`_. The next best option is to ask your question in an email to the mailing lists: `mesa-dev\@lists.freedesktop.org <https://lists.freedesktop.org/mailman/listinfo/mesa-dev>`_ Bug reports ----------- If you think something isn't working properly, please file a bug report (`docs/bugs.rst <https://docs.mesa3d.org/bugs.html>`_). Contributing ------------ Contributions are welcome, and step-by-step instructions can be found in our documentation (`docs/submittingpatches.rst <https://docs.mesa3d.org/submittingpatches.html>`_). Note that Mesa uses gitlab for patches submission, review and discussions.