[petsc-dev] PETSc GPU capabilities
Paul Mullowney
paulm at txcorp.com
Thu Mar 8 12:37:20 CST 2012
There is some level of reusability between the matrix type data
structures, especially for CSR storage. For other matrix storage
formats, like ELLPACK where the performance gain can be substantial,
CUSPARSE uses an opaque data structure. CUSP does not.
So, I agree that it's wrong to mix CUSP and CUSPARSE implementations. At
some level I think it's wrong to be so hooked into CUSP and have all the
files named after CUSP. This is especially true since the evidence I'm
gathering suggests that CUSPARSE is the better choice for SpMV and
TriSolve.
Meanwhile, CUSP is the right choice for various preconditioners, ...
So much complexity! Perhaps, a discussion on redesign is necessary.
-Paul
> On Wed, Mar 7, 2012 at 18:38, Paul Mullowney <paulm at txcorp.com
> <mailto:paulm at txcorp.com>> wrote:
>
> I can see where this can simplify the code in aijcusp.cu
> <http://aijcusp.cu>.
>
> However, how do you propose to let the user control whether or not
> to use CUSP or CUSPARSE?
>
>
> It's different storage and different libraries, so it should be a
> different MatType, right? I think it's definitely wrong to have
> -mat_type cusp be using CUSPARSE instead of CUSP.
>
>
> What do you mean? Look at
> src/mat/impls/aij/seq/umfpack/umfpack.c for comparison.
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20120308/81ae4c68/attachment.html>
More information about the petsc-dev
mailing list