[petsc-dev] PetscFinalize broken with -options_table ?

Barry Smith bsmith at mcs.anl.gov
Tue Mar 18 22:46:18 CDT 2014


   False alarm, problem is not as general as I stated.

   I can reproduce the problem in maint with your example code when -breakme is on 

    Problem also happens in master

   Still working on it.

    Barry






On Mar 18, 2014, at 10:17 PM, Barry Smith <bsmith at mcs.anl.gov> wrote:

> 
>   This looks like a problem unrelated to viewers, options,  etc. 
> 
>   In maint, 3.4.3 and 3.4.4 PetscFinalize() crashes if any PETSc object (like your viewer) is not destroyed before PetscFinalize(). This does not occur in master and is not suppose to happen.
> 
>    Trying to track it down but could take a while to determine what change broke this.
> 
>   Barry
> 
> 
> 
> 
> 
> On Mar 18, 2014, at 6:20 PM, William Perkins <william.perkins at pnnl.gov> wrote:
> 
>> All,
>> 
>> I also ran into this today.
>> 
>> Attached is a minimal program that exhibited the problem for me. Initially, I thought it was because I was using non-default formats (e.g. MATLAB) for VecView and MatView, but I think any Viewer use causes the problem.
>> 
>> Thanks.
>> 
>> Bill
>> 
>> P.S. I'm using 3.4.3 configured as follows:
>> 
>> python ./config/configure.py \
>>   PETSC_ARCH=arch-macosx-complex-opt \
>>   --with-prefix="$prefix" \
>>   --with-mpi=1 \
>>   --with-cc=mpicc \
>>   --with-fc=mpif90 \
>>   --with-cxx=mpicxx \
>>   --with-c++-support=1 \
>>   --with-c-support=0 \
>>   --with-fortran=0 \
>>   --with-scalar-type=complex \
>>   --with-fortran-kernels=generic \
>>   --with-valgrind=0 \
>>   --download-superlu_dist \
>>   --download-parmetis \
>>   --download-metis \
>>   --download-f2cblaslapack=1 \
>>   --with-clanguage=c++ \
>>   --with-shared-libraries=0 \
>>   --with-dynamic-loading=0 \
>>   --with-x=0 \
>>   --with-mpirun=mpiexec \
>>   --with-mpiexec=mpiexec \
>>   --with-debugging=0
>> 
>> 
>> On 03/12/2014 04:30 AM, Matthew Knepley wrote:
>>> On Wed, Mar 12, 2014 at 4:52 AM, Václav Hapla <vaclav.hapla at vsb.cz
>>> <mailto:vaclav.hapla at vsb.cz>> wrote:
>>> 
>>>   You're right this is not happening with the petsc example. Thus it's
>>>   probably problem in my code. I'll come back when I know what's the
>>>   true reason.
>>> 
>>> 
>>> It could still be our bug. If you can strip down your code and send it,
>>> I will look at it.
>>> 
>>>  Thanks,
>>> 
>>>     Matt
>>> 
>>>   Matt, sorry for replying to your personal address only.
>>> 
>>>   Thank you,
>>>   Vaclav
>>> 
>>> 
>>>   Dne 11.3.2014 16:04, Matthew Knepley napsal(a):
>>>>   On Tue, Mar 11, 2014 at 9:27 AM, Václav Hapla <vaclav.hapla at vsb.cz
>>>>   <mailto:vaclav.hapla at vsb.cz>> wrote:
>>>> 
>>>>       FWICS PetscFinalize in petsc-current contains the following bug.
>>>>       It calls
>>>>          PetscObjectRegisterDestroyAll()
>>>>       and after that, if -options_table is present, it calls
>>>>       PetscViewerASCIIGetStdout(PETSC_COMM_WORLD,&viewer);
>>>>          PetscOptionsView(viewer);
>>>>       causing
>>>>          [0]PETSC ERROR: No support for this operation for this
>>>>       object type!
>>>>          [0]PETSC ERROR: Only supports ASCII viewer!
>>>>       because the viewer is destroyed already by
>>>>       PetscObjectRegisterDestroyAll.
>>>> 
>>>>       I haven't tested petsc-dev but I can see in it's the same
>>>>       situation in the pinit.c source.
>>>> 
>>>> 
>>>>   I cannot reproduce this on 'next':
>>>> 
>>>>   next $:/PETSc3/petsc/petsc-dev/src/snes/examples/tutorials$ ./ex19
>>>>   -options_table -snes_monitor
>>>>   PETSC_OPTIONS="-cublas 0" ./ex19 -options_table -snes_monitor
>>>>   lid velocity = 0.0625, prandtl # = 1, grashof # = 1
>>>>     0 SNES Function norm 2.391552133017e-01
>>>>     1 SNES Function norm 6.839858507066e-05
>>>>     2 SNES Function norm 8.558777232425e-11
>>>>   Number of SNES iterations = 2
>>>>   #PETSc Option Table entries:
>>>>   -options_table
>>>>   -snes_monitor
>>>>   #End of PETSc Option Table entries
>>>> 
>>>>   Can you reproduce this with a PETSc example?
>>>> 
>>>>     Thanks,
>>>> 
>>>>        Matt
>>>> 
>>>>       Best regards,
>>>>       Vaclav
>>>> 
>>>> 
>>>>       --
>>>> 
>>>>       Vaclav Hapla
>>>>       Junior researcher / PhD student
>>>>       IT4Innovations <http://www.it4i.eu/> / Dept. of Applied
>>>>       Mathematics <http://am.vsb.cz/>
>>>> 
>>>>       _office PI 328_
>>>>       tel.: (+420) 597 329 078 <tel:%28%2B420%29%20597%20329%20078>
>>>>       Podnikatelsky inkubator VSB-TUO
>>>>       Studentska 6202/17
>>>>       708 00 Ostrava-Poruba
>>>>       Czech Republic
>>>> 
>>>>       _contact address_
>>>>       IT4Innovations
>>>>       VSB - Technical University of Ostrava
>>>>       17. listopadu 15/2172
>>>>       708 33 Ostrava-Poruba
>>>>       Czech Republic
>>>> 
>>>> 
>>>> 
>>>> 
>>>>   --
>>>>   What most experimenters take for granted before they begin their
>>>>   experiments is infinitely more interesting than any results to
>>>>   which their experiments lead.
>>>>   -- Norbert Wiener
>>> 
>>>   --
>>> 
>>>   Vaclav Hapla
>>>   Junior researcher / PhD student
>>>   IT4Innovations <http://www.it4i.eu/> / Dept. of Applied Mathematics
>>>   <http://am.vsb.cz/>
>>> 
>>>   _office PI 328_
>>>   tel.: (+420) 597 329 078 <tel:%28%2B420%29%20597%20329%20078>
>>>   Podnikatelsky inkubator VSB-TUO
>>>   Studentska 6202/17
>>>   708 00 Ostrava-Poruba
>>>   Czech Republic
>>> 
>>>   _contact address_
>>>   IT4Innovations
>>>   VSB - Technical University of Ostrava
>>>   17. listopadu 15/2172
>>>   708 33 Ostrava-Poruba
>>>   Czech Republic
>>> 
>>> 
>>> 
>>> 
>>> --
>>> What most experimenters take for granted before they begin their
>>> experiments is infinitely more interesting than any results to which
>>> their experiments lead.
>>> -- Norbert Wiener
>> 
>> -- 
>> Bill Perkins
>> Research Engineer
>> Hydrology Group
>> 
>> Pacific Northwest National Laboratory
>> 902 Battelle Boulevard
>> P.O. Box 999, MSIN K9-36
>> Richland, WA  99352 USA
>> Tel:  509-372-6131
>> Fax: 509-372-6089
>> william.perkins at pnnl.gov
>> www.pnnl.gov
>> <viewer.cpp><viewer.out>
> 




More information about the petsc-dev mailing list