Skip to content

implement in-place dispatching of blob args

Juston Li requested to merge justonli/venus-protocol:in-place-dispatch into main

Instead of temporarily allocating blob arrays for dispatching and then copying to/from shmem, directly pass the offset in the decoder/encoder where the blob is located or will be written for dispatching; saving the extra memory use and copy.

Currently vkGetPipelineCache and vkGetQueryPoolResults have such blob outputs.

vkCmdUpdateBuffer, vkCmdPushConstants, vkCreatePipelineCache, VkWriteDescriptorSetInlineUniformBlock, and commands with VkSpecializationInfo have such blob inputs.

vkr changes are here: virglrenderer!1353 (merged)

Edited by Ryan Neph

Merge request reports