[petsc-users] upgrading to 3.22.4

Sanjay Govindjee s_g at berkeley.edu
Sun Mar 23 02:19:53 CDT 2025


Hi Barry,
   I have moved to main and rebuilt the PETSc libraries etc.  Right now 
I am having trouble just getting my source code to compile. Plenty of 
subroutines with PETSc calls compile but a few are throwing errors and 
killing my compile. I suspect there will be more but if I can figure 
these hopefully I can debug the ones that will follow.
-sanjay

    Error: There is no specific subroutine for the generic
    'matmpibaijsetpreallocation' at (1)
    upremas.F:68:72:

        68 |      &                               ierr)
    | 1
    Error: There is no specific subroutine for the generic
    'matseqbaijsetpreallocation' at (1)
    upremas.F:74:72:

        74 |      &                             ierr)
    | 1
    Error: There is no specific subroutine for the generic
    'matmpiaijsetpreallocation' at (1)
    upremas.F:77:72:

        77 |      &                             ierr)
    | 1
    Error: There is no specific subroutine for the generic
    'matseqaijsetpreallocation' at (1)

    parkv.F:58:25:

        58 |       PetscViewer    Y_view
           |                         1
    Error: Type name 'tpetscviewer' at (1) is ambiguous
    parkv.F:69:9:

        69 |       endif
           |         1
    Error: Expecting END SUBROUTINE statement at (1)
    parkv.F:72:9:

        72 |       endif
           |         1
    Error: Expecting END SUBROUTINE statement at (1)
    parkv.F:91:66:

        91 |         call
    PetscViewerASCIIOpen(PETSC_COMM_WORLD,"yvec.m",Y_view,
    | 1
    Error: Symbol 'y_view' at (1) has no IMPLICIT type; did you mean 'yvec'?
    parkv.F:65:72:

        65 |         call VecCreate        (PETSC_COMM_WORLD, xvec, ierr)
    | 1
    Error: There is no specific subroutine for the generic 'veccreate'
    at (1)
    parkv.F:67:72:

        67 |         call VecSetFromOptions(xvec, ierr)
    | 1
    Error: There is no specific subroutine for the generic
    'vecsetfromoptions' at (1)
    parkv.F:68:72:

        68 |         call VecDuplicate     (xvec, yvec, ierr)
    | 1
    Error: There is no specific subroutine for the generic
    'vecduplicate' at (1)
    parkv.F:71:72:

        71 |         call VecDuplicate     (xvec, yvec, ierr)
    | 1
    Error: There is no specific subroutine for the generic
    'vecduplicate' at (1)
    parkv.F:85:72:

        85 |       call VecAssemblyBegin(xvec, ierr)
    | 1
    Error: There is no specific subroutine for the generic
    'vecassemblybegin' at (1)
    parkv.F:86:72:

        86 |       call VecAssemblyEnd  (xvec, ierr)
    | 1
    Error: There is no specific subroutine for the generic
    'vecassemblyend' at (1)
    parkv.F:88:72:

        88 |       call MatMult           (Kmat, xvec, yvec, ierr)
    | 1
    Error: There is no specific subroutine for the generic 'matmult' at (1)
    parkv.F:101:72:

       101 |       call VecGetOwnershipRange(yvec, starti, endi, ierr)
    | 1
    Error: There is no specific subroutine for the generic
    'vecgetownershiprange' at (1)


-

On 3/21/25 7:17 AM, Barry Smith wrote:
>
>     I have just pushed a major update to the Fortran interface to the 
> main PETSc git branch. Could you please try to work with main (to 
> become release in a couple of weeks) with your Fortran code as we 
> debug the problem? This will save you a lot of work and hopefully make 
> the debugging more straightforward.
>
>     You can send the same output with the debugger if it crashes in 
> the main branch and I can try to track down what is going wrong.
>
>   Barry
>
>
>
>
>> On Mar 21, 2025, at 12:37 AM, Sanjay Govindjee via petsc-users 
>> <petsc-users at mcs.anl.gov> wrote:
>>
>> I am trying to upgrade my code to PETSc 3.22.4 (the code was last 
>> updated to 3.19.4 or perhaps 3.18.1, I've lost track). I've been 
>> using this code with PETSc for over 20 years.
>>
>> To get my code to compile and link during this update, I only need to 
>> make two changes; one was to use PetscViewerPushFormat instead of 
>> PetscViewerSetFormat and the other was to use 
>> PETSC_NULL_INTEGER_ARRAY in a spot or two.
>>
>> When I run the code however, I am getting an error very early on 
>> during a call to MatCreate near the beginning of the code.  The 
>> screen output says:
>>
>>     [3]PETSC ERROR: matcreate_() at
>>     /Users/sg/petsc-3.22.4/gnug/src/mat/utils/ftn-auto/gcreatef.c:101
>>     Cannot create PETSC_NULL_XXX object
>>     [0]PETSC ERROR: matcreate_() at
>>     /Users/sg/petsc-3.22.4/gnug/src/mat/utils/ftn-auto/gcreatef.c:101
>>     Cannot create PETSC_NULL_XXX object
>>     [1]PETSC ERROR: matcreate_() at
>>     /Users/sg/petsc-3.22.4/gnug/src/mat/utils/ftn-auto/gcreatef.c:101
>>     Cannot create PETSC_NULL_XXX object
>>     [2]PETSC ERROR: matcreate_() at
>>     /Users/sg/petsc-3.22.4/gnug/src/mat/utils/ftn-auto/gcreatef.c:101
>>     Cannot create PETSC_NULL_XXX object
>>
>> I have a 4 processor run going.  I am running with 
>> -on_error_attach_debugger but the debugger is giving me cryptic (at 
>> least to me) output (the same for all 4 processes modulo the PID).  
>> Stack traces seem to be unavailable :(
>>
>>     lldb  -p 71963
>>     (lldb) process attach --pid 71963
>>     Process 71963 stopped
>>     * thread #1, queue = 'com.apple.main-thread', stop reason =
>>     signal SIGSTOP
>>         frame #0: 0x00007fff69d92746
>>     libsystem_kernel.dylib`__semwait_signal + 10
>>     libsystem_kernel.dylib`__semwait_signal:
>>     ->  0x7fff69d92746 <+10>: jae 0x7fff69d92750            ; <+20>
>>         0x7fff69d92748 <+12>: movq   %rax, %rdi
>>         0x7fff69d9274b <+15>: jmp 0x7fff69d9121d            ; cerror
>>         0x7fff69d92750 <+20>: retq
>>     Target 0: (feap) stopped.
>>
>>     Executable module set to "/Users/sg/Feap/ver87/parfeap/feap".
>>     Architecture set to: x86_64h-apple-macosx-.
>>
>> Does anyone have any hints as to what may be going on?  Note the 
>> program starts normally and i can do stuff with the interactive 
>> interface for the code -- even plotting the mesh etc. so I believe 
>> the input data has been read in correctly.  The crash only occurs 
>> when I initiate the formation of the matrix.
>>
>> I am attaching the 
>> /Users/sg/petsc-3.22.4/gnug/src/mat/utils/ftn-auto/gcreatef.c file in 
>> case that offers some insight.
>>
>> Note, I have been
>> -sanjay
>> -- 
>> <gcreatef.c>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20250323/1b3d5e06/attachment.html>


More information about the petsc-users mailing list