On Mon, 3 Dec 2012, Alexander Grayver wrote: > Hello, > > I'm using PETSc-3.3-p4 compiled with ICC 12.0 + IntelMPI 4.0.3 and getting a > bunch of the errors related to the string functions: > > ==22020== Conditional jump or move depends on uninitialised value(s) > ==22020== at 0x4D3109: __intel_sse2_strcpy (in /home/main) > ==22020== by 0xE87D51D: PetscStrcpy (in > /home/lib/petsc-3.3-p4/intelmpi-intel12-double-release-c-shared/lib/libpetsc.so) > ==22020== by 0xE87B6A4: PetscStrallocpy (in > /home/lib/petsc-3.3-p4/intelmpi-intel12-double-release-c-shared/lib/libpetsc.so) > ==22020== by 0xE796769: PetscFListGetPathAndFunction (in > /home/lib/petsc-3.3-p4/intelmpi-intel12-double-release-c-shared/lib/libpetsc.so) > ==22020== by 0xE79652A: PetscFListAdd (in > /home/lib/petsc-3.3-p4/intelmpi-intel12-double-release-c-shared/lib/libpetsc.so) > ==22020== by 0xE64ACB8: MatMFFDRegister (in > /home/lib/petsc-3.3-p4/intelmpi-intel12-double-release-c-shared/lib/libpetsc.so) > ==22020== by 0xE64FA7D: MatMFFDRegisterAll (in > /home/lib/petsc-3.3-p4/intelmpi-intel12-double-release-c-shared/lib/libpetsc.so) > ==22020== by 0xE64F65B: MatMFFDInitializePackage (in > /home/lib/petsc-3.3-p4/intelmpi-intel12-double-release-c-shared/lib/libpetsc.so) > ==22020== by 0xE48D8C2: MatInitializePackage (in > /home/lib/petsc-3.3-p4/intelmpi-intel12-double-release-c-shared/lib/libpetsc.so) > ==22020== by 0xE5157DB: MatCreate (in > /home/lib/petsc-3.3-p4/intelmpi-intel12-double-release-c-shared/lib/libpetsc.so) > ==22020== by 0xE29A74C: MatCreateSeqAIJ (in > /home/lib/petsc-3.3-p4/intelmpi-intel12-double-release-c-shared/lib/libpetsc.so) > > Same thing for PetscStrncat etc. > > There was similar question two years ago in this mailing list and advice was > to use a different compiler. It is not an option for me.
You can always use a separate build of PETSc with gcc,--download-mpich to get a valgrind clean build [for debugging purposes] > Thus, my question is can those errors potentially cause any serious troubles? Generally we can ignore issues valgrind finds in system/compiler libraries. [Jed has a valid explanation for this one]. And generally valgrind provides 'default suppression files' for known glibc versions. But for such issues as with ifc, you can ask valgrind to create a supression file - and then rerun valgrind with this custom supression file - to get more readable output. Satish > I came across with time trying to debug a weird segmentation fault. > > Thanks. > >
