At least for async compute, this is gated by
HQD_PQ_CONTROL.UNORD_DISPATCH, which the kernel doesn't set. Presumably
because it can increase scheduling latency between queues. I don't know
if it applies to compute shaders launched via the graphics queue. In any
case, turning the bit on from the user space driver should never hurt.
Cheers,
Nicolai
On 09.10.2017 11:43, Dave Airlie wrote:
Do we know if Linux kernel driver enables this?
Dave.
On 9 Oct. 2017 6:04 pm, "Samuel Pitoiset" <samuel.pitoi...@gmail.com
<mailto:samuel.pitoi...@gmail.com>> wrote:
On 10/07/2017 10:59 AM, Nicolai Hähnle wrote:
On 06.10.2017 16:03, Samuel Pitoiset wrote:
Ported from RadeonSI, and -pro seems to enable it as well.
Signed-off-by: Samuel Pitoiset <samuel.pitoi...@gmail.com
<mailto:samuel.pitoi...@gmail.com>>
---
src/amd/vulkan/radv_cmd_buffer.c | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/src/amd/vulkan/radv_cmd_buffer.c
b/src/amd/vulkan/radv_cmd_buffer.c
index d9243beae5..c641534fc9 100644
--- a/src/amd/vulkan/radv_cmd_buffer.c
+++ b/src/amd/vulkan/radv_cmd_buffer.c
@@ -3198,7 +3198,16 @@ radv_emit_dispatch_packets(struct
radv_cmd_buffer *cmd_buffer,
}
} else {
unsigned blocks[3] = { info->blocks[0],
info->blocks[1], info->blocks[2] };
- unsigned dispatch_initiator =
S_00B800_COMPUTE_SHADER_EN(1);
+ unsigned dispatch_initiator =
S_00B800_COMPUTE_SHADER_EN(1) |
+ S_00B800_FORCE_START_AT_000(1);
+
+ if
(cmd_buffer->device->physical_device->rad_info.chip_class >=
CIK) {
+ /* If the KMD allows it (there is a KMD hw
register for
+ * it), allow launching waves out-of-order.
(same as
+ * Vulkan)
The comment in parenthesis seems a bit like the driver is having
an identity crisis :)
Ah right :) I will remove that.
Other than that,
Acked-by: Nicolai Hähnle <nicolai.haeh...@amd.com
<mailto:nicolai.haeh...@amd.com>>
+ */
+ dispatch_initiator |= S_00B800_ORDER_MODE(1);
+ }
if (info->unaligned) {
unsigned *cs_block_size =
compute_shader->info.cs.block_size;
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org <mailto:mesa-dev@lists.freedesktop.org>
https://lists.freedesktop.org/mailman/listinfo/mesa-dev
<https://lists.freedesktop.org/mailman/listinfo/mesa-dev>
--
Lerne, wie die Welt wirklich ist,
Aber vergiss niemals, wie sie sein sollte.
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev