1// Copyright 2023 The Khronos Group Inc. 2// 3// SPDX-License-Identifier: CC-BY-4.0 4 5// Common Valid Usage 6// Common to all graph dispatch commands 7include::{chapters}/commonvalidity/draw_dispatch_common.adoc[] 8 * [[VUID-{refpage}-commandBuffer-09181]] 9 pname:commandBuffer must: not be a protected command buffer 10 * [[VUID-{refpage}-commandBuffer-09182]] 11 pname:commandBuffer must: be a primary command buffer 12 * [[VUID-{refpage}-scratch-09183]] 13 pname:scratch must: be the device address of an allocated memory range 14 at least as large as the value of 15 slink:VkExecutionGraphPipelineScratchSizeAMDX::pname:size returned by 16 slink:VkExecutionGraphPipelineScratchSizeAMDX for the currently bound 17 execution graph pipeline 18 * [[VUID-{refpage}-scratch-09184]] 19 pname:scratch must: be a device address within a slink:VkBuffer created 20 with the ename:VK_BUFFER_USAGE_EXECUTION_GRAPH_SCRATCH_BIT_AMDX 21ifdef::VK_KHR_maintenance5[] 22 or ename:VK_BUFFER_USAGE_2_EXECUTION_GRAPH_SCRATCH_BIT_AMDX 23endif::VK_KHR_maintenance5[] 24 flag 25 * [[VUID-{refpage}-scratch-09185]] 26 Device memory in the range [pname:scratch,pname:scratch + 27 slink:VkExecutionGraphPipelineScratchSizeAMDX::pname:size) must: have 28 been initialized with flink:vkCmdInitializeGraphScratchMemoryAMDX using 29 the currently bound execution graph pipeline, and not modified after 30 that by anything other than another execution graph dispatch command 31 * [[VUID-{refpage}-maxComputeWorkGroupCount-09186]] 32 Execution of this command must: not cause a node to be dispatched with a 33 larger number of workgroups than that specified by either a 34 code:MaxNumWorkgroupsAMDX decoration in the dispatched node or 35 <<limits-maxComputeWorkGroupCount,pname:maxComputeWorkGroupCount>> 36 * [[VUID-{refpage}-maxExecutionGraphShaderPayloadCount-09187]] 37 Execution of this command must: not cause any shader to initialize more 38 than <<limits-maxExecutionGraphShaderPayloadCount, 39 pname:maxExecutionGraphShaderPayloadCount>> output payloads 40 * [[VUID-{refpage}-NodeMaxPayloadsAMDX-09188]] 41 Execution of this command must: not cause any shader that declares 42 code:NodeMaxPayloadsAMDX to initialize more output payloads than 43 specified by the max number of payloads for that decoration. 44 This requirement applies to each code:NodeMaxPayloadsAMDX decoration 45 separately 46// Common Valid Usage 47