79278224

Date: 2024-12-13 12:01:44
Score: 2
Natty:
Report link

Do I need some kind synchronization/barrier between the two pipelines?

As a general rule of thumb, even with dynamic rendering, you are required to manage the synchronization yourself. And when 2 render passes (dynamic or normal) write to same attachment, or one writes and one reads from same attachment, you need pipeline and memory barriers to synchronize the use. This is not needed for 2 simultaneous reads. In the Edit, you removed the vkCmdEndRendering and vkCmdBeginRendering at the end of 1st pass, so you won't need synchronization anymore. But, this means that you cannot read from the results of 1st pipeline from the 2nd pipeline. Because they are now the same pass.

What storeOp should I use for the first vkCmdBeginRendering, and what loadOp should I use for the second vkCmdBeginRendering

You mentioned that your 2nd pass may rely on first pipeline's output. So you may use storeOp Store in 1st pass, and loadOp load in 2nd pass.

I hope this was helpful!

Reasons:
  • Blacklisted phrase (0.5): I need
  • Long answer (-0.5):
  • No code block (0.5):
  • Contains question mark (0.5):
  • Low reputation (1):
Posted by: Neil Mewada