Vulkan samples: vkQueueSubmit always followed by vkWaitForFences?
<p>In the <a href="https://github.com/LunarG/VulkanSamples">API-Samples</a> that come with Vulkan, it appears that there is always a call to <code>vkWaitForFences</code> after a call to <code>vkQueueSubmit</code>, either directly or via <code>execute_queue_command_buffer</code> (in util_init.hpp). The call to <code>vkWaitForFences</code> will block the CPU execution until the GPU has finished doing all the work in the previous <code>vkQueueSubmit</code>. This in effect doesn't allow multiple frames to be constructed simultaneously, which (in theory) is limiting performance significantly. </p>

<p>Are these calls required, and if so, is there another way to not require the GPU to be idle before constructing a new frame?</p>