Skip to content

Commit

Permalink
More words to flesh out the docs
Browse files Browse the repository at this point in the history
  • Loading branch information
kshyatt committed Oct 13, 2016
1 parent 87e7110 commit 2db7b2e
Showing 1 changed file with 26 additions and 0 deletions.
26 changes: 26 additions & 0 deletions docs/src/index.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,11 @@
# CUSPARSE.jl

### Container types

Analogous to `CUDArt.jl` and its `CudaArray` types, you can use
a variety of sparse matrix containers similar to those in Julia
base.

```@docs
CudaSparseVector
CudaSparseMatrixCSC
Expand All @@ -12,6 +17,11 @@ CUSPARSE.CompressedSparse
```

### Utility types

These types are used to give CUSPARSE internals information
about the matrices they are working on. Most are opaque pointers
or `enums`.

```@docs
CUSPARSE.cusparseMatDescr_t
CUSPARSE.cusparseDirection_t
Expand Down Expand Up @@ -43,6 +53,13 @@ CUSPARSE.cusparsetype
```

### Type Conversions

These functions allow you to switch between different sparse
matrix formats. This is particularly useful because Julia
uses a compressed sparse **column** representation internally,
while most CUSPARSE routines work with compressed sparse **row**
matrices (or variants of them, such as the `BSR` and `HYB` formats).

```@docs
switch2csc
switch2csr
Expand Down Expand Up @@ -86,6 +103,15 @@ gemm
```

### Preconditioners

These are in-place incomplete preconditioners for a linear solve.
They are in-place in the sense that doing a full Cholesky/LU solve
would require more memory than the starting matrix uses, and this
may not be possible on the restricted memory of the GPU. Instead,
an incomplete solution is performed, where the structure of the
matrix is untouched (so it occupies the same amount of memory)
but its values are updated.

```@docs
ic0!
ic02!
Expand Down

0 comments on commit 2db7b2e

Please sign in to comment.