cuda-0.6.6.1: FFI binding to the CUDA interface for programming NVIDIA GPUs

Copyright[2009..2014] Trevor L. McDonell
LicenseBSD
Safe HaskellNone
LanguageHaskell98

Foreign.CUDA.Driver.Event

Contents

Description

Event management for low-level driver interface

Synopsis

Event Management

newtype Event Source

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

Constructors

Event 

Fields

useEvent :: Ptr ()
 

Instances

data EventFlag Source

Event creation flags

Instances

Enum EventFlag

Possible option flags for waiting for events

Eq EventFlag 
Show EventFlag 

data WaitFlag Source

Instances

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