[petsc-users] PetscSFBcastAndOpBegin() fails when called from MatDiagonalScale() for n_threads > 1 with "Wrong type of object"

Stefano Zampini stefano.zampini at gmail.com
Sun Jan 17 12:40:34 CST 2021


Valgrind https://valgrind.org/

Il Dom 17 Gen 2021, 21:28 Roland Richter <roland.richter at ntnu.no> ha
scritto:

> Dear all,
>
> I am currently encountering issues in my program when calling
> MatDiagonalScale(matrix, NULL, vector) in an MPI-context for at least two
> threads. The backtrace from gdb (and the error output) tells me that the
> problem lies apparently in PetscSFBcastAndOpBegin(), with the exact error
> listed as
> *petsc/src/vec/is/sf/interface/sf.c Wrong type of object: Parameter # 1 *
>
> When printing the involved matrix and vector, everything looks as expected
> (the matrix is split over the processes equally with continuous rows, the
> vector is distributed over both processes).
>
> Is the issue that my vector is distributed over several processes? Or is
> there another issue I am not seeing here?
>
> I tried to narrow the problem down by writing a MWE, but was not able to
> reproduce it in a smaller scale. Therefore, are there other approaches I
> could try, too?
>
> Thanks!
>
> Regards,
>
> Roland Richter
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20210117/654d5ace/attachment.html>


More information about the petsc-users mailing list