Copyright | [2009..2018] Trevor L. McDonell |
---|---|
License | BSD |
Safe Haskell | None |
Language | Haskell98 |
Module linking for low-level driver interface
Since CUDA-5.5
Synopsis
- data LinkState
- data JITOption
- data JITInputType
- create :: [JITOption] -> IO LinkState
- destroy :: LinkState -> IO ()
- complete :: LinkState -> IO Module
- addFile :: LinkState -> FilePath -> JITInputType -> [JITOption] -> IO ()
- addData :: LinkState -> ByteString -> JITInputType -> [JITOption] -> IO ()
- addDataFromPtr :: LinkState -> Int -> Ptr Word8 -> JITInputType -> [JITOption] -> IO ()
JIT module linking
A pending JIT linker state
Just-in-time compilation and linking options
MaxRegisters !Int | maximum number of registers per thread |
ThreadsPerBlock !Int | number of threads per block to target for |
OptimisationLevel !Int | level of optimisation to apply (1-4, default 4) |
Target !Compute | compilation target, otherwise determined from context |
FallbackStrategy !JITFallback | fallback strategy if matching cubin not found |
GenerateDebugInfo | generate debug info (-g) (requires cuda >= 5.5) |
GenerateLineInfo | generate line number information (-lineinfo) (requires cuda >= 5.5) |
Verbose | verbose log messages (requires cuda >= 5.5) |
data JITInputType Source #
Device code formats that can be used for online linking
Instances
Enum JITInputType Source # | |
Defined in Foreign.CUDA.Driver.Module.Base succ :: JITInputType -> JITInputType # pred :: JITInputType -> JITInputType # toEnum :: Int -> JITInputType # fromEnum :: JITInputType -> Int # enumFrom :: JITInputType -> [JITInputType] # enumFromThen :: JITInputType -> JITInputType -> [JITInputType] # enumFromTo :: JITInputType -> JITInputType -> [JITInputType] # enumFromThenTo :: JITInputType -> JITInputType -> JITInputType -> [JITInputType] # | |
Eq JITInputType Source # | |
Defined in Foreign.CUDA.Driver.Module.Base (==) :: JITInputType -> JITInputType -> Bool # (/=) :: JITInputType -> JITInputType -> Bool # | |
Show JITInputType Source # | |
Defined in Foreign.CUDA.Driver.Module.Base showsPrec :: Int -> JITInputType -> ShowS # show :: JITInputType -> String # showList :: [JITInputType] -> ShowS # |
destroy :: LinkState -> IO () Source #
Destroy the state of a JIT linker invocation.
Requires CUDA-5.5.
complete :: LinkState -> IO Module Source #
Complete a pending linker invocation and load the current module. The link state will be destroyed.
Requires CUDA-5.5.
addFile :: LinkState -> FilePath -> JITInputType -> [JITOption] -> IO () Source #
Add an input file to a pending linker invocation.
Requires CUDA-5.5.
addData :: LinkState -> ByteString -> JITInputType -> [JITOption] -> IO () Source #
Add an input to a pending linker invocation.
Requires CUDA-5.5.