Module 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.

Re-exports§

pub use self::future::now;
pub use self::future::GpuFuture;

Modules§

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

Structs§

AccessFlags
A set of memory access types that are included in a memory dependency.
BufferMemoryBarrier
A memory barrier that is applied to a single buffer.
DependencyFlags
Flags that modify how execution and memory dependencies are formed.
DependencyInfo
Dependency info for barriers in a pipeline barrier or event command.
ImageMemoryBarrier
A memory barrier that is applied to a single image.
MemoryBarrier
A memory barrier that is applied globally.
PipelineStages
A set of PipelineStage values.

Enums§

AccessConflict
Conflict when attempting to access a resource.
HostAccessError
Error when attempting to read or write a resource from the host (CPU).
PipelineStage
A single stage in the device’s processing pipeline.
QueueFamilyOwnershipTransfer
Specifies a queue family ownership transfer for a resource.
Sharing
Declares in which queue(s) a resource can be used.
SharingMode
Declares in which queue(s) a resource can be used.