cuda-0.10.2.0: FFI binding to the CUDA interface for programming NVIDIA GPUs
Copyright[2009..2018] Trevor L. McDonell
LicenseBSD
Safe HaskellNone
LanguageHaskell98

Foreign.CUDA.Runtime.Event

Description

Event management for C-for-CUDA runtime environment

Synopsis

Event Management

data Event Source #

Events are markers that can be inserted into the CUDA execution stream and later queried.

Instances

Instances details
Eq Event Source # 
Instance details

Defined in Foreign.CUDA.Driver.Event

Methods

(==) :: Event -> Event -> Bool #

(/=) :: Event -> Event -> Bool #

Show Event Source # 
Instance details

Defined in Foreign.CUDA.Driver.Event

Methods

showsPrec :: Int -> Event -> ShowS #

show :: Event -> String #

showList :: [Event] -> ShowS #

data EventFlag Source #

Event creation flags

Instances

Instances details
Bounded EventFlag Source # 
Instance details

Defined in Foreign.CUDA.Driver.Event

Enum EventFlag Source #

Possible option flags for waiting for events

Instance details

Defined in Foreign.CUDA.Driver.Event

Eq EventFlag Source # 
Instance details

Defined in Foreign.CUDA.Driver.Event

Show EventFlag Source # 
Instance details

Defined in Foreign.CUDA.Driver.Event

create :: [EventFlag] -> IO Event Source #

Create a new event

destroy :: Event -> IO () Source #

Destroy an event

elapsedTime :: Event -> Event -> IO Float Source #

Determine the elapsed time (in milliseconds) between two events

query :: Event -> IO Bool Source #

Determines if a event has actually been recorded

record :: Event -> Maybe Stream -> IO () Source #

Record an event once all operations in the current context (or optionally specified stream) have completed. This operation is asynchronous.

wait :: Event -> Maybe Stream -> [WaitFlag] -> IO () Source #

Makes all future work submitted to the (optional) stream wait until the given event reports completion before beginning execution. Synchronisation is performed on the device, including when the event and stream are from different device contexts. Requires cuda-3.2.

block :: Event -> IO () Source #

Wait until the event has been recorded