[petsc-dev] Regression in Vec assembly

Barry Smith bsmith at mcs.anl.gov
Tue Oct 20 22:02:05 CDT 2015


  Jed,

   Will you be working on this? I don't have a clue how your "new stuff" works.

   Thanks

   Barry

> On Oct 19, 2015, at 3:20 AM, Lisandro Dalcin <dalcinl at gmail.com> wrote:
> 
> Barry, you merged a branch from Jed with changes to the Vec assembly
> routines. I've found a serious regression using PetIGA, however I
> could not managed to reproduce with a basic, PETSc-only example. I
> cannot figure out where the issue is, so I'll need your help.
> 
> Unfortunately, as I said, you have to use PetIGA to run the tests.
> Building PetIGA should be trivial, just "hg clone
> bitbucket/dalcinl/petiga", cd petiga, export PETIGA_DIR=$PWD, "make".
> 
> Next put the attached makefile and C source somewhere and run "make".
> 
> You should see three runs (see the `test` target in the makefile).
> 
> * The first one is sequential, you should see the output of a VecView,
> all entries in the vector equal.
> 
> * The next run uses two MPI processes, and pass the option
> -vec_assembly_bts 0 to use the legacy assembly routines. The output is
> the expected one, and equal to the sequential run.
> 
> * In the last run, I use again two processes but now I pass
> -vec_assembly_bts 1 (not really needed, now in petsc/master the new
> assembly routines are the default). Then you should see that the
> output is different, the first two entries in process one are missing
> some contributions.
> 
> Please note that in these tests the vectors have block size 2 and
> PetIGA then uses VecSetValuesBlockedLocal(..., ADD_VALUES). When
> running with block size 1 (-iga_dof 1 in the makefile) everything is
> OK, but any bs>1 shows the issue.
> 
> The example uses a small periodic grid to make the output easy to
> parse at first sight, you can however try larger grids (-iga_element)
> and remove the periodic option, pipe the output to files, then diff,
> and you should still see the issue.
> 
> 
> -- 
> Lisandro Dalcin
> ============
> Research Scientist
> Computer, Electrical and Mathematical Sciences & Engineering (CEMSE)
> Numerical Porous Media Center (NumPor)
> King Abdullah University of Science and Technology (KAUST)
> http://numpor.kaust.edu.sa/
> 
> 4700 King Abdullah University of Science and Technology
> al-Khawarizmi Bldg (Bldg 1), Office # 4332
> Thuwal 23955-6900, Kingdom of Saudi Arabia
> http://www.kaust.edu.sa
> 
> Office Phone: +966 12 808-0459
> <makefile><IGAVecAssembly.c>




More information about the petsc-dev mailing list