This version can be pinned in stack with:cuda-0.9.0.0@sha256:5103233cabcfe00da749bb0601b29756fd96a96e07640d24e7e8fae495b5fc8a,5500
Module documentation for 0.9.0.0
ForeignForeign.CUDAForeign.CUDA.AnalysisForeign.CUDA.Analysis.Device
Foreign.CUDA.Analysis.Occupancy
Foreign.CUDA.DriverForeign.CUDA.Driver.ContextForeign.CUDA.Driver.Context.Base
Foreign.CUDA.Driver.Context.Config
Foreign.CUDA.Driver.Context.Peer
Foreign.CUDA.Driver.Context.Primary
Foreign.CUDA.Driver.Device
Foreign.CUDA.Driver.Error
Foreign.CUDA.Driver.Event
Foreign.CUDA.Driver.Exec
Foreign.CUDA.Driver.IPCForeign.CUDA.Driver.IPC.Event
Foreign.CUDA.Driver.IPC.Marshal
Foreign.CUDA.Driver.Marshal
Foreign.CUDA.Driver.ModuleForeign.CUDA.Driver.Module.Base
Foreign.CUDA.Driver.Module.Link
Foreign.CUDA.Driver.Module.Query
Foreign.CUDA.Driver.Profiler
Foreign.CUDA.Driver.Stream
Foreign.CUDA.Driver.Texture
Foreign.CUDA.Driver.Unified
Foreign.CUDA.Driver.Utils
Foreign.CUDA.Path
Foreign.CUDA.Ptr
Foreign.CUDA.RuntimeForeign.CUDA.Runtime.Device
Foreign.CUDA.Runtime.Error
Foreign.CUDA.Runtime.Event
Foreign.CUDA.Runtime.Exec
Foreign.CUDA.Runtime.Marshal
Foreign.CUDA.Runtime.Stream
Foreign.CUDA.Runtime.Texture
Foreign.CUDA.Runtime.Utils
Foreign.CUDA.Types
Haskell FFI Bindings to CUDA
The CUDA library provides a direct, general purpose C-like SPMD programming
model for NVIDIA graphics cards (G8x series onwards). This is a collection of
bindings to allow you to call and control, although not write, such functions
from Haskell-land. You will need to install the CUDA driver and developer
toolkit.
http://developer.nvidia.com/object/cuda.html
The configure step will look for your CUDA installation in the standard places,
and if the nvcc
compiler is found in your PATH
, relative to that.
For important information on installing on Windows, see:
https://github.com/tmcdonell/cuda/blob/master/WINDOWS.markdown
Change Log
Notable changes to the project will be documented in this file.
The format is based on Keep a Changelog .
Fixed
Added
Peer.getAttribute
Exec.launchKernelCooperative
Changed
Changed type of Stream.wait
and Stream.write
to support 64-bit values
Fixed
#50 Escape backslashes used in -D flags on Windows
Changed
Tested with CUDA toolkit 8.0
Added
Add operations for unified addressing in the device API
Add write
and wait
operations for streams in the device API
(internals) The paths this module was configured against are exposed by the
module Foreign.CUDA.Paths
.
Fixed
Bug fix in occupancy calculator
Fixed
#43 : Build fails with library profiling
#45 : On Windows, the Cabal installer is looking in the wrong place
#47 : Windows install fix
Fixed
Re-enable support for Cabal-1.22
#40 : Unknown CUDA device compute capability 6.1
#44 : Compilation fails for CUDA-8 [was: ghc 7.10.3 fail to install]
Changed
Tested with CUDA toolkit 7.5
Added
Add functions from CUDA-7.5
Add profiler control functions
Add function mallocHostForeignPtr
Changed
Add support for operations from CUDA-7.0
Add support for online linking
Add support for inter-process communication
Bug fixes, extra documentation, improve library coverage.
Mac OS X no longer requires the DYLD_LIBRARY_PATH environment variable in
order to compile or run programs that use this package.
Added
Add support for building on Windows (thanks to @mwu-tow)
Fixed
0.6.6.1 - 2015-04-04 [YANKED]
Fixed
Build fixes for ghc-7.6 and ghc-7.10
Added
Add compute-capability data for 3.7, 5.2 devices.
Changed
Combine the definition of the ‘Event’ and ‘Stream’ data types. As of
CUDA-3.1 these data structures are equivalent, and can be safely shared
between runtime and driver API calls and libraries.
Mark FFI imports of potentially long-running API functions as safe. This
allows them to be safely called from Haskell threads without blocking the
entire HEC.
Removed
Drop support for CUDA 3.0 and older.
Fixed
Build fix for Mac OS X 10.10 (Yosemite)
Changed
Tested with CUDA toolkit 6.5
Added
Add functions from CUDA-6.5
Stackage is a service provided by the
Haskell Foundation
│ Originally developed by
FP Complete