[petsc-dev] errors with cuda + mumps
Zhang, Junchao
jczhang at mcs.anl.gov
Wed Mar 13 16:37:55 CDT 2019
On Wed, Mar 13, 2019 at 3:49 PM Balay, Satish <balay at mcs.anl.gov<mailto:balay at mcs.anl.gov>> wrote:
mailers that only format html and not the text form are annoying :(
On Wed, 13 Mar 2019, Zhang, Junchao wrote:
> Satish, I found something strange. I configured with --with-cuda --with-precision=single, then with -log_view, I saw
> Compiled with single precision PetscScalar and PetscReal
> Compiled with full precision matrices (default)
This message is misleading [and should be fixed]. This feature was removed.
>
> I found that confused mumps. When I added --with-precision=double, I got consistent MatScalar and PetscScalar precision, and the errors I reported
> disappeared. Do you know why?
how is mumps confused? Perhaps this example doesn't work with single precision? [or mumps single precision doesn't work for this problem?]
OK, I thought mumps was inputed with a double precision matrix and single precision vectors. I was wrong. I tested on my laptop --with-cuda --with-precision=single, these errors did show up. In petsc dashboard, we do not have "single + mumps" combination. I will create a PR to mark these tests require double.
Lots of examples fail with single precision..
Satish
>
> --Junchao Zhang
>
>
> On Wed, Mar 13, 2019 at 11:15 AM Junchao Zhang <jczhang at mcs.anl.gov<mailto:jczhang at mcs.anl.gov>> wrote:
> I met some errors with cuda + mumps. It was tested with
> make -f gmakefile test search='snes_tutorials-ex69_q2p1fetidp_deluxe snes_tutorials-ex62_fetidp_2d_quad
> snes_tutorials-ex69_q2p1fetidp_deluxe_adaptive ksp_ksp_tutorials-ex52f_mumps'
>
> I can reproduce it with petsc master. The first line of petsc nightly
> (http://ftp.mcs.anl.gov/pub/petsc/nightlylogs/archive/2019/03/12/master.html) shows another error. But I guess they have the same root: PETSc
> gives random wrong results in some cases. For example, I ran ksp_ksp_tutorials-ex52f_mumps twice and saw
>
> $ mpirun -n 3 ./ex52f
> Mumps row pivot threshhold = 1.00E-06
> Mumps determinant=( 9.01E-01 0.00E+00)*2^ 99
> Norm of error 1.5554E-06 iterations 1
>
> $ mpirun -n 3 ./ex52f
> Mumps row pivot threshhold = 1.00E-06
> Mumps determinant=( 9.01E-01 0.00E+00)*2^ 99
> Norm of error 1.6356E-06 iterations 1
>
>
> The correct output has "Norm of error < 1.e-12,iterations 1". Currently, I do know the reason.
>
> --Junchao Zhang
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20190313/26fdd8cb/attachment.html>
More information about the petsc-dev
mailing list