| Copyright | [2009..2023] Trevor L. McDonell |
|---|---|
| License | BSD |
| Safe Haskell | Safe-Inferred |
| Language | Haskell98 |
Foreign.CUDA.Driver.Module.Link
Contents
Description
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
Constructors
| 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 Methods 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] # | |
| Show JITInputType Source # | |
Defined in Foreign.CUDA.Driver.Module.Base Methods showsPrec :: Int -> JITInputType -> ShowS # show :: JITInputType -> String # showList :: [JITInputType] -> ShowS # | |
| Eq JITInputType Source # | |
Defined in Foreign.CUDA.Driver.Module.Base | |
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.