[{"data":1,"prerenderedAt":453},["ShallowReactive",2],{"pPDrsbHD7B":3},{"title":4,"description":5,"parent":6,"cmd_buf_level":7,"render_pass_scope":10,"supported_queue_types":11,"tasks":14,"type":16,"xrefs":17,"body":18,"_type":452,"_id":4},"vkCmdCudaLaunchKernelNV","Dispatch compute work items","VK_NV_cuda_kernel_launch",[8,9],"primary","secondary","both",[12,13],"graphics","compute",[15],"action","protos",[],{"type":19,"children":20,"toc":450},"root",[21,29,225,260,288,414,444],{"type":22,"tag":23,"props":24,"children":25},"element","p",{},[26],{"type":27,"value":28},"text","To record a CUDA kernel launch, call:",{"type":22,"tag":30,"props":31,"children":32},"code-group",{},[33,119],{"type":22,"tag":34,"props":35,"children":41},"pre",{"className":36,"code":37,"filename":38,"language":39,"meta":40,"style":40},"language-c shiki shiki-themes github-light-default github-dark-default","void vkCmdCudaLaunchKernelNV(\n VkCommandBuffer commandBuffer,\n const VkCudaLaunchInfoNV* pLaunchInfo);\n","C","c","",[42],{"type":22,"tag":43,"props":44,"children":45},"code",{"__ignoreMap":40},[46,70,90],{"type":22,"tag":47,"props":48,"children":51},"span",{"class":49,"line":50},"line",1,[52,58,64],{"type":22,"tag":47,"props":53,"children":55},{"style":54},"--shiki-default:#CF222E;--shiki-dark:#FF7B72",[56],{"type":27,"value":57},"void",{"type":22,"tag":47,"props":59,"children":61},{"style":60},"--shiki-default:#8250DF;--shiki-dark:#D2A8FF",[62],{"type":27,"value":63}," vkCmdCudaLaunchKernelNV",{"type":22,"tag":47,"props":65,"children":67},{"style":66},"--shiki-default:#1F2328;--shiki-dark:#E6EDF3",[68],{"type":27,"value":69},"(\n",{"type":22,"tag":47,"props":71,"children":73},{"class":49,"line":72},2,[74,79,85],{"type":22,"tag":47,"props":75,"children":76},{"style":66},[77],{"type":27,"value":78}," VkCommandBuffer ",{"type":22,"tag":47,"props":80,"children":82},{"style":81},"--shiki-default:#953800;--shiki-dark:#FFA657",[83],{"type":27,"value":84},"commandBuffer",{"type":22,"tag":47,"props":86,"children":87},{"style":66},[88],{"type":27,"value":89},",\n",{"type":22,"tag":47,"props":91,"children":93},{"class":49,"line":92},3,[94,99,104,109,114],{"type":22,"tag":47,"props":95,"children":96},{"style":54},[97],{"type":27,"value":98}," const",{"type":22,"tag":47,"props":100,"children":101},{"style":66},[102],{"type":27,"value":103}," VkCudaLaunchInfoNV",{"type":22,"tag":47,"props":105,"children":106},{"style":54},[107],{"type":27,"value":108},"*",{"type":22,"tag":47,"props":110,"children":111},{"style":81},[112],{"type":27,"value":113}," pLaunchInfo",{"type":22,"tag":47,"props":115,"children":116},{"style":66},[117],{"type":27,"value":118},");\n",{"type":22,"tag":34,"props":120,"children":125},{"className":121,"code":122,"filename":123,"language":124,"meta":40,"style":40},"language-rs shiki shiki-themes github-light-default github-dark-default","pub fn cmd_cuda_launch_kernel_nv(\n command_buffer: vk::CommandBuffer,\n p_launch_info: *const vk::CudaLaunchInfoNV,\n);\n","Rust","rs",[126],{"type":22,"tag":43,"props":127,"children":128},{"__ignoreMap":40},[129,151,183,217],{"type":22,"tag":47,"props":130,"children":131},{"class":49,"line":50},[132,137,142,147],{"type":22,"tag":47,"props":133,"children":134},{"style":54},[135],{"type":27,"value":136},"pub",{"type":22,"tag":47,"props":138,"children":139},{"style":54},[140],{"type":27,"value":141}," fn",{"type":22,"tag":47,"props":143,"children":144},{"style":60},[145],{"type":27,"value":146}," cmd_cuda_launch_kernel_nv",{"type":22,"tag":47,"props":148,"children":149},{"style":66},[150],{"type":27,"value":69},{"type":22,"tag":47,"props":152,"children":153},{"class":49,"line":72},[154,159,164,169,174,179],{"type":22,"tag":47,"props":155,"children":156},{"style":66},[157],{"type":27,"value":158}," command_buffer",{"type":22,"tag":47,"props":160,"children":161},{"style":54},[162],{"type":27,"value":163},":",{"type":22,"tag":47,"props":165,"children":166},{"style":81},[167],{"type":27,"value":168}," vk",{"type":22,"tag":47,"props":170,"children":171},{"style":54},[172],{"type":27,"value":173},"::",{"type":22,"tag":47,"props":175,"children":176},{"style":81},[177],{"type":27,"value":178},"CommandBuffer",{"type":22,"tag":47,"props":180,"children":181},{"style":66},[182],{"type":27,"value":89},{"type":22,"tag":47,"props":184,"children":185},{"class":49,"line":92},[186,191,195,200,204,208,213],{"type":22,"tag":47,"props":187,"children":188},{"style":66},[189],{"type":27,"value":190}," p_launch_info",{"type":22,"tag":47,"props":192,"children":193},{"style":54},[194],{"type":27,"value":163},{"type":22,"tag":47,"props":196,"children":197},{"style":54},[198],{"type":27,"value":199}," *const",{"type":22,"tag":47,"props":201,"children":202},{"style":81},[203],{"type":27,"value":168},{"type":22,"tag":47,"props":205,"children":206},{"style":54},[207],{"type":27,"value":173},{"type":22,"tag":47,"props":209,"children":210},{"style":81},[211],{"type":27,"value":212},"CudaLaunchInfoNV",{"type":22,"tag":47,"props":214,"children":215},{"style":66},[216],{"type":27,"value":89},{"type":22,"tag":47,"props":218,"children":220},{"class":49,"line":219},4,[221],{"type":22,"tag":47,"props":222,"children":223},{"style":66},[224],{"type":27,"value":118},{"type":22,"tag":226,"props":227,"children":228},"ul",{},[229,240],{"type":22,"tag":230,"props":231,"children":232},"li",{},[233,238],{"type":22,"tag":43,"props":234,"children":236},{"className":235},[],[237],{"type":27,"value":84},{"type":27,"value":239}," is the command buffer into which the command will be\nrecorded.",{"type":22,"tag":230,"props":241,"children":242},{},[243,249,251,258],{"type":22,"tag":43,"props":244,"children":246},{"className":245},[],[247],{"type":27,"value":248},"pLaunchInfo",{"type":27,"value":250}," is a pointer to a ",{"type":22,"tag":252,"props":253,"children":255},"a",{"href":254},"/man/VkCudaLaunchInfoNV",[256],{"type":27,"value":257},"VkCudaLaunchInfoNV",{"type":27,"value":259}," structure\nin which the grid (similar to workgroup) dimension, function handle and\nrelated arguments are defined.",{"type":22,"tag":23,"props":261,"children":262},{},[263,265,271,273,279,280,286],{"type":27,"value":264},"When the command is executed, a global workgroup consisting of\n",{"type":22,"tag":43,"props":266,"children":268},{"className":267},[],[269],{"type":27,"value":270},"gridDimX",{"type":27,"value":272}," × ",{"type":22,"tag":43,"props":274,"children":276},{"className":275},[],[277],{"type":27,"value":278},"gridDimY",{"type":27,"value":272},{"type":22,"tag":43,"props":281,"children":283},{"className":282},[],[284],{"type":27,"value":285},"gridDimZ",{"type":27,"value":287}," local\nworkgroups is assembled.",{"type":22,"tag":289,"props":290,"children":292},"validity-group",{"name":291},"Valid Usage (Implicit)",[293,323,347,371,400],{"type":22,"tag":294,"props":295,"children":297},"validity-field",{"name":296},"VUID-vkCmdCudaLaunchKernelNV-commandBuffer-parameter",[298],{"type":22,"tag":23,"props":299,"children":300},{},[301,306,308,313,315,321],{"type":22,"tag":43,"props":302,"children":304},{"className":303},[],[305],{"type":27,"value":84},{"type":27,"value":307}," ",{"type":22,"tag":309,"props":310,"children":312},"normative",{"type":311},"must",[],{"type":27,"value":314}," be a valid ",{"type":22,"tag":252,"props":316,"children":318},{"href":317},"/man/VkCommandBuffer",[319],{"type":27,"value":320},"VkCommandBuffer",{"type":27,"value":322}," handle",{"type":22,"tag":294,"props":324,"children":326},{"name":325},"VUID-vkCmdCudaLaunchKernelNV-pLaunchInfo-parameter",[327],{"type":22,"tag":23,"props":328,"children":329},{},[330,335,336,339,341,345],{"type":22,"tag":43,"props":331,"children":333},{"className":332},[],[334],{"type":27,"value":248},{"type":27,"value":307},{"type":22,"tag":309,"props":337,"children":338},{"type":311},[],{"type":27,"value":340}," be a valid pointer to a valid ",{"type":22,"tag":252,"props":342,"children":343},{"href":254},[344],{"type":27,"value":257},{"type":27,"value":346}," structure",{"type":22,"tag":294,"props":348,"children":350},{"name":349},"VUID-vkCmdCudaLaunchKernelNV-commandBuffer-recording",[351],{"type":22,"tag":23,"props":352,"children":353},{},[354,359,360,363,365],{"type":22,"tag":43,"props":355,"children":357},{"className":356},[],[358],{"type":27,"value":84},{"type":27,"value":307},{"type":22,"tag":309,"props":361,"children":362},{"type":311},[],{"type":27,"value":364}," be in the ",{"type":22,"tag":252,"props":366,"children":368},{"href":367},"/chapters/commandbuffers#commandbuffers-lifecycle",[369],{"type":27,"value":370},"recording state",{"type":22,"tag":294,"props":372,"children":374},{"name":373},"VUID-vkCmdCudaLaunchKernelNV-commandBuffer-cmdpool",[375],{"type":22,"tag":23,"props":376,"children":377},{},[378,380,386,388,393,395,398],{"type":27,"value":379},"The ",{"type":22,"tag":43,"props":381,"children":383},{"className":382},[],[384],{"type":27,"value":385},"VkCommandPool",{"type":27,"value":387}," that ",{"type":22,"tag":43,"props":389,"children":391},{"className":390},[],[392],{"type":27,"value":84},{"type":27,"value":394}," was allocated from ",{"type":22,"tag":309,"props":396,"children":397},{"type":311},[],{"type":27,"value":399}," support graphics, or compute operations",{"type":22,"tag":294,"props":401,"children":403},{"name":402},"VUID-vkCmdCudaLaunchKernelNV-videocoding",[404],{"type":22,"tag":23,"props":405,"children":406},{},[407,409,412],{"type":27,"value":408},"This command ",{"type":22,"tag":309,"props":410,"children":411},{"type":311},[],{"type":27,"value":413}," only be called outside of a video coding scope",{"type":22,"tag":415,"props":416,"children":418},"validity-box",{"name":417},"Host Synchronization",[419],{"type":22,"tag":226,"props":420,"children":421},{},[422],{"type":22,"tag":230,"props":423,"children":424},{},[425,427,432,433,438,439,442],{"type":27,"value":426},"Host access to the ",{"type":22,"tag":43,"props":428,"children":430},{"className":429},[],[431],{"type":27,"value":385},{"type":27,"value":387},{"type":22,"tag":43,"props":434,"children":436},{"className":435},[],[437],{"type":27,"value":84},{"type":27,"value":394},{"type":22,"tag":309,"props":440,"children":441},{"type":311},[],{"type":27,"value":443}," be externally synchronized\n::",{"type":22,"tag":445,"props":446,"children":447},"style",{},[448],{"type":27,"value":449},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":40,"searchDepth":72,"depth":72,"links":451},[],"markdown",1725732599501]