mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-28 09:58:22 +02:00
Known unsound code.
So far I'm not convinced transaction elimination is doing us much good. Even in
synthetic glmark style benchmarks this seems to be a few % hit at most. Given
that transaction elimination is unsound by design, and that panfrost's
implementation is buggy in several places and getting it right (up to the
unsoundness of the hardware feature itself) would take actual engineering
effort, and the priority is making glamor work... disabling is the obvious
choice here.
For now, we leave the code but gate it behind a env var
flag (PAN_MESA_DEBUG=crc) rather than defaulting to enabled unless
PAN_MESA_DEBUG=nocrc is set. This way, we can still experiment with it if we
need that data ("what performance could we gain if we had this feature,
unsoundness be damned?"). That said, I'm not really ok with having unsoundness
on my devices, y'know? Back of the napkin math suggests that it's not unlikely
that somebody has hit a transaction elimination collision in the wild with the
DDK.
Boils down to values.
Closes: #8113
Signed-off-by: Alyssa Rosenzweig <alyssa@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21258>
|
||
|---|---|---|
| .. | ||
| .clang-format | ||
| .editorconfig | ||
| meson.build | ||
| pan_blend_cso.h | ||
| pan_blit.c | ||
| pan_cmdstream.c | ||
| pan_context.c | ||
| pan_context.h | ||
| pan_disk_cache.c | ||
| pan_fence.c | ||
| pan_fence.h | ||
| pan_helpers.c | ||
| pan_job.c | ||
| pan_job.h | ||
| pan_mempool.c | ||
| pan_mempool.h | ||
| pan_public.h | ||
| pan_resource.c | ||
| pan_resource.h | ||
| pan_screen.c | ||
| pan_screen.h | ||
| pan_shader.c | ||