cuda: FFI binding to the CUDA interface for programming NVIDIA GPUs
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/cuda-downloads
The setup script will look for your CUDA installation by checking, in the following order:
The
CUDA_PATH
environment variableSearching for
nvcc
on thePATH
Checking at
/usr/local/cuda
CUDA_PATH_Vx_y
environment variable, for recent CUDA toolkit versions x.y
This library provides bindings to both the CUDA Driver and Runtime APIs. To get started, see one of:
Foreign.CUDA.Driver (a short tutorial is available here)
Tested with library versions up to CUDA-11.4. See also the travis-ci.org build matrix for version compatibility.
- NOTES:
The setup script for this package requires at least Cabal-1.24. To upgrade, execute one of:
cabal users:
cabal install Cabal --constraint="Cabal >= 1.24"
stack users:
stack setup --upgrade-cabal
Due to an interaction between GHC-8 and unified virtual address spaces in CUDA, this package does not currently work with GHCi on ghc-8.0.1 (compiled programs should work). See the following for more details:
https://github.com/tmcdonell/cuda/issues/39
https://ghc.haskell.org/trac/ghc/ticket/12573
The bug should be fixed in ghc-8.0.2 and beyond.
For additional notes on installing on Windows, see:
[Skip to Readme]
Modules
[Index] [Quick Jump]
- Foreign
- C
- Foreign.CUDA
- Foreign.CUDA.Analysis
- Foreign.CUDA.Driver
- Foreign.CUDA.Driver.Context
- Foreign.CUDA.Driver.Device
- Foreign.CUDA.Driver.Error
- Foreign.CUDA.Driver.Event
- Foreign.CUDA.Driver.Exec
- Graph
- IPC
- Foreign.CUDA.Driver.Marshal
- Foreign.CUDA.Driver.Module
- 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.Runtime
Downloads
- cuda-0.11.0.1.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
For package maintainers and hackage trustees
Candidates
- No Candidates