URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=7fc1ab492816e2f81c601038a55903a558e1b743
Author: Mike Blumenkrantz <[email protected]>
Date: Mon Aug 29 20:03:23 2022 -0400
zink: defer all compute shader creation
with other various changes, this should enable the entirety of compute
shader creation to occur in the compile thread
it also enables (slightly) simplifying shader create by moving cube check
out to the caller
Reviewed-by: Dave Airlie <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18197>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=3652ca08aad9a6b8a48f874d5fff2227d1a41c36
Author: Mike Blumenkrantz <[email protected]>
Date: Mon Aug 15 12:57:08 2022 -0400
zink: add function to check whether a shader has cube samplers
Reviewed-by: Dave Airlie <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18197>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=5489b1a8ffaef8412bd116983554eb574d8c515b
Author: Mike Blumenkrantz <[email protected]>
Date: Fri Aug 12 13:28:32 2022 -0400
zink: generate sha1 for compute programs
this got broken in the move to u_live_shader_cache, which does not
handle compute programs and thus does not populate the shader's sha1
cc: mesa-stable
Reviewed-by: Dave Airlie <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18197>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=68f319a9b8204de36ac2dbad1e6bc99c08d6cedf
Author: Mike Blumenkrantz <[email protected]>
Date: Mon Aug 15 12:45:41 2022 -0400
zink: init fbfetch/bindless ctx stuff on shader create
deferring until later will be problematic for threads
Reviewed-by: Dave Airlie <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18197>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=7ddd8e428b58b1e756de25169fe404cdc845cf1b
Author: Mike Blumenkrantz <[email protected]>
Date: Mon Aug 15 12:26:19 2022 -0400
zink: add a context pointer to zink_program struct
Reviewed-by: Dave Airlie <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18197>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=27c3fe3d34affa8ba385feb7f53b458184eec3e5
Author: Mike Blumenkrantz <[email protected]>
Date: Mon Aug 15 12:21:19 2022 -0400
zink: add locking for descriptor layout caches
Reviewed-by: Dave Airlie <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18197>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=a327ff90d260b0ab9b7dd461461e0e932e828362
Author: Mike Blumenkrantz <[email protected]>
Date: Fri Aug 12 11:34:29 2022 -0400
zink: add partial async shader compile support
when compute shaders can be precompiled, they can be precompiled
asynchronously
which allows the implementation of the parallel shader compile hooks
Reviewed-by: Dave Airlie <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18197>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=eb9ec4baa7e2f8fb8461564728a38d031ed816bd
Author: Mike Blumenkrantz <[email protected]>
Date: Fri Aug 12 11:23:22 2022 -0400
zink: add precompilation for compute shaders
for compute shaders that don't need spec constants or cube lowering,
precompiles are possible and can be performed immediately after disk
cache lookup completes
Reviewed-by: Dave Airlie <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18197>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=9ee059b5b346bc71f249c18be4b52d8c4e66c37c
Author: Mike Blumenkrantz <[email protected]>
Date: Mon Aug 15 13:18:58 2022 -0400
zink: move compute descriptor binds down in execution
this has to occur after the pipeline has been updated to account for
async compile
Reviewed-by: Dave Airlie <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18197>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=b2696ca58e0f85f0808d18f195836f0d46547c81
Author: Mike Blumenkrantz <[email protected]>
Date: Fri Aug 12 11:30:08 2022 -0400
zink: add a param to allow zink_screen_update_pipeline_cache to run directly
Reviewed-by: Dave Airlie <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18197>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=e1ad7bf0b734db7210de11f883263515d9021ffb
Author: Mike Blumenkrantz <[email protected]>
Date: Fri Aug 12 11:29:15 2022 -0400
zink: move compute pipeline cache update to caller
this is more flexible
Reviewed-by: Dave Airlie <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18197>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=1cc6cecc3a5a63920316fc0ff088f315ab86b50a
Author: Mike Blumenkrantz <[email protected]>
Date: Fri Aug 12 11:20:18 2022 -0400
zink: track whether shader has cube samplers
Reviewed-by: Dave Airlie <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18197>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=48ebc60e80aebfdc49f97c1fe2068c496f99baf3
Author: Mike Blumenkrantz <[email protected]>
Date: Fri Aug 12 11:11:11 2022 -0400
zink: use different key comparison for local_size-using compute pipelines
this should be more correct
Reviewed-by: Dave Airlie <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18197>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=8731ffa23863df1290d5349f6c7ec395ea4634a3
Author: Mike Blumenkrantz <[email protected]>
Date: Fri Aug 12 11:09:06 2022 -0400
zink: stop zeroing local size if current compute doesn't use it
this just complicates things for later compute updates
Reviewed-by: Dave Airlie <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18197>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=ad96d21239695767eb96e5da427ed3c2bba5ab29
Author: Mike Blumenkrantz <[email protected]>
Date: Fri Aug 12 10:25:08 2022 -0400
zink: remove use_local_size from compute pipeline state
this is redundant since pipeline state gets flagged on bind
Reviewed-by: Dave Airlie <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18197>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=bbd58d17039b9182b2574d9389e7fc6234fdad97
Author: Mike Blumenkrantz <[email protected]>
Date: Fri Aug 12 11:00:02 2022 -0400
zink: don't add compute base pipeline to hash table
this is pointless since it has no lookup data
Reviewed-by: Dave Airlie <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18197>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=d0c8e70a64d02cd1ede15d3e8fd16829e4dcc906
Author: Mike Blumenkrantz <[email protected]>
Date: Fri Aug 12 10:57:05 2022 -0400
zink: merge compute program hash table onto program struct
Reviewed-by: Dave Airlie <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18197>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=3e9a108c782c0eeeea5943f357497b5829d2fddb
Author: Mike Blumenkrantz <[email protected]>
Date: Fri Aug 12 10:49:07 2022 -0400
zink: add a pipeline shortcut for basic compute programs
if there are no inline uniforms, nonseamless cubes, or local size use,
then this is the "base" pipeline object that can be reused without checking
the hash table
Reviewed-by: Dave Airlie <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18197>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=8cdb227fe753812f9cfbc558dad7c25a4cc99e71
Author: Mike Blumenkrantz <[email protected]>
Date: Fri Aug 12 10:34:14 2022 -0400
zink: add param to allow cache_get jobs to run directly
this will be useful for precompiles
Reviewed-by: Dave Airlie <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18197>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=40878e212f733cfe95ba5631402f21d65bc95934
Author: Mike Blumenkrantz <[email protected]>
Date: Fri Aug 12 10:33:01 2022 -0400
zink: don't call util_queue_fence_init in zink_screen_get_pipeline_cache()
this might accidentally clobber existing jobs
cc: mesa-stable
Reviewed-by: Dave Airlie <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18197>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=3a674fc6eb8e8ba3e7621ab2484c87b55f96813b
Author: Mike Blumenkrantz <[email protected]>
Date: Fri Aug 12 10:23:09 2022 -0400
zink: add use_local_size flag to compute programs
Reviewed-by: Dave Airlie <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18197>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=bd12fa86fc9cf589c88ddaf6ff17d8e8660978e2
Author: Mike Blumenkrantz <[email protected]>
Date: Thu Aug 11 17:07:10 2022 -0400
zink: initialize cache_get_thread unconditionally
this can also be used for precompiles
Reviewed-by: Dave Airlie <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18197>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=4cb4bb555e702d5f8d93841a3d786400b11198fb
Author: Mike Blumenkrantz <[email protected]>
Date: Thu Aug 11 16:50:54 2022 -0400
zink: create compute programs from compute shaders directly
this simplifies the whole compute shader/program architecture and
also compiles compute shaders when apps maybe expect them to be compiled
Reviewed-by: Dave Airlie <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18197>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=2d46cc76c7b219578492dcbcff0cd72a970f5aa0
Author: Mike Blumenkrantz <[email protected]>
Date: Thu Aug 11 16:45:23 2022 -0400
zink: allow programs to solely manage descriptor deinit
now that there's no context access, this is perfectly safe and also much
simpler
Reviewed-by: Dave Airlie <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18197>
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=06e0c0584261d340a67da9573ba719629413b4be
Author: Mike Blumenkrantz <[email protected]>
Date: Thu Aug 11 16:44:50 2022 -0400
zink: use screen param for zink_descriptor_program_deinit
this better enables late destruction of programs
Reviewed-by: Dave Airlie <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18197>