intel: Add blocs, which supports some blorp operations with a compute shader
This series allows blorp to emit compute programs for some blorp operations.
If the env-var
INTEL_DEBUG=blocs is set, then we will try to run a compute program in more cases.
With or without
INTEL_DEBUG=blocs, we will now force a compute program to be used on Vulkan queues that only support compute.
As a side-note, the crucible bench.copy-buffer test does seem to report that a compute program copies the buffer a bit faster in some cases. (This probably needs more verification.)
Here is an example of how to run crucible on anvil with 1 graphics/compute queue and 1 compute-only queue. The compute-only queue will use a compute program in blorp to do the buffer copy:
$ ANV_QUEUE_OVERRIDE=c=1 bin/crucible run bench.copy-buffer
Note: crucible!94 (merged) is required to allow copy-buffer to run on a compute-only queue