On 15-04-25 06:26 PM, Matthew Knepley wrote:
On Sat, Apr 25, 2015 at 8:23 PM, Danyang Su <[email protected] <mailto:[email protected]>> wrote:



    On 15-04-25 06:03 PM, Barry Smith wrote:

           If this is what you got in your last run

                 at ../../gas_advection/velocity_g.F90:1344
            1344                                        cinfrt =
            cinfrt_dg(i1) * diff(ic,idim)             !diff is a very
            small value, e.g., 1.0d-316

           then it is still catching floating point underflow, which
        we do not want. This means either the change I suggested you
        make in the fp.c code didn't work or it actually uses a
        different floating point trap than that one.  BTW: absurd
        numbers like 1.0d-316 are often a symptom of uninitialized
        data; could that be a problem that diff is not filled
        correctly for all the ic, idim you are using?

            This going round and round is very frustrating and a waste
        of time. You need to be more proactive yourself and explore
        the code and poke around to figure out how to solve the problem.

           Please email
        $PETSC_DIR/$PETSC_ARCH/include/petscvariables.h so I can see
        what FP trap is being used on your machine.

        Barry

    Do you mean $PETSC_DIR/$PETSC_ARCH/conf/petscvariables? Otherwise
    I cannot find this file.


Its include/petscconf.h

    Do I need to reconfigure PETSc after changing the code you mentioned?


No, but you need to rebuild.
Yes, I have done 'gnumake'.

   Matt

    Danyang




            On Apr 25, 2015, at 2:24 PM, Danyang Su
            <[email protected] <mailto:[email protected]>> wrote:



            On 15-04-25 11:55 AM, Barry Smith wrote:

                    On Apr 25, 2015, at 1:51 PM, Danyang Su
                    <[email protected] <mailto:[email protected]>>
                      wrote:



                    On 15-04-25 11:32 AM, Barry Smith wrote:

                           I told you this yesterday.

                           It is probably stopping here on a harmless
                        underflow. You need to edit the PETSc code to
                        not worry about underflow.

                        Edit the file
                        /home/dsu/Soft/PETSc/petsc-3.5.2/src/sys/error/fp.c
                        and locate

                        #elif defined PETSC_HAVE_XMMINTRIN_H
                            _MM_SET_EXCEPTION_MASK(_MM_MASK_INEXACT);
                        #else

                        change it to

                        #elif defined PETSC_HAVE_XMMINTRIN_H
                            _MM_SET_EXCEPTION_MASK(_MM_MASK_INEXACT |
                        _MM_MASK_UNDERFLOW);
                        #else

                          Then run make gnumake in the PETSc directory
                        to compile the new version. Now link and run
                        the program again with -fp_trap and see where
                        it gets stuck this time.

                           Did you do this?

                          Barry

                    Yes, I did change the code in fp.c and run 'make
                    gnumake' in the PETSc directory. I just did a
                    double check and ran make gnumake again and got
                    the following information this time.


                    dsu@nwmop:~/Soft/PETSc/petsc-3.5.2$
                      make gnumake
                    Building PETSc using GNU Make with 10 build threads
                    ==========================================
                    make[1]: Entering directory
                    `/home/dsu/Soft/PETSc/petsc-3.5.2'
                    make[1]: Nothing to be done for `all'.
                    make[1]: Leaving directory
                    `/home/dsu/Soft/PETSc/petsc-3.5.2'
                    =========================================


                    Then I recompiled the codes, ran with -fp_trap and
                    still got the following error

                    Backtrace for this error:
                    Note: The EXACT line numbers in the stack are not
                    available,
                    [2]PETSC ERROR:       INSTEAD the line number of
                    the start of the function
                    [2]PETSC ERROR:       is given.
                    [2]PETSC ERROR: [2] PetscDefaultFPTrap line 379
                    /home/dsu/Soft/PETSc/petsc-3.5.2/src/sys/error/fp.c
                          INSTEAD the line number of the start of the
                    function
                    [3]PETSC ERROR:       is given.
                    [3]PETSC ERROR: [3] PetscDefaultFPTrap line 379
                    /home/dsu/Soft/PETSc/petsc-3.5.2/src/sys/error/fp.c
                    [2]PETSC ERROR: User provided function() line 0 in
                    Unknown file trapped floating point error
                    [3]PETSC ERROR: User provided function() line 0 in
                    Unknown file trapped floating point error


                    This is different then what you sent a few minutes
                ago where it crashed in hypre.

                    Anyways you need to use the -start_in_debugger
                business I sent in the previous email to see the exact
                place the problem occurs.

            Here is the information shown on gdb screen

            Program received signal SIGFPE, Arithmetic exception.
            0x00000000006c2bef in velocity_g (l_sufx=1, suffix=...,
            nmax=12, njamxc=34,
                 cinfradx=..., radial_coordx=.FALSE., _suffix=3)
                 at ../../gas_advection/velocity_g.F90:1344
            1344                                        cinfrt =
            cinfrt_dg(i1) * diff(ic,idim)             !diff is a very
            small value, e.g., 1.0d-316
            (gdb)

            After type cont on gdb screen, I got error information as
            below

            [1]PETSC ERROR: *** unknown floating point error occurred ***
            [1]PETSC ERROR: The specific exception can be determined
            by running in a debugger.  When the
            [1]PETSC ERROR: debugger traps the signal, the exception
            can be found with fetestexcept(0x3d)
            [1]PETSC ERROR: where the result is a bitwise OR of the
            following flags:
            [1]PETSC ERROR: FE_INVALID=0x1 FE_DIVBYZERO=0x4
            FE_OVERFLOW=0x8 FE_UNDERFLOW=0x10 FE_INEXACT=0x20
            [1]PETSC ERROR: Try option -start_in_debugger
            [1]PETSC ERROR: likely location of problem given in stack
            below
            [1]PETSC ERROR: ---------------------  Stack Frames
            ------------------------------------
            [1]PETSC ERROR: Note: The EXACT line numbers in the stack
            are not available,
            [1]PETSC ERROR:       INSTEAD the line number of the start
            of the function
            [1]PETSC ERROR:       is given.
            [1]PETSC ERROR: [1] PetscDefaultFPTrap line 379
            /home/dsu/Soft/PETSc/petsc-3.5.2/src/sys/error/fp.c
            [1]PETSC ERROR: User provided function() line 0 in Unknown
            file trapped floating point error
            [0]PETSC ERROR: *** unknown floating point error occurred ***
            [0]PETSC ERROR: The specific exception can be determined
            by running in a debugger.  When the
            [0]PETSC ERROR: debugger traps the signal, the exception
            can be found with fetestexcept(0x3d)
            [0]PETSC ERROR: where the result is a bitwise OR of the
            following flags:
            [0]PETSC ERROR: FE_INVALID=0x1 FE_DIVBYZERO=0x4
            FE_OVERFLOW=0x8 FE_UNDERFLOW=0x10 FE_INEXACT=0x20
            [0]PETSC ERROR: Try option -start_in_debugger
            [0]PETSC ERROR: likely location of problem given in stack
            below

            Thanks,

            Danyang

                    Thanks,

                    Danyang

                            On Apr 25, 2015, at 1:05 AM, Danyang Su
                            <[email protected]
                            <mailto:[email protected]>>
                              wrote:

                            Hi Barry and Satish,

                            How can I get rid of unknown floating
                            point error when a very small value is
                            multiplied.

                            e.g.,
                            cinfrt_dg(i1) and diff(ic,idim) are
                            1.0250235986806329E-008
                            8.6178408169776945E-317 respectively,

                            cinfrt = cinfrt_dg(i1) * diff(ic,idim)

                            I get the following error when run with
                            "-fp_trap -start_in_debugger".

                            Backtrace for this error:
                            *** unknown floating point error occurred ***
                            [2]PETSC ERROR: The specific exception can
be determined by running in a debugger. When the
                            [2]PETSC ERROR: debugger traps the signal,
                            the exception can be found with
                            fetestexcept(0x3d)
[2]PETSC ERROR: cinfrt_dg(i1),diff(ic,idim)
                            1.0250235986806329E-008
                             8.6178408169776945E-317
                            where the result is a bitwise OR of the
                            following flags:
                            [2]PETSC ERROR: FE_INVALID=0x1
                            FE_DIVBYZERO=0x4 FE_OVERFLOW=0x8
                            FE_UNDERFLOW=0x10 FE_INEXACT=0x20
                            [2]PETSC ERROR: Try option -start_in_debugger
                            [2]PETSC ERROR: likely location of problem
                            given in stack below

                            Thanks,

                            Danyang

                            On 15-04-24 01:54 PM, Danyang Su wrote:

                                On 15-04-24 01:23 PM, Satish Balay wrote:

c 4 1.0976214263087059E-067

                                    I don't think this number can be
                                    stored in a real*4.

                                    Satish

                                Thanks, Satish. It is caused by this
                                number.

                                    On Fri, 24 Apr 2015, Danyang Su wrote:


                                        On 15-04-24 11:12 AM, Barry
                                        Smith wrote:

                                                On Apr 24, 2015, at
                                                1:05 PM, Danyang Su
                                                <[email protected]
                                                <mailto:[email protected]>>
                                                  wrote:

                                                Hi All,

                                                One of my case crashes
                                                because of floating
                                                point exception when
                                                using 4
                                                processors, as shown
                                                below. But if I run
                                                this case with 1
                                                processor, it
                                                works fine. I have
                                                tested the codes with
                                                around 100 cases up to 768
                                                processors, all other
                                                cases work fine. I
                                                just wonder if this
                                                kind of error
                                                is caused because of
                                                NaN in jacobi matrix,
                                                RHS or preconditioner?

                                                 Yes, almost for sure
                                            it is one of these places.

                                                 First run the bad
                                            case with -fp_trap  if all
                                            goes well you'll see the
                                            function where the FPE is
                                            generated. Then run also
                                            with -start_in_debugger
                                            and
                                            type cont in all four
                                            debugger windows. When the
                                            FPE happens the debugger
                                            should stop showing
                                            exactly where the FPE happens.

                                                Barry

                                        Hi Barry,

                                        If run with -fp_trap
                                        -start_in_debugger, I got the
                                        following error

                                        [0]PETSC ERROR: *** unknown
                                        floating point error occurred ***
                                        [0]PETSC ERROR: The specific
                                        exception can be determined by
                                        running in a
                                        debugger.  When the
                                        [0]PETSC ERROR: debugger traps
                                        the signal, the exception can
                                        be found with
                                        fetestexcept(0x3d)
                                        [0]PETSC ERROR: where the
                                        result is a bitwise OR of the
                                        following flags:
                                        [0]PETSC ERROR: FE_INVALID=0x1
                                        FE_DIVBYZERO=0x4 FE_OVERFLOW=0x8
                                        FE_UNDERFLOW=0x10 FE_INEXACT=0x20
                                        [0]PETSC ERROR: Try option
                                        -start_in_debugger
                                        [0]PETSC ERROR: likely
                                        location of problem given in
                                        stack below
                                        [0]PETSC ERROR:
                                        --------------------- Stack Frames
                                        ------------------------------------
                                        [0]PETSC ERROR: Note: The
                                        EXACT line numbers in the
                                        stack are not available,
                                        [0]PETSC ERROR:       INSTEAD
                                        the line number of the start
                                        of the function
                                        [0]PETSC ERROR:       is given.
                                        [0]PETSC ERROR: [0]
                                        PetscDefaultFPTrap line 379
                                        
/home/dsu/Soft/PETSc/petsc-3.5.2/src/sys/error/fp.c
                                        [0]PETSC ERROR: User provided
                                        function() line 0 in Unknown
                                        file trapped
                                        floating point error

                                        Program received signal
                                        SIGABRT: Process abort signal.

                                        Backtrace for this error:
                                        #0  0x7F4FEAB1C7D7
                                        #1  0x7F4FEAB1CDDE
                                        #2  0x7F4FE9E1AD3F
                                        #3  0x7F4FE9E1ACC9
                                        #4  0x7F4FE9E1E0D7
                                        #5  0x7F4FEB0B6DCB
                                        #6  0x7F4FEB0B1825
                                        #7  0x7F4FEB0B817F
                                        #8  0x7F4FE9E1AD3F
                                        #9  0x6972C8 in tprfrtlc_ at
                                        tprfrtlc.F90:2393
                                        (discriminator 3)
                                        #10  0x4C6C87 in gcreact_ at
                                        gcreact.F90:678
                                        #11  0x707E19 in initicrt_ at
                                        initicrt.F90:589
                                        #12  0x4F42D0 in initprob_ at
                                        initprob.F90:430
                                        #13  0x5AAF72 in driver_pc at
                                        driver_pc.F90:438

                                        I checked the code at
                                        tprfrtlc.F90:2393,

realbuffer_gb(1:nvars) =
                                        (/time,(c(ic),ic=1,nc-1),     &
                                        (cx(ix),ix=1,nxout)/)

                                        All the values (time, c, cx)
                                        are reasonable, as shown
                                        below. The only
                                        possibility is that
                                        realbuffer_gb is in declared
                                        as real*4 if using sing
                                        precision output while time,
                                        c, cx are declared in real*8.
                                        I have a lot of
                                        similar data conversion from
                                        real*8 to real*4 output, other
                                        code does not
                                        return error.

                                          time   0.0000000000000000
                                          c           1
                                         9.9999999999999995E-008
                                          c           2
                                         3.1555251077549618E-003
                                          c           3
                                         7.1657814842179362E-008
                                          c           4
                                         1.0976214263087059E-067
                                          c           5
                                         5.2879822292305797E-004
                                          c           6
                                         9.9999999999999964E-005
                                          c           7
                                         6.4055731968811337E-005
                                          c           8
                                         3.4607572892578404E-020
                                          cx           1
                                         3.4376650636008101E-005
                                          cx           2
                                         7.3989678854017763E-012
                                          cx           3
                                         9.5317170613607207E-012
                                          cx           4
                                         2.2344525794718353E-015
                                          cx           5
                                         3.0624685689695889E-008
                                          cx           6
                                         1.0046157902783967E-007
                                          cx           7
                                         1.5320169154914984E-004
                                          cx           8
                                         8.6930292776346176E-014
                                          cx           9
                                         3.5944267559348721E-005
                                          cx          10
                                         3.0072645866951157E-018
                                          cx          11
                                         2.3592486321095017E-013

                                        Thanks,

                                        Danyang


                                                I can check all the
                                                entries of jacobi
                                                matrix to see if the
                                                value is valid,
                                                but this seems not a
                                                good idea as it takes
                                                a long time to reach this
                                                point. If I restart
                                                the simulation from a
                                                specified time (e.g.,
                                                7.685 in
                                                this case), then the
                                                error does not occur.

                                                Would you please give
                                                me any suggestion on
                                                debugging this case?

                                                Thanks and Regards,

                                                Danyang


                                                timestep:    2730
time: 7.665E+00 years delt: 1.000E-02 years
                                                iter: 1
                                                timestep:    max.sia:
                                                0.000E+00 tol.sia:
                                                0.000E+00
                                                timestep:    2731
time: 7.675E+00 years delt: 1.000E-02 years
                                                iter: 1
                                                timestep:    max.sia:
                                                0.000E+00 tol.sia:
                                                0.000E+00
                                                timestep:    2732
time: 7.685E+00 years delt: 1.000E-02 years
                                                iter: 1
                                                timestep:    max.sia:
                                                0.000E+00 tol.sia:
                                                0.000E+00
                                                timestep:    2733
time: 7.695E+00 years delt: 1.000E-02 years
                                                iter: 1
                                                timestep:    max.sia:
                                                0.000E+00 tol.sia:
                                                0.000E+00
                                                timestep:    2734
time: 7.705E+00 years delt: 1.000E-02 years
                                                iter: 1
                                                timestep:    max.sia:
                                                0.000E+00 tol.sia:
                                                0.000E+00
                                                Reduce time step for
                                                reactive transport
                                                timestep:    2734
time: 7.700E+00 years delt: 5.000E-03 years
                                                iter: 1
                                                timestep:    max.sia:
                                                0.000E+00 tol.sia:
                                                0.000E+00
                                                Reduce time step for
                                                reactive transport
                                                timestep:    2734
time: 7.697E+00 years delt: 2.500E-03 years
                                                iter: 1
                                                timestep:    max.sia:
                                                0.000E+00 tol.sia:
                                                0.000E+00
                                                [1]PETSC ERROR:
                                                ---------------------
                                                Error Message
                                                
--------------------------------------------------------------
                                                [1]PETSC ERROR:
                                                Floating point exception
                                                [2]PETSC ERROR:
                                                ---------------------
                                                Error Message
                                                
--------------------------------------------------------------
                                                [2]PETSC ERROR:
                                                Floating point exception
                                                [2]PETSC ERROR: Vec
                                                entry at local
                                                location 0 is
                                                not-a-number or infinite
                                                at end of function:
                                                Parameter number 3
                                                [2]PETSC ERROR: See
                                                
http://www.mcs.anl.gov/petsc/documentation/faq.html

                                                for trouble shooting.
                                                [2]PETSC ERROR: Petsc
                                                Release Version 3.5.2,
                                                Sep, 08, 2014
                                                [2]PETSC ERROR:
                                                [1]PETSC ERROR: Vec
                                                entry at local
                                                location 0 is
                                                not-a-number or
                                                infinite at end of
                                                function: Parameter
                                                number 3
                                                [1]PETSC ERROR: See
                                                
http://www.mcs.anl.gov/petsc/documentation/faq.html

                                                for trouble shooting.
                                                [1]PETSC ERROR: Petsc
                                                Release Version 3.5.2,
                                                Sep, 08, 2014
                                                [1]PETSC ERROR:
                                                ../min3p_thcm_petsc_dbg on
                                                a linux-gnu-dbg named
                                                nwmop by
                                                dsu Thu Apr 23
                                                15:38:52 2015
                                                [1]PETSC ERROR:
                                                Configure options
                                                PETSC_ARCH=linux-gnu-dbg
                                                --with-cc=gcc
                                                --with-cxx=g++
                                                --with-fc=gfortran
                                                --download-fblaslapack
                                                --download-mpich
                                                --download-mumps
                                                --download-hypre
                                                --download-superlu_dist 
--download-metis
                                                --download-parmetis
                                                --download-scalapack
                                                [1]PETSC ERROR: #1
                                                VecValidValues() line
                                                34 in
                                                
/home/dsu/Soft/PETSc/petsc-3.5.2/src/vec/vec/interface/rvector.c
                                                ../min3p_thcm_petsc_dbg on
                                                a linux-gnu-dbg named
                                                nwmop by dsu Thu Apr 23
                                                15:38:52 2015
                                                [2]PETSC ERROR:
                                                Configure options
                                                PETSC_ARCH=linux-gnu-dbg
                                                --with-cc=gcc
                                                --with-cxx=g++
                                                --with-fc=gfortran
                                                --download-fblaslapack
                                                --download-mpich
                                                --download-mumps
                                                --download-hypre
                                                --download-superlu_dist 
--download-metis
                                                --download-parmetis
                                                --download-scalapack
                                                [2]PETSC ERROR: #1
                                                VecValidValues() line
                                                34 in
                                                
/home/dsu/Soft/PETSc/petsc-3.5.2/src/vec/vec/interface/rvector.c
                                                [2]PETSC ERROR:
                                                [1]PETSC ERROR: #2
                                                PCApply() line 442 in
                                                
/home/dsu/Soft/PETSc/petsc-3.5.2/src/ksp/pc/interface/precon.c
                                                [1]PETSC ERROR: #2
                                                PCApply() line 442 in
                                                
/home/dsu/Soft/PETSc/petsc-3.5.2/src/ksp/pc/interface/precon.c
                                                [2]PETSC ERROR: #3
                                                KSP_PCApply() line 230 in
                                                
/home/dsu/Soft/PETSc/petsc-3.5.2/include/petsc-private/kspimpl.h
                                                #3 KSP_PCApply() line
                                                230 in
                                                
/home/dsu/Soft/PETSc/petsc-3.5.2/include/petsc-private/kspimpl.h
                                                [1]PETSC ERROR: #4
                                                KSPInitialResidual()
                                                line 63 in
                                                
/home/dsu/Soft/PETSc/petsc-3.5.2/src/ksp/ksp/interface/itres.c
                                                [2]PETSC ERROR: #4
                                                KSPInitialResidual()
                                                line 63 in
                                                
/home/dsu/Soft/PETSc/petsc-3.5.2/src/ksp/ksp/interface/itres.c
                                                [1]PETSC ERROR: #5
                                                KSPSolve_GMRES() line
                                                234 in
                                                
/home/dsu/Soft/PETSc/petsc-3.5.2/src/ksp/ksp/impls/gmres/gmres.c
                                                [2]PETSC ERROR: #5
                                                KSPSolve_GMRES() line
                                                234 in
                                                
/home/dsu/Soft/PETSc/petsc-3.5.2/src/ksp/ksp/impls/gmres/gmres.c
                                                [2]PETSC ERROR: #6
                                                KSPSolve() line 459 in
                                                
/home/dsu/Soft/PETSc/petsc-3.5.2/src/ksp/ksp/interface/itfunc.c
                                                [1]PETSC ERROR: #6
                                                KSPSolve() line 459 in
                                                
/home/dsu/Soft/PETSc/petsc-3.5.2/src/ksp/ksp/interface/itfunc.c
                                                ^C[mpiexec@nwmop]
                                                Sending Ctrl-C to
                                                processes as requested
                                                [mpiexec@nwmop] Press
                                                Ctrl-C again to force
                                                abort





--
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

#if !defined(INCLUDED_PETSCCONF_H)
#define INCLUDED_PETSCCONF_H

#ifndef IS_COLORING_MAX
#define IS_COLORING_MAX 65535
#endif

#ifndef STDC_HEADERS
#define STDC_HEADERS 1
#endif

#ifndef MPIU_COLORING_VALUE
#define MPIU_COLORING_VALUE MPI_UNSIGNED_SHORT
#endif

#ifndef PETSC_UINTPTR_T
#define PETSC_UINTPTR_T uintptr_t
#endif

#ifndef PETSC_HAVE_PTHREAD
#define PETSC_HAVE_PTHREAD 1
#endif

#ifndef PETSC_HAVE_SSL
#define PETSC_HAVE_SSL 1
#endif

#ifndef PETSC_DEPRECATED
#define PETSC_DEPRECATED(why) __attribute((deprecated))
#endif

#ifndef PETSC_REPLACE_DIR_SEPARATOR
#define PETSC_REPLACE_DIR_SEPARATOR '\\'
#endif

#ifndef PETSC_HAVE_SO_REUSEADDR
#define PETSC_HAVE_SO_REUSEADDR 1
#endif

#ifndef PETSC_HAVE_MPI
#define PETSC_HAVE_MPI 1
#endif

#ifndef PETSC_PREFETCH_HINT_T2
#define PETSC_PREFETCH_HINT_T2 _MM_HINT_T2
#endif

#ifndef PETSC_PREFETCH_HINT_T0
#define PETSC_PREFETCH_HINT_T0 _MM_HINT_T0
#endif

#ifndef PETSC_PREFETCH_HINT_T1
#define PETSC_PREFETCH_HINT_T1 _MM_HINT_T1
#endif

#ifndef PETSC_USE_SOCKET_VIEWER
#define PETSC_USE_SOCKET_VIEWER 1
#endif

#ifndef PETSC_DIR
#define PETSC_DIR "/home/dsu/Soft/PETSc/petsc-3.5.2"
#endif

#ifndef PETSC_HAVE_HYPRE
#define PETSC_HAVE_HYPRE 1
#endif

#ifndef PETSC_LIB_DIR
#define PETSC_LIB_DIR "/home/dsu/Soft/PETSc/petsc-3.5.2/linux-gnu-dbg/lib"
#endif

#ifndef PETSC_HAVE_SUPERLU_DIST
#define PETSC_HAVE_SUPERLU_DIST 1
#endif

#ifndef PETSC_HAVE_PARMETIS
#define PETSC_HAVE_PARMETIS 1
#endif

#ifndef PETSC_HAVE_FORTRAN
#define PETSC_HAVE_FORTRAN 1
#endif

#ifndef PETSC_USE_ISATTY
#define PETSC_USE_ISATTY 1
#endif

#ifndef PETSC_SLSUFFIX
#define PETSC_SLSUFFIX "so"
#endif

#ifndef PETSC_FUNCTION_NAME_CXX
#define PETSC_FUNCTION_NAME_CXX __func__
#endif

#ifndef PETSC_HAVE_MUMPS
#define PETSC_HAVE_MUMPS 1
#endif

#ifndef PETSC_HAVE_FBLASLAPACK
#define PETSC_HAVE_FBLASLAPACK 1
#endif

#ifndef PETSC_HAVE_ATOLL
#define PETSC_HAVE_ATOLL 1
#endif

#ifndef PETSC_HAVE_DOUBLE_ALIGN_MALLOC
#define PETSC_HAVE_DOUBLE_ALIGN_MALLOC 1
#endif

#ifndef PETSC_UNUSED
#define PETSC_UNUSED __attribute((unused))
#endif

#ifndef PETSC_FUNCTION_NAME_C
#define PETSC_FUNCTION_NAME_C __func__
#endif

#ifndef PETSC_HAVE_VALGRIND
#define PETSC_HAVE_VALGRIND 1
#endif

#ifndef PETSC_USE_SINGLE_LIBRARY
#define PETSC_USE_SINGLE_LIBRARY 1
#endif

#ifndef PETSC_HAVE_BUILTIN_EXPECT
#define PETSC_HAVE_BUILTIN_EXPECT 1
#endif

#ifndef PETSC_HAVE_METIS
#define PETSC_HAVE_METIS 1
#endif

#ifndef PETSC_DIR_SEPARATOR
#define PETSC_DIR_SEPARATOR '/'
#endif

#ifndef PETSC_PATH_SEPARATOR
#define PETSC_PATH_SEPARATOR ':'
#endif

#ifndef PETSC_HAVE_XMMINTRIN_H
#define PETSC_HAVE_XMMINTRIN_H 1
#endif

#ifndef PETSC_PREFETCH_HINT_NTA
#define PETSC_PREFETCH_HINT_NTA _MM_HINT_NTA
#endif

#ifndef PETSC_Prefetch
#define PETSC_Prefetch(a,b,c) _mm_prefetch((const char*)(a),(c))
#endif

#ifndef PETSC_HAVE_BLASLAPACK
#define PETSC_HAVE_BLASLAPACK 1
#endif

#ifndef PETSC_HAVE_GZIP
#define PETSC_HAVE_GZIP 1
#endif

#ifndef PETSC_HAVE_STRING_H
#define PETSC_HAVE_STRING_H 1
#endif

#ifndef PETSC_HAVE_SYS_TYPES_H
#define PETSC_HAVE_SYS_TYPES_H 1
#endif

#ifndef PETSC_HAVE_ENDIAN_H
#define PETSC_HAVE_ENDIAN_H 1
#endif

#ifndef PETSC_HAVE_SYS_PROCFS_H
#define PETSC_HAVE_SYS_PROCFS_H 1
#endif

#ifndef PETSC_HAVE_DLFCN_H
#define PETSC_HAVE_DLFCN_H 1
#endif

#ifndef PETSC_HAVE_SCHED_H
#define PETSC_HAVE_SCHED_H 1
#endif

#ifndef PETSC_HAVE_STDINT_H
#define PETSC_HAVE_STDINT_H 1
#endif

#ifndef PETSC_HAVE_LINUX_KERNEL_H
#define PETSC_HAVE_LINUX_KERNEL_H 1
#endif

#ifndef PETSC_HAVE_TIME_H
#define PETSC_HAVE_TIME_H 1
#endif

#ifndef PETSC_HAVE_MATH_H
#define PETSC_HAVE_MATH_H 1
#endif

#ifndef PETSC_TIME_WITH_SYS_TIME
#define PETSC_TIME_WITH_SYS_TIME 1
#endif

#ifndef PETSC_HAVE_SYS_PARAM_H
#define PETSC_HAVE_SYS_PARAM_H 1
#endif

#ifndef PETSC_HAVE_PTHREAD_H
#define PETSC_HAVE_PTHREAD_H 1
#endif

#ifndef PETSC_HAVE_UNISTD_H
#define PETSC_HAVE_UNISTD_H 1
#endif

#ifndef PETSC_HAVE_STDLIB_H
#define PETSC_HAVE_STDLIB_H 1
#endif

#ifndef PETSC_HAVE_SYS_WAIT_H
#define PETSC_HAVE_SYS_WAIT_H 1
#endif

#ifndef PETSC_HAVE_SETJMP_H
#define PETSC_HAVE_SETJMP_H 1
#endif

#ifndef PETSC_HAVE_LIMITS_H
#define PETSC_HAVE_LIMITS_H 1
#endif

#ifndef PETSC_HAVE_SYS_UTSNAME_H
#define PETSC_HAVE_SYS_UTSNAME_H 1
#endif

#ifndef PETSC_HAVE_NETINET_IN_H
#define PETSC_HAVE_NETINET_IN_H 1
#endif

#ifndef PETSC_HAVE_SYS_SOCKET_H
#define PETSC_HAVE_SYS_SOCKET_H 1
#endif

#ifndef PETSC_HAVE_FLOAT_H
#define PETSC_HAVE_FLOAT_H 1
#endif

#ifndef PETSC_HAVE_SEARCH_H
#define PETSC_HAVE_SEARCH_H 1
#endif

#ifndef PETSC_HAVE_SYS_RESOURCE_H
#define PETSC_HAVE_SYS_RESOURCE_H 1
#endif

#ifndef PETSC_HAVE_SYS_TIMES_H
#define PETSC_HAVE_SYS_TIMES_H 1
#endif

#ifndef PETSC_HAVE_NETDB_H
#define PETSC_HAVE_NETDB_H 1
#endif

#ifndef PETSC_HAVE_MALLOC_H
#define PETSC_HAVE_MALLOC_H 1
#endif

#ifndef PETSC_HAVE_PWD_H
#define PETSC_HAVE_PWD_H 1
#endif

#ifndef PETSC_HAVE_FCNTL_H
#define PETSC_HAVE_FCNTL_H 1
#endif

#ifndef PETSC_HAVE_STRINGS_H
#define PETSC_HAVE_STRINGS_H 1
#endif

#ifndef PETSC_HAVE_SYS_SYSINFO_H
#define PETSC_HAVE_SYS_SYSINFO_H 1
#endif

#ifndef PETSC_HAVE_SYS_TIME_H
#define PETSC_HAVE_SYS_TIME_H 1
#endif

#ifndef PETSC_USING_F90
#define PETSC_USING_F90 1
#endif

#ifndef PETSC_USING_F2003
#define PETSC_USING_F2003 1
#endif

#ifndef PETSC_HAVE_RTLD_NOW
#define PETSC_HAVE_RTLD_NOW 1
#endif

#ifndef PETSC_HAVE_RTLD_LOCAL
#define PETSC_HAVE_RTLD_LOCAL 1
#endif

#ifndef PETSC_HAVE_RTLD_LAZY
#define PETSC_HAVE_RTLD_LAZY 1
#endif

#ifndef PETSC_C_STATIC_INLINE
#define PETSC_C_STATIC_INLINE static inline
#endif

#ifndef PETSC_HAVE_FORTRAN_UNDERSCORE
#define PETSC_HAVE_FORTRAN_UNDERSCORE 1
#endif

#ifndef PETSC_HAVE_CXX_NAMESPACE
#define PETSC_HAVE_CXX_NAMESPACE 1
#endif

#ifndef PETSC_HAVE_RTLD_GLOBAL
#define PETSC_HAVE_RTLD_GLOBAL 1
#endif

#ifndef PETSC_C_RESTRICT
#define PETSC_C_RESTRICT  __restrict__
#endif

#ifndef PETSC_CXX_RESTRICT
#define PETSC_CXX_RESTRICT  __restrict__
#endif

#ifndef PETSC_CXX_STATIC_INLINE
#define PETSC_CXX_STATIC_INLINE static inline
#endif

#ifndef PETSC_HAVE_LIBZ
#define PETSC_HAVE_LIBZ 1
#endif

#ifndef PETSC_HAVE_LIBDL
#define PETSC_HAVE_LIBDL 1
#endif

#ifndef PETSC_HAVE_LIBGFORTRAN
#define PETSC_HAVE_LIBGFORTRAN 1
#endif

#ifndef PETSC_HAVE_LIBSCALAPACK
#define PETSC_HAVE_LIBSCALAPACK 1
#endif

#ifndef PETSC_HAVE_LIBMETIS
#define PETSC_HAVE_LIBMETIS 1
#endif

#ifndef PETSC_HAVE_LIBCRYPTO
#define PETSC_HAVE_LIBCRYPTO 1
#endif

#ifndef PETSC_HAVE_LIBM
#define PETSC_HAVE_LIBM 1
#endif

#ifndef PETSC_HAVE_LIBDMUMPS
#define PETSC_HAVE_LIBDMUMPS 1
#endif

#ifndef PETSC_HAVE_LIBMUMPS_COMMON
#define PETSC_HAVE_LIBMUMPS_COMMON 1
#endif

#ifndef PETSC_HAVE_LIBPTHREAD
#define PETSC_HAVE_LIBPTHREAD 1
#endif

#ifndef PETSC_HAVE_LIBMPICHCXX
#define PETSC_HAVE_LIBMPICHCXX 1
#endif

#ifndef PETSC_HAVE_LIBPARMETIS
#define PETSC_HAVE_LIBPARMETIS 1
#endif

#ifndef PETSC_HAVE_LIBFBLAS
#define PETSC_HAVE_LIBFBLAS 1
#endif

#ifndef PETSC_HAVE_LIBSUPERLU_DIST_3
#define PETSC_HAVE_LIBSUPERLU_DIST_3 1
#endif

#ifndef PETSC_HAVE_LIBZMUMPS
#define PETSC_HAVE_LIBZMUMPS 1
#endif

#ifndef PETSC_HAVE_LIBSTDC__
#define PETSC_HAVE_LIBSTDC__ 1
#endif

#ifndef PETSC_HAVE_FENV_H
#define PETSC_HAVE_FENV_H 1
#endif

#ifndef PETSC_HAVE_LIBHYPRE
#define PETSC_HAVE_LIBHYPRE 1
#endif

#ifndef PETSC_HAVE_LIBPORD
#define PETSC_HAVE_LIBPORD 1
#endif

#ifndef PETSC_HAVE_LIBSMUMPS
#define PETSC_HAVE_LIBSMUMPS 1
#endif

#ifndef PETSC_HAVE_LIBMPICHF90
#define PETSC_HAVE_LIBMPICHF90 1
#endif

#ifndef PETSC_HAVE_LIBCMUMPS
#define PETSC_HAVE_LIBCMUMPS 1
#endif

#ifndef PETSC_HAVE_LIBFLAPACK
#define PETSC_HAVE_LIBFLAPACK 1
#endif

#ifndef PETSC_HAVE_ERF
#define PETSC_HAVE_ERF 1
#endif

#ifndef PETSC_HAVE_LIBSSL
#define PETSC_HAVE_LIBSSL 1
#endif

#ifndef PETSC_HAVE_LIBQUADMATH
#define PETSC_HAVE_LIBQUADMATH 1
#endif

#ifndef PETSC_HAVE_TGAMMA
#define PETSC_HAVE_TGAMMA 1
#endif

#ifndef PETSC_ARCH
#define PETSC_ARCH "linux-gnu-dbg"
#endif

#ifndef PETSC_CLANGUAGE_C
#define PETSC_CLANGUAGE_C 1
#endif

#ifndef PETSC_USE_ERRORCHECKING
#define PETSC_USE_ERRORCHECKING 1
#endif

#ifndef PETSC_MISSING_DREAL
#define PETSC_MISSING_DREAL 1
#endif

#ifndef PETSC_SIZEOF_MPI_COMM
#define PETSC_SIZEOF_MPI_COMM 4
#endif

#ifndef PETSC_BITS_PER_BYTE
#define PETSC_BITS_PER_BYTE 8
#endif

#ifndef PETSC_SIZEOF_MPI_FINT
#define PETSC_SIZEOF_MPI_FINT 4
#endif

#ifndef PETSC_SIZEOF_VOID_P
#define PETSC_SIZEOF_VOID_P 8
#endif

#ifndef PETSC_RETSIGTYPE
#define PETSC_RETSIGTYPE void
#endif

#ifndef PETSC_HAVE_CXX_COMPLEX
#define PETSC_HAVE_CXX_COMPLEX 1
#endif

#ifndef PETSC_SIZEOF_LONG
#define PETSC_SIZEOF_LONG 8
#endif

#ifndef PETSC_USE_FORTRANKIND
#define PETSC_USE_FORTRANKIND 1
#endif

#ifndef PETSC_SIZEOF_SIZE_T
#define PETSC_SIZEOF_SIZE_T 8
#endif

#ifndef PETSC_HAVE_SIGINFO_T
#define PETSC_HAVE_SIGINFO_T 1
#endif

#ifndef PETSC_SIZEOF_CHAR
#define PETSC_SIZEOF_CHAR 1
#endif

#ifndef PETSC_SIZEOF_DOUBLE
#define PETSC_SIZEOF_DOUBLE 8
#endif

#ifndef PETSC_SIZEOF_FLOAT
#define PETSC_SIZEOF_FLOAT 4
#endif

#ifndef PETSC_HAVE_C99_COMPLEX
#define PETSC_HAVE_C99_COMPLEX 1
#endif

#ifndef PETSC_SIZEOF_INT
#define PETSC_SIZEOF_INT 4
#endif

#ifndef PETSC_SIZEOF_LONG_LONG
#define PETSC_SIZEOF_LONG_LONG 8
#endif

#ifndef PETSC_SIZEOF_SHORT
#define PETSC_SIZEOF_SHORT 2
#endif

#ifndef PETSC_HAVE_STRCASECMP
#define PETSC_HAVE_STRCASECMP 1
#endif

#ifndef PETSC_HAVE_GET_NPROCS
#define PETSC_HAVE_GET_NPROCS 1
#endif

#ifndef PETSC_HAVE_POPEN
#define PETSC_HAVE_POPEN 1
#endif

#ifndef PETSC_HAVE_SIGSET
#define PETSC_HAVE_SIGSET 1
#endif

#ifndef PETSC_HAVE_GETWD
#define PETSC_HAVE_GETWD 1
#endif

#ifndef PETSC_HAVE_VSNPRINTF
#define PETSC_HAVE_VSNPRINTF 1
#endif

#ifndef PETSC_HAVE_TIMES
#define PETSC_HAVE_TIMES 1
#endif

#ifndef PETSC_HAVE_DLSYM
#define PETSC_HAVE_DLSYM 1
#endif

#ifndef PETSC_HAVE_SNPRINTF
#define PETSC_HAVE_SNPRINTF 1
#endif

#ifndef PETSC_HAVE_GETHOSTBYNAME
#define PETSC_HAVE_GETHOSTBYNAME 1
#endif

#ifndef PETSC_HAVE_GETCWD
#define PETSC_HAVE_GETCWD 1
#endif

#ifndef PETSC_HAVE_DLERROR
#define PETSC_HAVE_DLERROR 1
#endif

#ifndef PETSC_HAVE_FORK
#define PETSC_HAVE_FORK 1
#endif

#ifndef PETSC_HAVE_RAND
#define PETSC_HAVE_RAND 1
#endif

#ifndef PETSC_HAVE_GETTIMEOFDAY
#define PETSC_HAVE_GETTIMEOFDAY 1
#endif

#ifndef PETSC_HAVE_DLCLOSE
#define PETSC_HAVE_DLCLOSE 1
#endif

#ifndef PETSC_HAVE_UNAME
#define PETSC_HAVE_UNAME 1
#endif

#ifndef PETSC_HAVE_GETHOSTNAME
#define PETSC_HAVE_GETHOSTNAME 1
#endif

#ifndef PETSC_HAVE_MKSTEMP
#define PETSC_HAVE_MKSTEMP 1
#endif

#ifndef PETSC_HAVE_SIGACTION
#define PETSC_HAVE_SIGACTION 1
#endif

#ifndef PETSC_HAVE_DRAND48
#define PETSC_HAVE_DRAND48 1
#endif

#ifndef PETSC_HAVE_MEMALIGN
#define PETSC_HAVE_MEMALIGN 1
#endif

#ifndef PETSC_HAVE_VA_COPY
#define PETSC_HAVE_VA_COPY 1
#endif

#ifndef PETSC_HAVE_CLOCK
#define PETSC_HAVE_CLOCK 1
#endif

#ifndef PETSC_HAVE_ACCESS
#define PETSC_HAVE_ACCESS 1
#endif

#ifndef PETSC_HAVE_SIGNAL
#define PETSC_HAVE_SIGNAL 1
#endif

#ifndef PETSC_HAVE_USLEEP
#define PETSC_HAVE_USLEEP 1
#endif

#ifndef PETSC_HAVE_GETRUSAGE
#define PETSC_HAVE_GETRUSAGE 1
#endif

#ifndef PETSC_HAVE_VFPRINTF
#define PETSC_HAVE_VFPRINTF 1
#endif

#ifndef PETSC_HAVE_NANOSLEEP
#define PETSC_HAVE_NANOSLEEP 1
#endif

#ifndef PETSC_HAVE_GETDOMAINNAME
#define PETSC_HAVE_GETDOMAINNAME 1
#endif

#ifndef PETSC_HAVE_TIME
#define PETSC_HAVE_TIME 1
#endif

#ifndef PETSC_HAVE_LSEEK
#define PETSC_HAVE_LSEEK 1
#endif

#ifndef PETSC_HAVE_SOCKET
#define PETSC_HAVE_SOCKET 1
#endif

#ifndef PETSC_HAVE_SYSINFO
#define PETSC_HAVE_SYSINFO 1
#endif

#ifndef PETSC_HAVE_READLINK
#define PETSC_HAVE_READLINK 1
#endif

#ifndef PETSC_HAVE_REALPATH
#define PETSC_HAVE_REALPATH 1
#endif

#ifndef PETSC_HAVE_DLOPEN
#define PETSC_HAVE_DLOPEN 1
#endif

#ifndef PETSC_HAVE_MEMMOVE
#define PETSC_HAVE_MEMMOVE 1
#endif

#ifndef PETSC_HAVE__GFORTRAN_IARGC
#define PETSC_HAVE__GFORTRAN_IARGC 1
#endif

#ifndef PETSC_SIGNAL_CAST
#define PETSC_SIGNAL_CAST  
#endif

#ifndef PETSC_HAVE_SLEEP
#define PETSC_HAVE_SLEEP 1
#endif

#ifndef PETSC_HAVE_VPRINTF
#define PETSC_HAVE_VPRINTF 1
#endif

#ifndef PETSC_HAVE_BZERO
#define PETSC_HAVE_BZERO 1
#endif

#ifndef PETSC_HAVE_GETPAGESIZE
#define PETSC_HAVE_GETPAGESIZE 1
#endif

#ifndef PETSC_WRITE_MEMORY_BARRIER
#define PETSC_WRITE_MEMORY_BARRIER() asm volatile("sfence":::"memory")
#endif

#ifndef PETSC_MEMORY_BARRIER
#define PETSC_MEMORY_BARRIER() asm volatile("mfence":::"memory")
#endif

#ifndef PETSC_READ_MEMORY_BARRIER
#define PETSC_READ_MEMORY_BARRIER() asm volatile("lfence":::"memory")
#endif

#ifndef PETSC_CPU_RELAX
#define PETSC_CPU_RELAX() asm volatile("rep; nop" ::: "memory")
#endif

#ifndef PETSC_HAVE_MPI_F90MODULE
#define PETSC_HAVE_MPI_F90MODULE 1
#endif

#ifndef PETSC_HAVE_MPI_IALLREDUCE
#define PETSC_HAVE_MPI_IALLREDUCE 1
#endif

#ifndef PETSC_HAVE_MPI_IN_PLACE
#define PETSC_HAVE_MPI_IN_PLACE 1
#endif

#ifndef PETSC_HAVE_MPI_COMM_C2F
#define PETSC_HAVE_MPI_COMM_C2F 1
#endif

#ifndef PETSC_HAVE_MPI_COMBINER_CONTIGUOUS
#define PETSC_HAVE_MPI_COMBINER_CONTIGUOUS 1
#endif

#ifndef PETSC_HAVE_MPI_INT64_T
#define PETSC_HAVE_MPI_INT64_T 1
#endif

#ifndef PETSC_HAVE_MPI_TYPE_GET_EXTENT
#define PETSC_HAVE_MPI_TYPE_GET_EXTENT 1
#endif

#ifndef PETSC_HAVE_MPI_WIN_CREATE
#define PETSC_HAVE_MPI_WIN_CREATE 1
#endif

#ifndef PETSC_HAVE_MPI_TYPE_DUP
#define PETSC_HAVE_MPI_TYPE_DUP 1
#endif

#ifndef PETSC_HAVE_MPI_INIT_THREAD
#define PETSC_HAVE_MPI_INIT_THREAD 1
#endif

#ifndef PETSC_HAVE_MPI_LONG_DOUBLE
#define PETSC_HAVE_MPI_LONG_DOUBLE 1
#endif

#ifndef PETSC_HAVE_MPI_COMM_F2C
#define PETSC_HAVE_MPI_COMM_F2C 1
#endif

#ifndef PETSC_HAVE_MPI_TYPE_GET_ENVELOPE
#define PETSC_HAVE_MPI_TYPE_GET_ENVELOPE 1
#endif

#ifndef PETSC_HAVE_MPICH_CH3_SOCK
#define PETSC_HAVE_MPICH_CH3_SOCK 1
#endif

#ifndef PETSC_HAVE_MPI_COMBINER_DUP
#define PETSC_HAVE_MPI_COMBINER_DUP 1
#endif

#ifndef PETSC_HAVE_MPICH_NUMVERSION
#define PETSC_HAVE_MPICH_NUMVERSION 30100300
#endif

#ifndef PETSC_HAVE_MPIIO
#define PETSC_HAVE_MPIIO 1
#endif

#ifndef PETSC_HAVE_MPI_COMM_SPAWN
#define PETSC_HAVE_MPI_COMM_SPAWN 1
#endif

#ifndef PETSC_HAVE_MPICH_CH3_SOCK_FIXED_NBC_PROGRESS
#define PETSC_HAVE_MPICH_CH3_SOCK_FIXED_NBC_PROGRESS 1
#endif

#ifndef PETSC_HAVE_MPI_FINT
#define PETSC_HAVE_MPI_FINT 1
#endif

#ifndef PETSC_HAVE_MPI_IBARRIER
#define PETSC_HAVE_MPI_IBARRIER 1
#endif

#ifndef PETSC_HAVE_MPI_ALLTOALLW
#define PETSC_HAVE_MPI_ALLTOALLW 1
#endif

#ifndef PETSC_HAVE_MPI_REPLACE
#define PETSC_HAVE_MPI_REPLACE 1
#endif

#ifndef PETSC_HAVE_MPI_EXSCAN
#define PETSC_HAVE_MPI_EXSCAN 1
#endif

#ifndef PETSC_HAVE_MPI_C_DOUBLE_COMPLEX
#define PETSC_HAVE_MPI_C_DOUBLE_COMPLEX 1
#endif

#ifndef PETSC_HAVE_MPI_FINALIZED
#define PETSC_HAVE_MPI_FINALIZED 1
#endif

#ifndef PETSC_BLASLAPACK_UNDERSCORE
#define PETSC_BLASLAPACK_UNDERSCORE 1
#endif

#ifndef PETSC_USE_SCALAR_REAL
#define PETSC_USE_SCALAR_REAL 1
#endif

#ifndef PETSC_HAVE_ISINF
#define PETSC_HAVE_ISINF 1
#endif

#ifndef PETSC_HAVE_ISNAN
#define PETSC_HAVE_ISNAN 1
#endif

#ifndef PETSC_USE_REAL_DOUBLE
#define PETSC_USE_REAL_DOUBLE 1
#endif

#ifndef PETSC__GNU_SOURCE
#define PETSC__GNU_SOURCE 1
#endif

#ifndef PETSC__BSD_SOURCE
#define PETSC__BSD_SOURCE 1
#endif

#ifndef PETSC_USE_GDB_DEBUGGER
#define PETSC_USE_GDB_DEBUGGER 1
#endif

#ifndef PETSC_MEMALIGN
#define PETSC_MEMALIGN 16
#endif

#ifndef PETSC_USE_PROC_FOR_SIZE
#define PETSC_USE_PROC_FOR_SIZE 1
#endif

#ifndef PETSC_HAVE_DYNAMIC_LIBRARIES
#define PETSC_HAVE_DYNAMIC_LIBRARIES 1
#endif

#ifndef PETSC_HAVE_SHARED_LIBRARIES
#define PETSC_HAVE_SHARED_LIBRARIES 1
#endif

#ifndef PETSC_USE_SHARED_LIBRARIES
#define PETSC_USE_SHARED_LIBRARIES 1
#endif

#ifndef PETSC_USE_INFO
#define PETSC_USE_INFO 1
#endif

#ifndef PETSC_Alignx
#define PETSC_Alignx(a,b)   
#endif

#ifndef PETSC_USE_BACKWARD_LOOP
#define PETSC_USE_BACKWARD_LOOP 1
#endif

#ifndef PETSC_USE_DEBUG
#define PETSC_USE_DEBUG 1
#endif

#ifndef PETSC_IS_COLOR_VALUE_TYPE_SIZE
#define PETSC_IS_COLOR_VALUE_TYPE_SIZE PETSC_SIZEOF_SHORT
#endif

#ifndef PETSC_USE_LOG
#define PETSC_USE_LOG 1
#endif

#ifndef PETSC_IS_COLOR_VALUE_TYPE
#define PETSC_IS_COLOR_VALUE_TYPE short
#endif

#ifndef PETSC_USE_CTABLE
#define PETSC_USE_CTABLE 1
#endif

#ifndef PETSC_LEVEL1_DCACHE_LINESIZE
#define PETSC_LEVEL1_DCACHE_LINESIZE 64
#endif

#ifndef PETSC_LEVEL1_DCACHE_SIZE
#define PETSC_LEVEL1_DCACHE_SIZE 32768
#endif

#ifndef PETSC_LEVEL1_DCACHE_ASSOC
#define PETSC_LEVEL1_DCACHE_ASSOC 8
#endif

#ifndef PETSC_HAVE_FORTRAN_GET_COMMAND_ARGUMENT
#define PETSC_HAVE_FORTRAN_GET_COMMAND_ARGUMENT 1
#endif

#ifndef PETSC_HAVE_GFORTRAN_IARGC
#define PETSC_HAVE_GFORTRAN_IARGC 1
#endif

#ifndef PETSC_HAVE_SCHED_CPU_SET_T
#define PETSC_HAVE_SCHED_CPU_SET_T 1
#endif

#ifndef PETSC_HAVE_PTHREAD_BARRIER_T
#define PETSC_HAVE_PTHREAD_BARRIER_T 1
#endif

#ifndef PETSC_HAVE_SYS_SYSCTL_H
#define PETSC_HAVE_SYS_SYSCTL_H 1
#endif

#endif

Reply via email to