When batches of command buffers are submitted to a queue via
vkQueueSubmit
, it defines a memory dependency with prior host
operations, and execution of command buffers submitted to the queue.
The first synchronization scope is
defined by the host execution model, but includes execution of
vkQueueSubmit
on the host and anything that happened-before it.
The second synchronization scope includes every command submitted in the same queue submission command, and all future submissions to the same queue.
The first access scope
includes all host writes to mappable device memory that are either coherent,
or have been flushed with vkFlushMappedMemoryRanges
.
The second access scope includes all memory access performed by the device.