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

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

Foreign.CUDA.Runtime.Event

Contents

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

Eq Event Source # 

Methods

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

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

Show Event Source # 

Methods

showsPrec :: Int -> Event -> ShowS #

show :: Event -> String #

showList :: [Event] -> ShowS #

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