[petsc-dev] Branches with additional features
Pierre Jolivet
Pierre.Jolivet at enseeiht.fr
Tue May 30 03:46:27 CDT 2017
Thank you very much. One last thing: with VecCreateMPIWithArray, if I
pass a NULL pointer for the array of values, then nothing is done and I
need to use VecPlaceArray/VecResetArray.
With MatCreateDense, if I pass a NULL pointer for the array of values,
then PETSc allocates the memory. Why is there such a difference? Is
there a way to create a dense matrix with no storage attached to it
(that will of course be then set via
MatDensePlaceArray/MatDenseResetArray)?
Thanks,
Pierre
On Mon, 29 May 2017 19:45:27 -0500, Barry Smith wrote:
> I have added MatDensePlaceArray() and MatDenseResetArray() in
>
> https://bitbucket.org/petsc/petsc/branch/barry/feature-matdenseplacearray
>
> Barry
>
>> On May 29, 2017, at 3:46 PM, Pierre Jolivet
>> <pierre.jolivet at enseeiht.fr> wrote:
>>
>>
>>> On 29 May 2017, at 22:20, Jed Brown <jed at jedbrown.org> wrote:
>>>
>>>> That makes perfect sense (assuming I'm not wrong about the
>>>> MatAssemblyBegin/MatAssemblyEnd). MatSetUpMultiply_MPIDense would
>>>> still
>>>> be called at each iteration but I doubt this is too costly.
>>>
>>> It creates a VecScatter so it isn't nothing (in terms of parallel
>>> semantics), but I'd like to see profiling data before chasing this
>>> around.
>>
>> Sure, I'll use that and will look out for any occurrence of
>> "MatDensePlaceArray" (or stuff like that) in the logs, in case it is
>> implemented.
>> Thanks!
More information about the petsc-dev
mailing list