[petsc-dev] refactoring petsccusp.h needed
Paul Mullowney
paulm at txcorp.com
Fri Mar 8 15:48:21 CST 2013
Yes. I can work on this.
> Paul,
>
> We are thinking of a PETSc release around March 21. Before that time petsccusp.h
>
> #if !defined(__PETSCCUSP_H)
> #define __PETSCCUSP_H
> /*
> This should only be included in user code that uses CUSP directly and hence the file name ends with .cu
> */
> #include<../src/vec/vec/impls/dvecimpl.h>
> #include<../src/vec/vec/impls/seq/seqcusp/cuspvecimpl.h>
> #endif
>
> so that ONLY the public interface of the stuff (what needs to be known to user code) is available and the rest is kept in the cuspvecimpl.h file. Maybe pets ccu
> sp.h could be empty, I don't know).
Wish list:
1) I would like a public method that exposes the GPU device pointers to
the user. For example, we have VecGetArrayRead(). But, this gives a CPU
pointer (which in turn causes a memcpy from CPU to GPU). We need
something that returns the GPU device pointer. This is useful for
embedded PETSc solves in external apps that want to use the GPU.
2) As for other things. I have a patch for ICC that I'm nearly finished
with. After that, I'm going to try to harden the other CUSP
preconditioners so that they work with the CUSP and CUSPARSE classes.
-Paul
> Do you think you can make that change and anything else that needs doing before the release?
>
> Thanks
> Barry
>
More information about the petsc-dev
mailing list