cusolver-0.2.0.0: FFI bindings to CUDA Solver, a LAPACK-like library

Copyright[2017] Trevor L. McDonell
LicenseBSD3
MaintainerTrevor L. McDonell <tmcdonell@cse.unsw.edu.au>
Stabilityexperimental
Portabilitynon-portable (GHC extensions)
Safe HaskellNone
LanguageHaskell2010

Foreign.CUDA.Solver.Sparse

Contents

Description

The cuSolver library provides useful LAPACK-like features implemented on NVIDIA GPUs. This module implements a subset of LAPACK functions on sparse matrices in CSR or CSC format.

To use operations from the cuSolver library, the user must allocate the required vectors and matrices in the GPU memory space, fill them with data, call the desired sequence of cuSolver functions, then copy the results from the GPU memory space back to the host.

The cuda package can be used for writing to and retrieving data from the GPU.

Example

TODO

Additional information

For more information, see the NVIDIA cuSolver documentation:

http://docs.nvidia.com/cuda/cusolver/index.html

Synopsis

Control

newtype Handle Source #

An opaque handle to the cuSolverSP context, which is passed to all library function calls.

http://docs.nvidia.com/cuda/cusolver/index.html#cuSolverSPhandle

Constructors

Handle (Ptr ()) 

create :: IO Handle Source #

This function initializes the cuSolverSP library and creates a handle to the cuSolverSP context. It must be called before any other cuSolverSP API function is invoked. It allocates hardware resources necessary for accessing the GPU.

http://docs.nvidia.com/cuda/cusolver/index.html#cusolverecreate

destroy :: Handle -> IO () Source #

This function releases resources used by the cuSolverSP library.

http://docs.nvidia.com/cuda/cusolver/index.html#cusparsedestroy

Operations