[petsc-users] memory scalable AO

Randall Mackie rlmackie862 at gmail.com
Wed Feb 17 11:33:18 CST 2016


What is the correct way to set the AO for a DMDA to be the memory scalable version?

I have tried this:

call DMDASetAOType(da,AOMEMORYSCALABLE,ierr)
call DMDAGetAO(da,ao,ierr)

The code compiles fine, but I simply get a Segmentation Violation when I run it:

[3]PETSC ERROR: ------------------------------------------------------------------------
[3]PETSC ERROR: Caught signal number 11 SEGV: Segmentation Violation, probably memory access out of range
[3]PETSC ERROR: Try option -start_in_debugger or -on_error_attach_debugger
[3]PETSC ERROR: or see http://www.mcs.anl.gov/petsc/documentation/faq.html#valgrind
[3]PETSC ERROR: or try http://valgrind.org on GNU/linux and Apple Mac OS X to find memory corruption errors
[3]PETSC ERROR: configure using --with-debugging=yes, recompile, link, and run 
[3]PETSC ERROR: to get more information on the crash.
[3]PETSC ERROR: --------------------- Error Message --------------------------------------------------------------
[3]PETSC ERROR: Signal received
[3]PETSC ERROR: See http://www.mcs.anl.gov/petsc/documentation/faq.html for trouble shooting.
[3]PETSC ERROR: Petsc Release Version 3.6.3, Dec, 03, 2015 
[3]PETSC ERROR: Configure options PETSC_ARCH=linux-gfortran-opt --with-clean=1 --with-scalar-type=complex --with-debugging=0 --with-fortran=1 --download-mpich=./mpich-3.1.3.tar.gz --FOPTFLAGS=-O3 --COPTFLAGS=-O3
[3]PETSC ERROR: #1 User provided function() line 0 in  unknown file
application called MPI_Abort(MPI_COMM_WORLD, 59) - process 3
[cli_3]: aborting job:


In fact, I get the same thing even if I set the AOType to AOBASIC, in other words

call DMDASetAOTYPE(da,AOBASIC,ierr)


Previously, I did not set an AOType, and only called DMDAGetAO, which works fine, and from what I can tell sets the type to basic.


Thanks, Randy M.


More information about the petsc-users mailing list