[petsc-users] Valgrind (invalid read) error with ASM in petsc-dev
Barry Smith
bsmith at mcs.anl.gov
Sun Jun 29 12:56:57 CDT 2014
This is our error. It is harmless, I am fixing it in master now.
Barry
On Jun 29, 2014, at 12:41 PM, Barry Smith <bsmith at mcs.anl.gov> wrote:
>
> Hmm, what code is calling the ISStrideGetInfo(). It is a ISGENERAL so ISStrideGetInfo() shouldn’t get called on it.
>
> Barry
>
> ==22745== Invalid read of size 4
> ==22745== at 0x4231567: ISStrideGetInfo (in /home/stali/petsc-dev/arch-linux2-c-debug/lib/libpetsc.so.3.05.0)
> ==22745== by 0x678C5DF: ???
>
>
> On Jun 29, 2014, at 11:28 AM, Tabrez Ali <stali at geology.wisc.edu> wrote:
>
>> Hello
>>
>> I get the following Valgrind error (below) while using ASM in petsc-dev. No such error occurs with petsc-3.4.x. Any ideas as to what could be wrong?
>>
>> Thanks in advance.
>>
>> Tabrez
>>
>>
>> ==22745== Memcheck, a memory error detector
>> ==22745== Copyright (C) 2002-2011, and GNU GPL'd, by Julian Seward et al.
>> ==22745== Using Valgrind-3.7.0 and LibVEX; rerun with -h for copyright info
>> ==22745== Command: ./defmod -f examples/two_quads_qs.inp -log_summary
>> ==22745==
>> Reading input ...
>> Reading mesh data ...
>> Forming [K] ...
>> Forming RHS ...
>> Setting up solver ...
>> Solving ...
>> ==22745== Invalid read of size 4
>> ==22745== at 0x4231567: ISStrideGetInfo (in /home/stali/petsc-dev/arch-linux2-c-debug/lib/libpetsc.so.3.05.0)
>> ==22745== by 0x678C5DF: ???
>> ==22745== Address 0x678c3ec is 0 bytes after a block of size 12 alloc'd
>> ==22745== at 0x40278A4: memalign (vg_replace_malloc.c:694)
>> ==22745== by 0x40FBE89: PetscMallocAlign (in /home/stali/petsc-dev/arch-linux2-c-debug/lib/libpetsc.so.3.05.0)
>> ==22745== by 0x42288FD: ISCreate_General (in /home/stali/petsc-dev/arch-linux2-c-debug/lib/libpetsc.so.3.05.0)
>> ==22745== by 0x4221494: ISSetType (in /home/stali/petsc-dev/arch-linux2-c-debug/lib/libpetsc.so.3.05.0)
>> ==22745== by 0x4227745: ISCreateGeneral (in /home/stali/petsc-dev/arch-linux2-c-debug/lib/libpetsc.so.3.05.0)
>> ==22745== by 0x45F104F: MatIncreaseOverlap_SeqAIJ (in /home/stali/petsc-dev/arch-linux2-c-debug/lib/libpetsc.so.3.05.0)
>> ==22745== by 0x473B4F2: MatIncreaseOverlap (in /home/stali/petsc-dev/arch-linux2-c-debug/lib/libpetsc.so.3.05.0)
>> ==22745== by 0x4A9CFC0: PCSetUp_ASM (in /home/stali/petsc-dev/arch-linux2-c-debug/lib/libpetsc.so.3.05.0)
>> ==22745== by 0x49BF314: PCSetUp (in /home/stali/petsc-dev/arch-linux2-c-debug/lib/libpetsc.so.3.05.0)
>> ==22745== by 0x4ABAB25: KSPSetUp (in /home/stali/petsc-dev/arch-linux2-c-debug/lib/libpetsc.so.3.05.0)
>> ==22745== by 0x4ABC8A8: KSPSolve (in /home/stali/petsc-dev/arch-linux2-c-debug/lib/libpetsc.so.3.05.0)
>> ==22745== by 0x4AE2DE0: kspsolve_ (in /home/stali/petsc-dev/arch-linux2-c-debug/lib/libpetsc.so.3.05.0)
>> ==22745==
>> Recovering stress ...
>> Cleaning up ...
>> Finished
>> ************************************************************************************************************************
>> *** WIDEN YOUR WINDOW TO 120 CHARACTERS. Use 'enscript -r -fCourier9' to print this document ***
>> ************************************************************************************************************************
>>
>> ---------------------------------------------- PETSc Performance Summary: ----------------------------------------------
>>
>> ./defmod on a arch-linux2-c-debug named i5 with 1 processor, by stali Sun Jun 29 11:02:25 2014
>> Using Petsc Development GIT revision: v3.4.4-4963-g821251a GIT Date: 2014-06-28 12:39:08 -0500
>>
>> Max Max/Min Avg Total
>> Time (sec): 2.261e+00 1.00000 2.261e+00
>> Objects: 3.100e+01 1.00000 3.100e+01
>> Flops: 1.207e+03 1.00000 1.207e+03 1.207e+03
>> Flops/sec: 5.339e+02 1.00000 5.339e+02 5.339e+02
>> MPI Messages: 0.000e+00 0.00000 0.000e+00 0.000e+00
>> MPI Message Lengths: 0.000e+00 0.00000 0.000e+00 0.000e+00
>> MPI Reductions: 0.000e+00 0.00000
>>
>> Flop counting convention: 1 flop = 1 real number operation of type (multiply/divide/add/subtract)
>> e.g., VecAXPY() for real vectors of length N --> 2N flops
>> and VecAXPY() for complex vectors of length N --> 8N flops
>>
>> Summary of Stages: ----- Time ------ ----- Flops ----- --- Messages --- -- Message Lengths -- -- Reductions --
>> Avg %Total Avg %Total counts %Total Avg %Total counts %Total
>> 0: Main Stage: 2.2451e+00 99.3% 1.2070e+03 100.0% 0.000e+00 0.0% 0.000e+00 0.0% 0.000e+00 0.0%
>>
>> ------------------------------------------------------------------------------------------------------------------------
>> See the 'Profiling' chapter of the users' manual for details on interpreting output.
>> Phase summary info:
>> Count: number of times phase was executed
>> Time and Flops: Max - maximum over all processors
>> Ratio - ratio of maximum to minimum over all processors
>> Mess: number of messages sent
>> Avg. len: average message length (bytes)
>> Reduct: number of global reductions
>> Global: entire computation
>> Stage: stages of a computation. Set stages with PetscLogStagePush() and PetscLogStagePop().
>> %T - percent time in this phase %F - percent flops in this phase
>> %M - percent messages in this phase %L - percent message lengths in this phase
>> %R - percent reductions in this phase
>> Total Mflop/s: 10e-6 * (sum of flops over all processors)/(max time over all processors)
>> ------------------------------------------------------------------------------------------------------------------------
>>
>>
>> ##########################################################
>> # #
>> # WARNING!!! #
>> # #
>> # This code was compiled with a debugging option, #
>> # To get timing results run ./configure #
>> # using --with-debugging=no, the performance will #
>> # be generally two or three times faster. #
>> # #
>> ##########################################################
>>
>>
>> Event Count Time (sec) Flops --- Global --- --- Stage --- Total
>> Max Ratio Max Ratio Max Ratio Mess Avg len Reduct %T %F %M %L %R %T %F %M %L %R Mflop/s
>> ------------------------------------------------------------------------------------------------------------------------
>>
>> --- Event Stage 0: Main Stage
>>
>> ThreadCommRunKer 1 1.0 7.3960e-03 1.0 0.00e+00 0.0 0.0e+00 0.0e+00 0.0e+00 0 0 0 0 0 0 0 0 0 0 0
>> ThreadCommBarrie 1 1.0 8.2803e-04 1.0 0.00e+00 0.0 0.0e+00 0.0e+00 0.0e+00 0 0 0 0 0 0 0 0 0 0 0
>> VecMDot 1 1.0 1.0480e-02 1.0 2.30e+01 1.0 0.0e+00 0.0e+00 0.0e+00 0 2 0 0 0 0 2 0 0 0 0
>> VecNorm 2 1.0 1.2341e-02 1.0 4.80e+01 1.0 0.0e+00 0.0e+00 0.0e+00 1 4 0 0 0 1 4 0 0 0 0
>> VecScale 2 1.0 1.2405e-02 1.0 2.40e+01 1.0 0.0e+00 0.0e+00 0.0e+00 1 2 0 0 0 1 2 0 0 0 0
>> VecCopy 1 1.0 9.0401e-03 1.0 0.00e+00 0.0 0.0e+00 0.0e+00 0.0e+00 0 0 0 0 0 0 0 0 0 0 0
>> VecSet 10 1.0 4.3447e-03 1.0 0.00e+00 0.0 0.0e+00 0.0e+00 0.0e+00 0 0 0 0 0 0 0 0 0 0 0
>> VecAXPY 1 1.0 1.1247e-02 1.0 2.40e+01 1.0 0.0e+00 0.0e+00 0.0e+00 0 2 0 0 0 1 2 0 0 0 0
>> VecMAXPY 2 1.0 6.3708e-03 1.0 4.80e+01 1.0 0.0e+00 0.0e+00 0.0e+00 0 4 0 0 0 0 4 0 0 0 0
>> VecAssemblyBegin 1 1.0 2.5654e-02 1.0 0.00e+00 0.0 0.0e+00 0.0e+00 0.0e+00 1 0 0 0 0 1 0 0 0 0 0
>> VecAssemblyEnd 1 1.0 9.2661e-03 1.0 0.00e+00 0.0 0.0e+00 0.0e+00 0.0e+00 0 0 0 0 0 0 0 0 0 0 0
>> VecScatterBegin 5 1.0 8.8482e-03 1.0 0.00e+00 0.0 0.0e+00 0.0e+00 0.0e+00 0 0 0 0 0 0 0 0 0 0 0
>> VecNormalize 2 1.0 3.3422e-02 1.0 7.20e+01 1.0 0.0e+00 0.0e+00 0.0e+00 1 6 0 0 0 1 6 0 0 0 0
>> MatMult 1 1.0 1.5871e-02 1.0 2.12e+02 1.0 0.0e+00 0.0e+00 0.0e+00 1 18 0 0 0 1 18 0 0 0 0
>> MatSolve 2 1.0 3.1852e-02 1.0 4.24e+02 1.0 0.0e+00 0.0e+00 0.0e+00 1 35 0 0 0 1 35 0 0 0 0
>> MatLUFactorNum 1 1.0 9.2084e-02 1.0 4.04e+02 1.0 0.0e+00 0.0e+00 0.0e+00 4 33 0 0 0 4 33 0 0 0 0
>> MatILUFactorSym 1 1.0 5.1554e-02 1.0 0.00e+00 0.0 0.0e+00 0.0e+00 0.0e+00 2 0 0 0 0 2 0 0 0 0 0
>> MatAssemblyBegin 2 1.0 6.5899e-04 1.0 0.00e+00 0.0 0.0e+00 0.0e+00 0.0e+00 0 0 0 0 0 0 0 0 0 0 0
>> MatAssemblyEnd 2 1.0 2.8979e-02 1.0 0.00e+00 0.0 0.0e+00 0.0e+00 0.0e+00 1 0 0 0 0 1 0 0 0 0 0
>> MatGetRowIJ 1 1.0 2.5041e-03 1.0 0.00e+00 0.0 0.0e+00 0.0e+00 0.0e+00 0 0 0 0 0 0 0 0 0 0 0
>> MatGetSubMatrice 1 1.0 2.8049e-02 1.0 0.00e+00 0.0 0.0e+00 0.0e+00 0.0e+00 1 0 0 0 0 1 0 0 0 0 0
>> MatGetOrdering 1 1.0 5.0988e-02 1.0 0.00e+00 0.0 0.0e+00 0.0e+00 0.0e+00 2 0 0 0 0 2 0 0 0 0 0
>> MatIncreaseOvrlp 1 1.0 3.7770e-02 1.0 0.00e+00 0.0 0.0e+00 0.0e+00 0.0e+00 2 0 0 0 0 2 0 0 0 0 0
>> KSPGMRESOrthog 1 1.0 2.9687e-02 1.0 4.70e+01 1.0 0.0e+00 0.0e+00 0.0e+00 1 4 0 0 0 1 4 0 0 0 0
>> KSPSetUp 2 1.0 1.8465e-02 1.0 0.00e+00 0.0 0.0e+00 0.0e+00 0.0e+00 1 0 0 0 0 1 0 0 0 0 0
>> KSPSolve 1 1.0 7.4545e-01 1.0 1.21e+03 1.0 0.0e+00 0.0e+00 0.0e+00 33100 0 0 0 33100 0 0 0 0
>> PCSetUp 2 1.0 4.4820e-01 1.0 4.04e+02 1.0 0.0e+00 0.0e+00 0.0e+00 20 33 0 0 0 20 33 0 0 0 0
>> PCSetUpOnBlocks 1 1.0 2.3395e-01 1.0 4.04e+02 1.0 0.0e+00 0.0e+00 0.0e+00 10 33 0 0 0 10 33 0 0 0 0
>> PCApply 2 1.0 7.8817e-02 1.0 4.24e+02 1.0 0.0e+00 0.0e+00 0.0e+00 3 35 0 0 0 4 35 0 0 0 0
>> ------------------------------------------------------------------------------------------------------------------------
>>
>> Memory usage is given in bytes:
>>
>> Object Type Creations Destructions Memory Descendants' Mem.
>> Reports information only for process 0.
>>
>> --- Event Stage 0: Main Stage
>>
>> Vector 11 11 10840 0
>> Vector Scatter 2 2 784 0
>> Matrix 3 3 10120 0
>> Index Set 10 10 4872 0
>> Krylov Solver 2 2 18316 0
>> Preconditioner 2 2 1204 0
>> Viewer 1 0 0 0
>> ========================================================================================================================
>> Average time to get PetscTime(): 0.000123882
>> #PETSc Option Table entries:
>> -f examples/two_quads_qs.inp
>> -log_summary
>> #End of PETSc Option Table entries
>> Compiled without FORTRAN kernels
>> Compiled with full precision matrices (default)
>> sizeof(short) 2 sizeof(int) 4 sizeof(long) 4 sizeof(void*) 4 sizeof(PetscScalar) 8 sizeof(PetscInt) 4
>> Configure options: --with-fc=gfortran --with-cc=gcc --download-mpich --with-metis=1 --download-metis=1 --COPTFLAGS=-O2 --FOPTFLAGS=-O2 --with-shared-libraries
>> -----------------------------------------
>> Libraries compiled on Sun Jun 29 08:08:16 2014 on i5
>> Machine characteristics: Linux-3.2.0-4-686-pae-i686-with-debian-7.5
>> Using PETSc directory: /home/stali/petsc-dev
>> Using PETSc arch: arch-linux2-c-debug
>> -----------------------------------------
>>
>> Using C compiler: /home/stali/petsc-dev/arch-linux2-c-debug/bin/mpicc -fPIC -Wall -Wwrite-strings -Wno-strict-aliasing -Wno-unknown-pragmas -O2 ${COPTFLAGS} ${CFLAGS}
>> Using Fortran compiler: /home/stali/petsc-dev/arch-linux2-c-debug/bin/mpif90 -fPIC -Wall -Wno-unused-variable -ffree-line-length-0 -Wno-unused-dummy-argument -O2 ${FOPTFLAGS} ${FFLAGS}
>> -----------------------------------------
>>
>> Using include paths: -I/home/stali/petsc-dev/arch-linux2-c-debug/include -I/home/stali/petsc-dev/include -I/home/stali/petsc-dev/include -I/home/stali/petsc-dev/arch-linux2-c-debug/include
>> -----------------------------------------
>>
>> Using C linker: /home/stali/petsc-dev/arch-linux2-c-debug/bin/mpicc
>> Using Fortran linker: /home/stali/petsc-dev/arch-linux2-c-debug/bin/mpif90
>> Using libraries: -Wl,-rpath,/home/stali/petsc-dev/arch-linux2-c-debug/lib -L/home/stali/petsc-dev/arch-linux2-c-debug/lib -lpetsc -llapack -lblas -Wl,-rpath,/home/stali/petsc-dev/arch-linux2-c-debug/lib -L/home/stali/petsc-dev/arch-linux2-c-debug/lib -lmetis -lX11 -lpthread -lssl -lcrypto -lm -Wl,-rpath,/usr/lib/gcc/i486-linux-gnu/4.7 -L/usr/lib/gcc/i486-linux-gnu/4.7 -Wl,-rpath,/usr/lib/i386-linux-gnu -L/usr/lib/i386-linux-gnu -Wl,-rpath,/lib/i386-linux-gnu -L/lib/i386-linux-gnu -lmpichf90 -lgfortran -lm -lgfortran -lm -lquadmath -lm -lmpichcxx -lstdc++ -ldl -lmpich -lopa -lmpl -lrt -lpthread -lgcc_s -ldl
>> -----------------------------------------
>>
>> ==22745==
>> ==22745== HEAP SUMMARY:
>> ==22745== in use at exit: 0 bytes in 0 blocks
>> ==22745== total heap usage: 3,723 allocs, 3,723 frees, 282,348 bytes allocated
>> ==22745==
>> ==22745== All heap blocks were freed -- no leaks are possible
>> ==22745==
>> ==22745== For counts of detected and suppressed errors, rerun with: -v
>> ==22745== ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 61 from 8)
>>
>
More information about the petsc-users
mailing list