Mojo struct
DeviceEvent
struct DeviceEvent
Represents a GPU event for synchronization between streams.
A DeviceEvent allows for fine-grained synchronization between different GPU streams. Events can be recorded in one stream and waited for in another, enabling efficient coordination of asynchronous GPU operations.
Example:
from gpu.host import DeviceContext
var ctx = DeviceContext()
var default_stream = ctx.stream()
var new_stream = ctx.create_stream()
# Create event in default_stream
var event = ctx.create_event()
# Wait for the event in new_stream
new_stream.enqueue_wait_for(event)
# Stream 2 can continue
default_stream.record_event(event)
Implemented traits
AnyType
,
Copyable
,
ImplicitlyCopyable
,
Movable
,
UnknownDestructibility
Aliases
__copyinit__is_trivial
alias __copyinit__is_trivial = False
__del__is_trivial
alias __del__is_trivial = False
__moveinit__is_trivial
alias __moveinit__is_trivial = False
Methods
__del__
__del__(var self)
Releases resources associated with this event.
synchronize
synchronize(self)
Blocks the calling CPU thread until this event completes.
This function waits until the event has been recorded and all operations before the event in the stream have completed.
Raises:
If synchronization fails.
Was this page helpful?
Thank you! We'll create more content like this.
Thank you for helping us improve!