Copyright | [2017] Trevor L. McDonell |
---|---|
License | BSD3 |
Maintainer | Trevor L. McDonell <tmcdonell@cse.unsw.edu.au> |
Stability | experimental |
Portability | non-portable (GHC extensions) |
Safe Haskell | None |
Language | Haskell2010 |
For more information see the cuSolver function reference:
http://docs.nvidia.com/cuda/cusolver/index.html#cuds-linearsolver-reference
Synopsis
- data Handle
- data Fill
- data Side
- spotrf_bufferSize :: Handle -> Fill -> Int -> DevicePtr Float -> Int -> IO Int
- dpotrf_bufferSize :: Handle -> Fill -> Int -> DevicePtr Double -> Int -> IO Int
- cpotrf_bufferSize :: Handle -> Fill -> Int -> DevicePtr (Complex Float) -> Int -> IO Int
- zpotrf_bufferSize :: Handle -> Fill -> Int -> DevicePtr (Complex Double) -> Int -> IO Int
- spotrf :: Handle -> Fill -> Int -> DevicePtr Float -> Int -> DevicePtr Float -> Int -> DevicePtr Int32 -> IO ()
- dpotrf :: Handle -> Fill -> Int -> DevicePtr Double -> Int -> DevicePtr Double -> Int -> DevicePtr Int32 -> IO ()
- cpotrf :: Handle -> Fill -> Int -> DevicePtr (Complex Float) -> Int -> DevicePtr (Complex Float) -> Int -> DevicePtr Int32 -> IO ()
- zpotrf :: Handle -> Fill -> Int -> DevicePtr (Complex Double) -> Int -> DevicePtr (Complex Double) -> Int -> DevicePtr Int32 -> IO ()
- spotrs :: Handle -> Fill -> Int -> Int -> DevicePtr Float -> Int -> DevicePtr Float -> Int -> DevicePtr Int32 -> IO ()
- dpotrs :: Handle -> Fill -> Int -> Int -> DevicePtr Double -> Int -> DevicePtr Double -> Int -> DevicePtr Int32 -> IO ()
- cpotrs :: Handle -> Fill -> Int -> Int -> DevicePtr (Complex Float) -> Int -> DevicePtr (Complex Float) -> Int -> DevicePtr Int32 -> IO ()
- zpotrs :: Handle -> Fill -> Int -> Int -> DevicePtr (Complex Double) -> Int -> DevicePtr (Complex Double) -> Int -> DevicePtr Int32 -> IO ()
- sgetrf_bufferSize :: Handle -> Int -> Int -> DevicePtr Float -> Int -> IO Int
- dgetrf_bufferSize :: Handle -> Int -> Int -> DevicePtr Double -> Int -> IO Int
- cgetrf_bufferSize :: Handle -> Int -> Int -> DevicePtr (Complex Float) -> Int -> IO Int
- zgetrf_bufferSize :: Handle -> Int -> Int -> DevicePtr (Complex Double) -> Int -> IO Int
- sgetrf :: Handle -> Int -> Int -> DevicePtr Float -> Int -> DevicePtr Float -> DevicePtr Int32 -> DevicePtr Int32 -> IO ()
- dgetrf :: Handle -> Int -> Int -> DevicePtr Double -> Int -> DevicePtr Double -> DevicePtr Int32 -> DevicePtr Int32 -> IO ()
- cgetrf :: Handle -> Int -> Int -> DevicePtr (Complex Float) -> Int -> DevicePtr (Complex Float) -> DevicePtr Int32 -> DevicePtr Int32 -> IO ()
- zgetrf :: Handle -> Int -> Int -> DevicePtr (Complex Double) -> Int -> DevicePtr (Complex Double) -> DevicePtr Int32 -> DevicePtr Int32 -> IO ()
- sgetrs :: Handle -> Operation -> Int -> Int -> DevicePtr Float -> Int -> DevicePtr Int32 -> DevicePtr Float -> Int -> DevicePtr Int32 -> IO ()
- dgetrs :: Handle -> Operation -> Int -> Int -> DevicePtr Double -> Int -> DevicePtr Int32 -> DevicePtr Double -> Int -> DevicePtr Int32 -> IO ()
- cgetrs :: Handle -> Operation -> Int -> Int -> DevicePtr (Complex Float) -> Int -> DevicePtr Int32 -> DevicePtr (Complex Float) -> Int -> DevicePtr Int32 -> IO ()
- zgetrs :: Handle -> Operation -> Int -> Int -> DevicePtr (Complex Double) -> Int -> DevicePtr Int32 -> DevicePtr (Complex Double) -> Int -> DevicePtr Int32 -> IO ()
- sgeqrf_bufferSize :: Handle -> Int -> Int -> DevicePtr Float -> Int -> IO Int
- dgeqrf_bufferSize :: Handle -> Int -> Int -> DevicePtr Double -> Int -> IO Int
- cgeqrf_bufferSize :: Handle -> Int -> Int -> DevicePtr (Complex Float) -> Int -> IO Int
- zgeqrf_bufferSize :: Handle -> Int -> Int -> DevicePtr (Complex Double) -> Int -> IO Int
- sgeqrf :: Handle -> Int -> Int -> DevicePtr Float -> Int -> DevicePtr Float -> DevicePtr Float -> Int -> DevicePtr Int32 -> IO ()
- dgeqrf :: Handle -> Int -> Int -> DevicePtr Double -> Int -> DevicePtr Double -> DevicePtr Double -> Int -> DevicePtr Int32 -> IO ()
- cgeqrf :: Handle -> Int -> Int -> DevicePtr (Complex Float) -> Int -> DevicePtr (Complex Float) -> DevicePtr (Complex Float) -> Int -> DevicePtr Int32 -> IO ()
- zgeqrf :: Handle -> Int -> Int -> DevicePtr (Complex Double) -> Int -> DevicePtr (Complex Double) -> DevicePtr (Complex Double) -> Int -> DevicePtr Int32 -> IO ()
- sormqr :: Handle -> Side -> Operation -> Int -> Int -> Int -> DevicePtr Float -> Int -> DevicePtr Float -> DevicePtr Float -> Int -> DevicePtr Float -> Int -> DevicePtr Int32 -> IO ()
- dormqr :: Handle -> Side -> Operation -> Int -> Int -> Int -> DevicePtr Double -> Int -> DevicePtr Double -> DevicePtr Double -> Int -> DevicePtr Double -> Int -> DevicePtr Int32 -> IO ()
- cunmqr :: Handle -> Side -> Operation -> Int -> Int -> Int -> DevicePtr (Complex Float) -> Int -> DevicePtr (Complex Float) -> DevicePtr (Complex Float) -> Int -> DevicePtr (Complex Float) -> Int -> DevicePtr Int32 -> IO ()
- zunmqr :: Handle -> Side -> Operation -> Int -> Int -> Int -> DevicePtr (Complex Double) -> Int -> DevicePtr (Complex Double) -> DevicePtr (Complex Double) -> Int -> DevicePtr (Complex Double) -> Int -> DevicePtr Int32 -> IO ()
- ssytrf_bufferSize :: Handle -> Int -> DevicePtr Float -> Int -> IO Int
- dsytrf_bufferSize :: Handle -> Int -> DevicePtr Double -> Int -> IO Int
- csytrf_bufferSize :: Handle -> Int -> DevicePtr (Complex Float) -> Int -> IO Int
- zsytrf_bufferSize :: Handle -> Int -> DevicePtr (Complex Double) -> Int -> IO Int
- ssytrf :: Handle -> Fill -> Int -> DevicePtr Float -> Int -> DevicePtr Int32 -> DevicePtr Float -> Int -> DevicePtr Int32 -> IO ()
- dsytrf :: Handle -> Fill -> Int -> DevicePtr Double -> Int -> DevicePtr Int32 -> DevicePtr Double -> Int -> DevicePtr Int32 -> IO ()
- csytrf :: Handle -> Fill -> Int -> DevicePtr (Complex Float) -> Int -> DevicePtr Int32 -> DevicePtr (Complex Float) -> Int -> DevicePtr Int32 -> IO ()
- zsytrf :: Handle -> Fill -> Int -> DevicePtr (Complex Double) -> Int -> DevicePtr Int32 -> DevicePtr (Complex Double) -> Int -> DevicePtr Int32 -> IO ()
- sorgqr_bufferSize :: Handle -> Int -> Int -> Int -> DevicePtr Float -> Int -> DevicePtr Float -> IO Int
- dorgqr_bufferSize :: Handle -> Int -> Int -> Int -> DevicePtr Double -> Int -> DevicePtr Double -> IO Int
- cungqr_bufferSize :: Handle -> Int -> Int -> Int -> DevicePtr (Complex Float) -> Int -> DevicePtr (Complex Float) -> IO Int
- zungqr_bufferSize :: Handle -> Int -> Int -> Int -> DevicePtr (Complex Double) -> Int -> DevicePtr (Complex Double) -> IO Int
- sorgqr :: Handle -> Int -> Int -> Int -> DevicePtr Float -> Int -> DevicePtr Float -> DevicePtr Float -> Int -> DevicePtr Int32 -> IO ()
- dorgqr :: Handle -> Int -> Int -> Int -> DevicePtr Double -> Int -> DevicePtr Double -> DevicePtr Double -> Int -> DevicePtr Int32 -> IO ()
- cungqr :: Handle -> Int -> Int -> Int -> DevicePtr (Complex Float) -> Int -> DevicePtr (Complex Float) -> DevicePtr (Complex Float) -> Int -> DevicePtr Int32 -> IO ()
- zungqr :: Handle -> Int -> Int -> Int -> DevicePtr (Complex Double) -> Int -> DevicePtr (Complex Double) -> DevicePtr (Complex Double) -> Int -> DevicePtr Int32 -> IO ()
- sormqr_bufferSize :: Handle -> Side -> Operation -> Int -> Int -> Int -> DevicePtr Float -> Int -> DevicePtr Float -> DevicePtr Float -> Int -> IO Int
- dormqr_bufferSize :: Handle -> Side -> Operation -> Int -> Int -> Int -> DevicePtr Double -> Int -> DevicePtr Double -> DevicePtr Double -> Int -> IO Int
- cunmqr_bufferSize :: Handle -> Side -> Operation -> Int -> Int -> Int -> DevicePtr (Complex Float) -> Int -> DevicePtr (Complex Float) -> DevicePtr (Complex Float) -> Int -> IO Int
- zunmqr_bufferSize :: Handle -> Side -> Operation -> Int -> Int -> Int -> DevicePtr (Complex Double) -> Int -> DevicePtr (Complex Double) -> DevicePtr (Complex Double) -> Int -> IO Int
- spotri :: Handle -> Fill -> Int -> DevicePtr Float -> Int -> DevicePtr Float -> Int -> DevicePtr Int32 -> IO ()
- dpotri :: Handle -> Fill -> Int -> DevicePtr Double -> Int -> DevicePtr Double -> Int -> DevicePtr Int32 -> IO ()
- cpotri :: Handle -> Fill -> Int -> DevicePtr (Complex Float) -> Int -> DevicePtr (Complex Float) -> Int -> DevicePtr Int32 -> IO ()
- zpotri :: Handle -> Fill -> Int -> DevicePtr (Complex Double) -> Int -> DevicePtr (Complex Double) -> Int -> DevicePtr Int32 -> IO ()
- spotri_bufferSize :: Handle -> Fill -> Int -> DevicePtr Float -> Int -> IO Int
- dpotri_bufferSize :: Handle -> Fill -> Int -> DevicePtr Double -> Int -> IO Int
- cpotri_bufferSize :: Handle -> Fill -> Int -> DevicePtr (Complex Float) -> Int -> IO Int
- zpotri_bufferSize :: Handle -> Fill -> Int -> DevicePtr (Complex Double) -> Int -> IO Int
Documentation
An opaque handle to the cuSolverDN context, which is passed to all library function calls.
http://docs.nvidia.com/cuda/cusolver/index.html#cuSolverDNhandle
Indicates whether the dense matrix is on the lift or right side in the matrix equation solved by a particular function.
http://docs.nvidia.com/cuda/cublas/index.html#cublassidemode_t
spotrf :: Handle -> Fill -> Int -> DevicePtr Float -> Int -> DevicePtr Float -> Int -> DevicePtr Int32 -> IO () Source #
dpotrf :: Handle -> Fill -> Int -> DevicePtr Double -> Int -> DevicePtr Double -> Int -> DevicePtr Int32 -> IO () Source #
cpotrf :: Handle -> Fill -> Int -> DevicePtr (Complex Float) -> Int -> DevicePtr (Complex Float) -> Int -> DevicePtr Int32 -> IO () Source #
zpotrf :: Handle -> Fill -> Int -> DevicePtr (Complex Double) -> Int -> DevicePtr (Complex Double) -> Int -> DevicePtr Int32 -> IO () Source #
spotrs :: Handle -> Fill -> Int -> Int -> DevicePtr Float -> Int -> DevicePtr Float -> Int -> DevicePtr Int32 -> IO () Source #
dpotrs :: Handle -> Fill -> Int -> Int -> DevicePtr Double -> Int -> DevicePtr Double -> Int -> DevicePtr Int32 -> IO () Source #
cpotrs :: Handle -> Fill -> Int -> Int -> DevicePtr (Complex Float) -> Int -> DevicePtr (Complex Float) -> Int -> DevicePtr Int32 -> IO () Source #
zpotrs :: Handle -> Fill -> Int -> Int -> DevicePtr (Complex Double) -> Int -> DevicePtr (Complex Double) -> Int -> DevicePtr Int32 -> IO () Source #
sgetrf :: Handle -> Int -> Int -> DevicePtr Float -> Int -> DevicePtr Float -> DevicePtr Int32 -> DevicePtr Int32 -> IO () Source #
dgetrf :: Handle -> Int -> Int -> DevicePtr Double -> Int -> DevicePtr Double -> DevicePtr Int32 -> DevicePtr Int32 -> IO () Source #
cgetrf :: Handle -> Int -> Int -> DevicePtr (Complex Float) -> Int -> DevicePtr (Complex Float) -> DevicePtr Int32 -> DevicePtr Int32 -> IO () Source #
zgetrf :: Handle -> Int -> Int -> DevicePtr (Complex Double) -> Int -> DevicePtr (Complex Double) -> DevicePtr Int32 -> DevicePtr Int32 -> IO () Source #
sgetrs :: Handle -> Operation -> Int -> Int -> DevicePtr Float -> Int -> DevicePtr Int32 -> DevicePtr Float -> Int -> DevicePtr Int32 -> IO () Source #
dgetrs :: Handle -> Operation -> Int -> Int -> DevicePtr Double -> Int -> DevicePtr Int32 -> DevicePtr Double -> Int -> DevicePtr Int32 -> IO () Source #
cgetrs :: Handle -> Operation -> Int -> Int -> DevicePtr (Complex Float) -> Int -> DevicePtr Int32 -> DevicePtr (Complex Float) -> Int -> DevicePtr Int32 -> IO () Source #
zgetrs :: Handle -> Operation -> Int -> Int -> DevicePtr (Complex Double) -> Int -> DevicePtr Int32 -> DevicePtr (Complex Double) -> Int -> DevicePtr Int32 -> IO () Source #
sgeqrf :: Handle -> Int -> Int -> DevicePtr Float -> Int -> DevicePtr Float -> DevicePtr Float -> Int -> DevicePtr Int32 -> IO () Source #
dgeqrf :: Handle -> Int -> Int -> DevicePtr Double -> Int -> DevicePtr Double -> DevicePtr Double -> Int -> DevicePtr Int32 -> IO () Source #
cgeqrf :: Handle -> Int -> Int -> DevicePtr (Complex Float) -> Int -> DevicePtr (Complex Float) -> DevicePtr (Complex Float) -> Int -> DevicePtr Int32 -> IO () Source #
zgeqrf :: Handle -> Int -> Int -> DevicePtr (Complex Double) -> Int -> DevicePtr (Complex Double) -> DevicePtr (Complex Double) -> Int -> DevicePtr Int32 -> IO () Source #
sormqr :: Handle -> Side -> Operation -> Int -> Int -> Int -> DevicePtr Float -> Int -> DevicePtr Float -> DevicePtr Float -> Int -> DevicePtr Float -> Int -> DevicePtr Int32 -> IO () Source #
dormqr :: Handle -> Side -> Operation -> Int -> Int -> Int -> DevicePtr Double -> Int -> DevicePtr Double -> DevicePtr Double -> Int -> DevicePtr Double -> Int -> DevicePtr Int32 -> IO () Source #
cunmqr :: Handle -> Side -> Operation -> Int -> Int -> Int -> DevicePtr (Complex Float) -> Int -> DevicePtr (Complex Float) -> DevicePtr (Complex Float) -> Int -> DevicePtr (Complex Float) -> Int -> DevicePtr Int32 -> IO () Source #
zunmqr :: Handle -> Side -> Operation -> Int -> Int -> Int -> DevicePtr (Complex Double) -> Int -> DevicePtr (Complex Double) -> DevicePtr (Complex Double) -> Int -> DevicePtr (Complex Double) -> Int -> DevicePtr Int32 -> IO () Source #
ssytrf :: Handle -> Fill -> Int -> DevicePtr Float -> Int -> DevicePtr Int32 -> DevicePtr Float -> Int -> DevicePtr Int32 -> IO () Source #
dsytrf :: Handle -> Fill -> Int -> DevicePtr Double -> Int -> DevicePtr Int32 -> DevicePtr Double -> Int -> DevicePtr Int32 -> IO () Source #
csytrf :: Handle -> Fill -> Int -> DevicePtr (Complex Float) -> Int -> DevicePtr Int32 -> DevicePtr (Complex Float) -> Int -> DevicePtr Int32 -> IO () Source #
zsytrf :: Handle -> Fill -> Int -> DevicePtr (Complex Double) -> Int -> DevicePtr Int32 -> DevicePtr (Complex Double) -> Int -> DevicePtr Int32 -> IO () Source #
sorgqr_bufferSize :: Handle -> Int -> Int -> Int -> DevicePtr Float -> Int -> DevicePtr Float -> IO Int Source #
dorgqr_bufferSize :: Handle -> Int -> Int -> Int -> DevicePtr Double -> Int -> DevicePtr Double -> IO Int Source #
cungqr_bufferSize :: Handle -> Int -> Int -> Int -> DevicePtr (Complex Float) -> Int -> DevicePtr (Complex Float) -> IO Int Source #
zungqr_bufferSize :: Handle -> Int -> Int -> Int -> DevicePtr (Complex Double) -> Int -> DevicePtr (Complex Double) -> IO Int Source #
sorgqr :: Handle -> Int -> Int -> Int -> DevicePtr Float -> Int -> DevicePtr Float -> DevicePtr Float -> Int -> DevicePtr Int32 -> IO () Source #
dorgqr :: Handle -> Int -> Int -> Int -> DevicePtr Double -> Int -> DevicePtr Double -> DevicePtr Double -> Int -> DevicePtr Int32 -> IO () Source #
cungqr :: Handle -> Int -> Int -> Int -> DevicePtr (Complex Float) -> Int -> DevicePtr (Complex Float) -> DevicePtr (Complex Float) -> Int -> DevicePtr Int32 -> IO () Source #
zungqr :: Handle -> Int -> Int -> Int -> DevicePtr (Complex Double) -> Int -> DevicePtr (Complex Double) -> DevicePtr (Complex Double) -> Int -> DevicePtr Int32 -> IO () Source #
sormqr_bufferSize :: Handle -> Side -> Operation -> Int -> Int -> Int -> DevicePtr Float -> Int -> DevicePtr Float -> DevicePtr Float -> Int -> IO Int Source #
dormqr_bufferSize :: Handle -> Side -> Operation -> Int -> Int -> Int -> DevicePtr Double -> Int -> DevicePtr Double -> DevicePtr Double -> Int -> IO Int Source #
cunmqr_bufferSize :: Handle -> Side -> Operation -> Int -> Int -> Int -> DevicePtr (Complex Float) -> Int -> DevicePtr (Complex Float) -> DevicePtr (Complex Float) -> Int -> IO Int Source #
zunmqr_bufferSize :: Handle -> Side -> Operation -> Int -> Int -> Int -> DevicePtr (Complex Double) -> Int -> DevicePtr (Complex Double) -> DevicePtr (Complex Double) -> Int -> IO Int Source #
spotri :: Handle -> Fill -> Int -> DevicePtr Float -> Int -> DevicePtr Float -> Int -> DevicePtr Int32 -> IO () Source #
dpotri :: Handle -> Fill -> Int -> DevicePtr Double -> Int -> DevicePtr Double -> Int -> DevicePtr Int32 -> IO () Source #
cpotri :: Handle -> Fill -> Int -> DevicePtr (Complex Float) -> Int -> DevicePtr (Complex Float) -> Int -> DevicePtr Int32 -> IO () Source #