Author Topic: Reducing Vulkan API call overhead  (Read 1431 times)

0 Members and 1 Guest are viewing this topic.


  • Global Moderator
  • Hero Member
  • *****
  • Posts: 2495
Reducing Vulkan API call overhead
« on: May 02, 2018, 09:41:02 AM »
Vulkan is designed to have significantly smaller CPU overhead compared to other APIs like OpenGL. This is achieved by various means – the API is structured to do more work up-front, such as creating the pipeline state once and binding it many times instead of having to continuously set various state bits, and many API calls do more work per call, for example vkCmdBindVertexBuffers can bind all vertex buffer objects used by the vertex shader stage in one call. However a complex application can still end up calling various Vulkan functions tens or hundreds of thousands of times per frame. This article will look at costs associated with that, and ways to bring them down.