On Jul 9, 2014, at 6:06 AM, Fabian.Jakub <[email protected]> 
wrote:

> If I do, the generated <binaryoutput.info> file is empty and the 
> <binaryoutput> just states the solvers...
> 
> cat binaryoutput:
> {Wgmres{Vilu
> 
> Do I have an error in my Petscbuild?

  No this was my mistake I told you the wrong directions

> This by the way happens with all matrices, even tried a couple of examples 
> from petsc src.
> 
> Anyway, I uploaded the matrix dump (-mat_view binary)
> I hope this helps.
> <http://homepages.physik.uni-muenchen.de/~Fabian.Jakub/>

   Thanks. I have reproduced the problem with your matrix. I will work on 
figuring out how to fix it. From the code
/* very pessimistic but could be too low in theory */  so likely you just 
provided a matrix that Mark’s original algorithm could not handle.

  Barry

> 
> To be thorough, I further put up a second file, with 2 matrices,
> The second matrix is the same as before (the one that is not working with 
> gamg).
> The first one with dof 8 is solved and the solution is somewhat the source 
> term for the second.
> I just thought I would append this one too because it does indeed work with 
> gamg.
> Maybe that gives any hints.
> 
> I really appreciate you looking into this.
> 
> Thank you!
> 
> Sincerely,
> Fabian
> 
> 
> 
> Am 09.07.2014 07:37, schrieb Barry Smith:
>>   Can you run with -ksp_view_pre binary and email the file binaryoutput
>> 
>>    With this we should be able to reproduce the problem and debug it.
>> 
>>    Thanks
>> 
>> 
>>   Barry
>> 
>> On Jul 8, 2014, at 10:51 AM, Fabian.Jakub 
>> <[email protected]> wrote:
>> 
>>> Thank you very much for the swift reply!
>>> 
>>> I am running
>>> git describe: v3.5-25-g0ace994
>>> and configured with
>>> 
>>> ./configure                           \
>>>  --with-cc=$(which mpicc)            \
>>>  --with-fc=$(which mpif90)           \
>>>  --with-cxx=$(which mpic++)          \
>>>  --with-fortran                      \
>>>  --with-shared-libraries             \
>>>  --with-hdf5                         \
>>>  --with-hdf5-dir="$HDF5_DIR"         \
>>>  --with-cmake=$(which cmake)         \
>>>  \
>>> 
>>> I run the model with:
>>> mpirun -np 2 -map-by socket bin/petsc_solver -pc_type gamg 
>>> -pc_gamg_agg_nsmooths 1 -pc_gamg_verbose 1 -info
>>> 
>>> Should I append the output when creating the DMDA?
>>> For the KSP setup it says:
>>> 
>>> [0] VecScatterCreateCommon_PtoS(): Using blocksize 1 scatter
>>> [0] VecScatterCreate(): General case: MPI to Seq
>>> [1] MatAssemblyEnd_SeqAIJ(): Matrix size: 6359040 X 131520; storage space: 
>>> 0 unneeded,420864 used
>>> [1] MatAssemblyEnd_SeqAIJ(): Number of mallocs during MatSetValues() is 0
>>> [1] MatAssemblyEnd_SeqAIJ(): Maximum nonzeros in any row is 8
>>> [1] MatCheckCompressedRow(): Found the ratio (num_zerorows 
>>> 6227520)/(num_localrows 6359040) > 0.6. Use CompressedRow routines.
>>> [0] MatAssemblyEnd_SeqAIJ(): Matrix size: 6359040 X 131520; storage space: 
>>> 0 unneeded,420864 used
>>> [0] MatAssemblyEnd_SeqAIJ(): Number of mallocs during MatSetValues() is 0
>>> [0] MatAssemblyEnd_SeqAIJ(): Maximum nonzeros in any row is 8
>>> [0] MatCheckCompressedRow(): Found the ratio (num_zerorows 
>>> 6227520)/(num_localrows 6359040) > 0.6. Use CompressedRow routines.
>>> [1] PetscCommDuplicate(): Using internal PETSc communicator 47323925895584 
>>> 15967792
>>> Setup KSP
>>> [0] PetscCommDuplicate(): Using internal PETSc communicator 47292596238752 
>>> 42057616
>>> [0] PCSetUp(): Setting up PC for first time     [0]PCSetUp_GAMG level 0 
>>> N=12718080, n data rows=10, n data cols=10, nnz/row (ave)=10, np=2
>>> [1] PetscCommDuplicate(): Using internal PETSc communicator 47323925894432 
>>> 16179040
>>> [0] PetscCommDuplicate(): Using internal PETSc communicator 47292596237600 
>>> 41749680
>>> [1] PetscCommDuplicate(): Using internal PETSc communicator 47323925894432 
>>> 16179040
>>> [0] PetscCommDuplicate(): Using internal PETSc communicator 47292596237600 
>>> 41749680
>>> [1]PETSC ERROR: --------------------- Error Message 
>>> --------------------------------------------------------------
>>> [1]PETSC ERROR: Argument out of range
>>> [1]PETSC ERROR: New nonzero at (4704,4609) caused a malloc
>>> Use MatSetOption(A, MAT_NEW_NONZERO_ALLOCATION_ERR, PETSC_FALSE) to turn 
>>> off this check
>>> [1]PETSC ERROR: See http://www.mcs.anl.gov/petsc/documentation/faq.html for 
>>> trouble shooting.
>>> [1]PETSC ERROR: Petsc Development GIT revision: v3.5-25-g0ace994 GIT Date: 
>>> 2014-07-07 14:50:15 +0200
>>> [1]PETSC ERROR: bin/petsc_solver on a debug named lx001 by jakub Tue Jul  8 
>>> 17:47:31 2014
>>> [1]PETSC ERROR: Configure options 
>>> --with-cc=/home/opt/cosmo_tica_lib/ompi1.8.1/openmpi-1.8.1/install/bin/mpicc
>>>  
>>> --with-fc=/home/opt/cosmo_tica_lib/ompi1.8.1/openmpi-1.8.1/install/bin/mpif90
>>>  
>>> --with-cxx=/home/opt/cosmo_tica_lib/ompi1.8.1/openmpi-1.8.1/install/bin/mpic++
>>>  --with-fortran --with-shared-libraries --with-hdf5 
>>> --with-hdf5-dir=/home/opt/cosmo_tica_lib//ompi1.8.1/hdf5/HDF_Group/HDF5/1.8.13/
>>>  --with-cmake=/usr/bin/cmake
>>> [1]PETSC ERROR: #1 MatSetValues_MPIAIJ() line 530 in 
>>> /home/opt/cosmo_tica_lib/ompi1.8.1/petsc-master/src/mat/impls/aij/mpi/mpiaij.c
>>> [1]PETSC ERROR: #2 MatSetValues() line 1136 in 
>>> /home/opt/cosmo_tica_lib/ompi1.8.1/petsc-master/src/mat/interface/matrix.c
>>> [1]PETSC ERROR: #3 PCGAMGCreateGraph() line 72 in 
>>> /home/opt/cosmo_tica_lib/ompi1.8.1/petsc-master/src/ksp/pc/impls/gamg/tools.c
>>> [1]PETSC ERROR: #4 PCGAMGgraph_AGG() line 936 in 
>>> /home/opt/cosmo_tica_lib/ompi1.8.1/petsc-master/src/ksp/pc/impls/gamg/agg.c
>>> [1]PETSC ERROR: #5 PCSetUp_GAMG() line 595 in 
>>> /home/opt/cosmo_tica_lib/ompi1.8.1/petsc-master/src/ksp/pc/impls/gamg/gamg.c
>>> [1]PETSC ERROR: #6 PCSetUp() line 902 in 
>>> /home/opt/cosmo_tica_lib/ompi1.8.1/petsc-master/src/ksp/pc/interface/precon.c
>>> [1]PETSC ERROR: #7 KSPSetUp() line 305 in 
>>> /home/opt/cosmo_tica_lib/ompi1.8.1/petsc-master/src/ksp/ksp/interface/itfunc.c
>>> [0]PETSC ERROR: --------------------- Error Message 
>>> --------------------------------------------------------------
>>> [0]PETSC ERROR: Argument out of range
>>> [0]PETSC ERROR: New nonzero at (4704,4609) caused a malloc
>>> Use MatSetOption(A, MAT_NEW_NONZERO_ALLOCATION_ERR, PETSC_FALSE) to turn 
>>> off this check
>>> [0]PETSC ERROR: See http://www.mcs.anl.gov/petsc/documentation/faq.html for 
>>> trouble shooting.
>>> [0]PETSC ERROR: Petsc Development GIT revision: v3.5-25-g0ace994 GIT Date: 
>>> 2014-07-07 14:50:15 +0200
>>> [0]PETSC ERROR: bin/petsc_solver on a debug named lx001 by jakub Tue Jul  8 
>>> 17:47:31 2014
>>> [0]PETSC ERROR: Configure options 
>>> --with-cc=/home/opt/cosmo_tica_lib/ompi1.8.1/openmpi-1.8.1/install/bin/mpicc
>>>  
>>> --with-fc=/home/opt/cosmo_tica_lib/ompi1.8.1/openmpi-1.8.1/install/bin/mpif90
>>>  
>>> --with-cxx=/home/opt/cosmo_tica_lib/ompi1.8.1/openmpi-1.8.1/install/bin/mpic++
>>>  --with-fortran --with-shared-libraries --with-hdf5 
>>> --with-hdf5-dir=/home/opt/cosmo_tica_lib//ompi1.8.1/hdf5/HDF_Group/HDF5/1.8.13/
>>>  --with-cmake=/usr/bin/cmake
>>> [0]PETSC ERROR: #1 MatSetValues_MPIAIJ() line 530 in 
>>> /home/opt/cosmo_tica_lib/ompi1.8.1/petsc-master/src/mat/impls/aij/mpi/mpiaij.c
>>> [0]PETSC ERROR: #2 MatSetValues() line 1136 in 
>>> /home/opt/cosmo_tica_lib/ompi1.8.1/petsc-master/src/mat/interface/matrix.c
>>> [0]PETSC ERROR: #3 PCGAMGCreateGraph() line 72 in 
>>> /home/opt/cosmo_tica_lib/ompi1.8.1/petsc-master/src/ksp/pc/impls/gamg/tools.c
>>> [0]PETSC ERROR: #4 PCGAMGgraph_AGG() line 936 in 
>>> /home/opt/cosmo_tica_lib/ompi1.8.1/petsc-master/src/ksp/pc/impls/gamg/agg.c
>>> [0]PETSC ERROR: #5 PCSetUp_GAMG() line 595 in 
>>> /home/opt/cosmo_tica_lib/ompi1.8.1/petsc-master/src/ksp/pc/impls/gamg/gamg.c
>>> [0]PETSC ERROR: #6 PCSetUp() line 902 in 
>>> /home/opt/cosmo_tica_lib/ompi1.8.1/petsc-master/src/ksp/pc/interface/precon.c
>>> [0]PETSC ERROR: #7 KSPSetUp() line 305 in 
>>> /home/opt/cosmo_tica_lib/ompi1.8.1/petsc-master/src/ksp/ksp/interface/itfunc.c
>>> --------------------------------------------------------------------------
>>> MPI_ABORT was invoked on rank 0 in communicator MPI_COMM_WORLD
>>> with errorcode 63.
>>> 
>>> NOTE: invoking MPI_ABORT causes Open MPI to kill all MPI processes.
>>> You may or may not see output from other processes, depending on
>>> exactly when Open MPI kills them.
>>> -------------------------------------------------------------------------
>>> 
>>> Am 08.07.2014 17:14, schrieb Barry Smith:
>>>>    GAMG should not give a preallocation error regardless of the 
>>>> preallocation of the original matrix; so presumably you’ve hit on an error 
>>>> in GAMG. What version of PETSc are you using and what is the ENTIRE error 
>>>> message from GAMG?  If you are using PETSc 3.4 please upgrade to 3.5 and 
>>>> see if GAMG still produces an error.
>>>> 
>>>>    Barry
>>>> 
>>>> 
>>>> 
>>>> On Jul 8, 2014, at 7:39 AM, Fabian.Jakub 
>>>> <[email protected]> wrote:
>>>> 
>>>>> Hi,
>>>>> I have a question regarding gamg where I get a wrong preallocation i.e. a 
>>>>>  MAT_NEW_NONZERO_ALLOCATION_ERR **.
>>>>> 
>>>>> I use a 3d DMDA with 10 dof but the coupling only ever needs 2 dof on a 
>>>>> star stencil.
>>>>> 
>>>>> The code to setup the matrix is like this:
>>>>> 
>>>>> call DMSetMatrixPreallocateOnly(C%da, PETSC_TRUE,ierr)
>>>>> call DMCreateMatrix(C%da, A, ierr)
>>>>> call MatSetFromOptions(A,ierr)
>>>>> 
>>>>> call MatMPIAIJSetPreallocation(A, PETSC_NULL_INTEGER,d_nnz, 
>>>>> PETSC_NULL_INTEGER, o_nnz, ierr)
>>>>> 
>>>>> insert matrix values & assemble
>>>>> 
>>>>> then solve.
>>>>> 
>>>>> If I solve the system with any ''normal'' KSP/PC there is no problem and 
>>>>> matrix info actually confirms that the preallocation is good.
>>>>> However if I use gamg I get an allocation error when it tries to create a 
>>>>> coarse grid.
>>>>> 
>>>>> If I use the DMDA preallocation, it works but uses way more memory...
>>>>> 
>>>>> Is there a possibility to use custom preallocation and at the same time 
>>>>> let gamg create the coarse grid?
>>>>> Is that even the problem or am I missing something?
>>>>> 
>>>>> Thank you so very much.
>>>>> 
>>>>> Sincerely,
>>>>> Fabian
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> 
> 

Reply via email to