[petsc-dev] patches for ICC/Cholesky preconditioner on GPUs

Karl Rupp rupp at mcs.anl.gov
Sat Mar 9 15:35:45 CST 2013


Hi Paul,

thanks, I'll take care of the patch. You'll get comments tomorrow.

Best regards,
Karli


On 03/09/2013 02:30 PM, Paul Mullowney wrote:
> Hi,
>
> I've gotten GPU based icc preconditioners working with the following set
> of patches. One uses ICC by loading an upper triangular matrix into the
> cusparse class, and then setting the symmetry option, i.e.
>
>      ierr =
> MatCreateSeqAIJCUSPARSE(comm,n,m,PETSC_NULL,num_entries_per_row,&A);CHKERRQ(ierr);
>
>      ierr = MatSetOption(A,MAT_SYMMETRIC,PETSC_TRUE);
>
> I've organized the implementations into 2 files:
> 1) icc-cholesky-cusparse-organization.patch : This patch has the basic
> infrastructure for calling the symbolic and numeric factorizations (both
> ICC and Cholesky). Currently these routines make scoping calls to the
> implementations in aij/seq/aijfact.c
>
> 2) icc-cholesky-implementation.patch : This patch contains the matrix
> construction on the GPU. This is done in the method
> MatSeqAIJCUSPARSEBuildICCTriMatrices.
>
> This patch has significant changes so comments or suggestions are
> definitely welcome.
> Thanks,
> -Paul




More information about the petsc-dev mailing list