Module vulkano::sync

source ·
Expand description

Synchronization on the GPU.

Just like for CPU code, you have to ensure that buffers and images are not accessed mutably by multiple GPU queues simultaneously and that they are not accessed mutably by the CPU and by the GPU simultaneously.

This safety is enforced at runtime by vulkano but it is not magic and you will require some knowledge if you want to avoid errors.



  • An event provides fine-grained synchronization within a single queue, or from the host to a queue.
  • A fence provides synchronization between the device and the host, or between an external source and the host.
  • Represents an event that will happen on the GPU in the future.
  • A semaphore provides synchronization between multiple queues, with non-command buffer commands on the same queue, or between the device and an external source.