mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-24 21:50:12 +01:00
read-only mirror of https://gitlab.freedesktop.org/mesa/mesa
This allows nir_link_opt_varyings, nir_remove_unused_varyings and nir_compact_varyings to find a lot more optimization opportunities. The implementation has been shamelessly copied, with some minor tweaks, from radv_link_shaders. Note that the regression in "Early Preamble" is caused by more texture operations becoming uniform and being hoisted to the preamble (where they need GPRs). Totals from 72221 (43.88% of 164575) affected shaders: MaxWaves: 924390 -> 929534 (+0.56%); split: +0.62%, -0.06% Instrs: 29657203 -> 29265425 (-1.32%); split: -1.63%, +0.31% CodeSize: 61509010 -> 61032290 (-0.78%); split: -1.46%, +0.68% NOPs: 4810811 -> 4799957 (-0.23%); split: -2.49%, +2.27% MOVs: 923221 -> 830062 (-10.09%); split: -14.80%, +4.71% Full: 949533 -> 933312 (-1.71%); split: -1.82%, +0.11% (ss): 685957 -> 678810 (-1.04%); split: -3.68%, +2.63% (sy): 326800 -> 324295 (-0.77%); split: -2.56%, +1.79% (ss)-stall: 2710956 -> 2682550 (-1.05%); split: -4.19%, +3.15% (sy)-stall: 9480654 -> 9332777 (-1.56%); split: -4.39%, +2.83% STPs: 5907 -> 5885 (-0.37%) LDPs: 2622 -> 2596 (-0.99%) Preamble Instrs: 6728019 -> 6671785 (-0.84%); split: -1.75%, +0.92% Early Preamble: 52865 -> 52319 (-1.03%); split: +0.26%, -1.30% Cat0: 5280863 -> 5268118 (-0.24%); split: -2.33%, +2.08% Cat1: 1385055 -> 1271076 (-8.23%); split: -11.33%, +3.10% Cat2: 11333273 -> 11194153 (-1.23%); split: -1.25%, +0.02% Cat3: 8735603 -> 8618710 (-1.34%); split: -1.34%, +0.00% Cat4: 958143 -> 952511 (-0.59%) Cat5: 840520 -> 836190 (-0.52%); split: -0.53%, +0.02% Cat6: 242192 -> 232244 (-4.11%) Cat7: 881554 -> 892423 (+1.23%); split: -1.25%, +2.48% Signed-off-by: Job Noorman <jnoorman@igalia.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34784> |
||
|---|---|---|
| .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.