[petsc-dev] MatSetPreallocationCOO remove attached objects?

Barry Smith bsmith at petsc.dev
Tue Mar 1 19:55:22 CST 2022


  It may be that certain attached objects cannot be kept; or if kept, when used need to be checked that they are still valid. This could be tagged with the objectID and when checked the current objectid be compared and the attached objects discarded if out of date. Depends exactly on how the objects are used.

  

> On Mar 1, 2022, at 6:36 PM, Mark Adams <mfadams at lbl.gov> wrote:
> 
> If it's tricky I would just throw an error if there are attached objects. 
> It was easy for me to work around it.
> Worry about it later.
> 
> On Tue, Mar 1, 2022 at 5:49 PM Junchao Zhang <junchao.zhang at gmail.com <mailto:junchao.zhang at gmail.com>> wrote:
> I met errors and I don't know how to fix them,  https://gitlab.com/petsc/petsc/-/jobs/2151255655 <https://gitlab.com/petsc/petsc/-/jobs/2151255655>
> The errors are all hypre-related.  @Stefano Zampini <mailto:stefano.zampini at gmail.com>  might know more.
> Perhaps we can assert in MatHeaderMerge(A,C) and A does not contain composed objects?  MatHeaderMerge() is so vague on what will be kept and what will be discarded.
> 
> --Junchao Zhang
> 
> 
> On Tue, Mar 1, 2022 at 3:00 PM Mark Adams <mfadams at lbl.gov <mailto:mfadams at lbl.gov>> wrote:
> I can attach my containers (3!) after this call.
> Actually better structure in my code but this should be fixed.
> Thanks
> 
> On Tue, Mar 1, 2022 at 3:06 PM Barry Smith <bsmith at petsc.dev <mailto:bsmith at petsc.dev>> wrote:
> 
>   These might not need to be deleted but could possibly be moved over
> 
> ierr = PetscFunctionListDestroy(&((PetscObject)A)->qlist);CHKERRQ(ierr);
>   ierr = PetscObjectListDestroy(&((PetscObject)A)->olist);CHKERRQ(ierr);
>   ierr = PetscComposedQuantitiesDestroy((PetscObject)A);CHKERRQ(ierr);
> 
> also MatHeaderReplace() exists. I struggle to understand the exact differences and why both exist but I think there are some subtle reasons why there are both and don't know if they can be merged.
> 
>> On Mar 1, 2022, at 2:47 PM, Junchao Zhang <junchao.zhang at gmail.com <mailto:junchao.zhang at gmail.com>> wrote:
>> 
>> I realized this problem but did not expect someone would run into it :)
>> Let me think again.
>> 
>> --Junchao Zhang
>> 
>> 
>> On Tue, Mar 1, 2022 at 1:33 PM Mark Adams <mfadams at lbl.gov <mailto:mfadams at lbl.gov>> wrote:
>> I have a container attached to my matrix and it seems to go away after a call to MatSetPreallocationCOO.
>> Does that sound plausible?
> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20220301/f24c79d3/attachment-0001.html>


More information about the petsc-dev mailing list