One process sets a value in the matrix, the others do not. They all call MatAssemblyBegin(). Some processes will skip the assembly and hence the code will hang.
> On Oct 20, 2017, at 12:03 PM, Kong, Fande <[email protected]> wrote: > > Hi All, > > In Mat/VecAssemblyBegin/End, why we do not check if or not mat/vec is > assembled. If mat/vec is already assembled, should we just return without > doing anything? > > I think we have some particular reasons not to check if the matrix is > assembled. I honestly do not know why. > > Thanks, > > Fande,
