On Sun, Jan 22, 2017 at 12:41 PM, Fande Kong <[email protected]> wrote:
> On Sat, Jan 21, 2017 at 10:47 PM, Matthew Knepley <[email protected]> > wrote: > >> On Sat, Jan 21, 2017 at 10:38 PM, Fande Kong <[email protected]> wrote: >> >>> Hi All, >>> >>> I upgraded the OS system to macOS Sierra, and observed that PETSc can >>> not read the exodus file any more. The same code runs fine on macOS >>> Capitan. I also tested the function DMPlexCreateExodusFromFile() against >>> different versions of the GCC compiler such as GCC-5.4 and GCC-6, and >>> neither of them work. I guess this issue is related to the external package >>> *exodus*, and PETSc might not pick up the right enveriment variables >>> for the *exodus.* >>> >>> This issue can be reproduced using the following simple code: >>> >> >> 1) This is just a standard check. Have you reconfigured so that you know >> ExodusII was built with the same compilers and system libraries? >> >> 2) If so, can you get a stack trace with gdb or lldb? >> > > 0 libsystem_kernel.dylib 0x00007fffad8b8dda __pthread_kill + 10 > 1 libsystem_pthread.dylib 0x00007fffad9a4787 pthread_kill + 90 > 2 libsystem_c.dylib 0x00007fffad81e420 abort + 129 > 3 libpetsc.3.7.dylib 0x00000001100eb9ee > PetscAbortErrorHandler + 506 (errstop.c:40) > 4 libpetsc.3.7.dylib 0x00000001100e631d PetscError + 916 > (err.c:379) > 5 libpetsc.3.7.dylib 0x00000001100ed830 > PetscSignalHandlerDefault + 1927 (signal.c:160) > 6 libpetsc.3.7.dylib 0x00000001100ed088 > PetscSignalHandler_Private(int) + 630 (signal.c:49) > 7 libsystem_platform.dylib 0x00007fffad997bba _sigtramp + 26 > 8 ??? 0x000000011ea09370 initialPoolContent + > 19008 > 9 libnetcdf.7.dylib 0x000000011228fc62 utf8proc_map + 210 > (dutf8proc.c:543) > 10 libnetcdf.7.dylib 0x000000011228fd0f utf8proc_NFC + 38 > (dutf8proc.c:568) > 11 libnetcdf.7.dylib 0x00000001122a7928 NC_findattr + 110 > (attr.c:341) > 12 libnetcdf.7.dylib 0x00000001122a7a4e NC_lookupattr + 119 > (attr.c:384) > 13 libnetcdf.7.dylib 0x00000001122a93ef NC3_get_att + 47 > (attr.c:1138) > 14 libnetcdf.7.dylib 0x0000000112286126 nc_get_att_float + > 90 (dattget.c:192) > 15 libpetsc.3.7.dylib 0x00000001117f3a5b ex_open_int + 171 > (ex_open.c:259) > 16 libpetsc.3.7.dylib 0x0000000110c36609 > DMPlexCreateExodusFromFile + 781 (plexexodusii.c:43) > 17 DMPlexCreateExodusFromFile 0x000000010fed4cfc main + 397 > (DMPlexCreateExodusFromFile.cpp:24) > 18 libdyld.dylib 0x00007fffad78a255 start + 1 > This is a NetCDF error on ex_open_int(). My guess is that your NetCDF build is old and when it calls the system DLL you bomb. Can you do a completely new build, meaning either reclone PETSc somewhere else, or delete the whole $PETSC_DIR/$PETSC_ARCH/externalpackage directory and reconfigure/build? Thanks, Matt > > >> Matt >> >> >>> *static char help[] = " create mesh from exodus.\n\n";* >>> >>> *#include <petscdm.h>* >>> *#include <petsc/private/dmpleximpl.h>* >>> >>> *#undef __FUNCT__* >>> *#define __FUNCT__ "main"* >>> *int main(int argc,char **argv)* >>> *{* >>> * char fineMeshFileName[2048];* >>> * DM dm;* >>> * MPI_Comm comm;* >>> * PetscBool flg;* >>> >>> * PetscErrorCode ierr;* >>> >>> * ierr = PetscInitialize(&argc,&argv,(char *)0,help);CHKERRQ(ierr);* >>> * comm = PETSC_COMM_WORLD;* >>> * ierr = >>> PetscOptionsGetString(NULL,NULL,"-file",fineMeshFileName,sizeof(fineMeshFileName),&flg);CHKERRQ(ierr);* >>> * if(!flg){* >>> * SETERRQ(comm,PETSC_ERR_ARG_NULL,"please specify a fine mesh file \n");* >>> * }* >>> * ierr = DMPlexCreateExodusFromFile( comm,fineMeshFileName, >>> PETSC_FALSE, &dm);CHKERRQ(ierr);* >>> * ierr = DMDestroy(&dm);CHKERRQ(ierr);* >>> * ierr = PetscFinalize();CHKERRQ(ierr);* >>> *}* >>> >>> >>> *LiviadeMacBook-Pro:partition livia$ ./DMPlexCreateExodusFromFile -file >>> Tri3.exo * >>> *[0]PETSC ERROR: >>> ------------------------------------------------------------------------* >>> *[0]PETSC ERROR: Caught signal number 11 SEGV: Segmentation Violation, >>> probably memory access out of range* >>> *[0]PETSC ERROR: Try option -start_in_debugger or >>> -on_error_attach_debugger* >>> *[0]PETSC ERROR: or see >>> http://www.mcs.anl.gov/petsc/documentation/faq.html#valgrind >>> <http://www.mcs.anl.gov/petsc/documentation/faq.html#valgrind>* >>> *[0]PETSC ERROR: or try http://valgrind.org <http://valgrind.org> on >>> GNU/linux and Apple Mac OS X to find memory corruption errors* >>> *[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] DMPlexCreateExodusFromFile line 38 >>> /Users/livia/math/petsc/src/dm/impls/plex/plexexodusii.c* >>> *[0]PETSC ERROR: --------------------- Error Message >>> --------------------------------------------------------------* >>> *[0]PETSC ERROR: Signal received* >>> *[0]PETSC ERROR: See http://www.mcs.anl.gov/petsc/documentation/faq.html >>> <http://www.mcs.anl.gov/petsc/documentation/faq.html> for trouble shooting.* >>> *[0]PETSC ERROR: Petsc Release Version 3.7.5, unknown * >>> *[0]PETSC ERROR: ./DMPlexCreateExodusFromFile on a arch-darwin-cxx-debug >>> named LiviadeMacBook-Pro.local by livia Sat Jan 21 21:04:22 2017* >>> *[0]PETSC ERROR: Configure options --with-clanguage=cxx >>> --with-shared-libraries=1 --download-fblaslapack=1 --with-mpi=1 >>> --download-parmetis=1 --download-metis=1 --download-netcdf=1 >>> --download-exodusii=1 --download-hdf5=1 --with-debugging=yes >>> --with-c2html=0 --download-hypre=1 --with-64-bit-indices=1 >>> --download-superlu_dist=1 PETSC_ARCH=arch-darwin-cxx-debug* >>> *[0]PETSC ERROR: #1 User provided function() line 0 in unknown file* >>> *application called MPI_Abort(MPI_COMM_WORLD, 59) - process 0* >>> *[unset]: write_line error; fd=-1 buf=:cmd=abort exitcode=59* >>> *:* >>> *system msg for write_line failure : Bad file descriptor* >>> >>> >>> The log files of make and configuration are also attached. If you have >>> any idea on this issue, please let me know! >>> >>> Fande Kong, >>> >>> >> >> >> -- >> 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 >> > > -- 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
