From: Kyunghoon L. <aer...@gm...> - 2011-11-14 02:00:50
|
Hi all, I configured libmesh with petsc-3.2-p5 and slepc-3.2-p1 with the following options for a Mac 10.6.8: ./configure --prefix=/Users/aeronova/Development/local/lib64/libmesh --enable-petsc --enable-slepc --enable-glpk --with-glpk-include=/Users/aeronova/Development/local/lib64/glpk/glpk-4.45/include --with-glpk-lib=/Users/aeronova/Development/local/lib64/glpk/glpk-4.45/lib --enable-ifem --enable-eigen --with-eigen-include=/Users/aeronova/Development/local/lib64/Eigen/include/eigen3 There were no errors for the libmesh build, but I got run time errors for ex29 and ex30 when I tested the library. I'd appreciate if someone could help me with the problems. K. Lee. ex29: Compiling C++ (in debug mode) ex29.C... Linking ex29-dbg... *************************************************************** * Running Example ./ex29-dbg *************************************************************** Triangulating an L-shaped domain with holes Assertion `obj_procid != DofObject::invalid_processor_id' failed. [0] /Users/aeronova/Development/local/lib64/libmesh/include/parallel/parallel_ghost_sync.h, line 249, compiled Nov 14 2011 at 09:37:23 terminate called after throwing an instance of 'libMesh::LogicError' what(): Error in libMesh internal logic make[2]: *** [run] Abort trap make[1]: *** [run] Error 1 make: *** [run_examples] Error 2 ex30: [0]PETSC ERROR: --------------------- Error Message ------------------------------------ [0]PETSC ERROR: Object is in wrong state! [0]PETSC ERROR: Not for unassembled matrix! [0]PETSC ERROR: ------------------------------------------------------------------------ [0]PETSC ERROR: Petsc Release Version 3.2.0, Patch 5, Sat Oct 29 13:45:54 CDT 2011 [0]PETSC ERROR: See docs/changes/index.html for recent updates. [0]PETSC ERROR: See docs/faq.html for hints about trouble shooting. [0]PETSC ERROR: See docs/index.html for manual pages. [0]PETSC ERROR: ------------------------------------------------------------------------ [0]PETSC ERROR: ./ex30-dbg on a arch-darw named ken-pc.sutd.edu.sg by aeronova Mon Nov 14 09:52:54 2011 [0]PETSC ERROR: Libraries linked from /Users/aeronova/Development/local/lib64/petsc/petsc-3.2-p5/lib [0]PETSC ERROR: Configure run at Mon Nov 14 08:24:55 2011 [0]PETSC ERROR: Configure options --prefix=/Users/aeronova/Development/local/lib64/petsc/petsc-3.2-p5 --download-mpich=1 --download-blacs=1 --download-parmetis=1 --download-scalapack=1 --download-mumps=1 --download-umfpack=1 --with-clanguage=C++ --with-fc=g95 [0]PETSC ERROR: ------------------------------------------------------------------------ [0]PETSC ERROR: MatGetRow() line 350 in /Users/aeronova/Development/local/src/petsc-3.2-p5/src/mat/interface/matrix.c [0]PETSC ERROR: MatAXPY_BasicWithPreallocation() line 98 in /Users/aeronova/Development/local/src/petsc-3.2-p5/src/mat/utils/axpy.c [0]PETSC ERROR: MatAXPY_SeqAIJ() line 2718 in /Users/aeronova/Development/local/src/petsc-3.2-p5/src/mat/impls/aij/seq/aij.c [0]PETSC ERROR: MatAXPY() line 39 in /Users/aeronova/Development/local/src/petsc-3.2-p5/src/mat/utils/axpy.c [0]PETSC ERROR: add() line 566 in "unknowndirectory/"/Users/aeronova/Development/local/lib64/libmesh/include/numerics/petsc_matrix.h application called MPI_Abort(comm=0x84000000, 73) - process 0 [unset]: aborting job: application called MPI_Abort(comm=0x84000000, 73) - process 0 |
From: David K. <dkn...@se...> - 2011-11-14 02:17:33
|
Hi K, I just added ex30. It sounds like an extra matrix->close() is needed to avoid the runtime error for ex30 on your system. If you could run ex30 through the debugger and send over the stack trace that'd be helpful --- should be easy to figure out where to add the close(). David On 11/13/2011 09:00 PM, Kyunghoon Lee wrote: > Hi all, > > I configured libmesh with petsc-3.2-p5 and slepc-3.2-p1 with the following > options for a Mac 10.6.8: > > ./configure --prefix=/Users/aeronova/Development/local/lib64/libmesh > --enable-petsc --enable-slepc --enable-glpk > --with-glpk-include=/Users/aeronova/Development/local/lib64/glpk/glpk-4.45/include > --with-glpk-lib=/Users/aeronova/Development/local/lib64/glpk/glpk-4.45/lib > --enable-ifem --enable-eigen > --with-eigen-include=/Users/aeronova/Development/local/lib64/Eigen/include/eigen3 > > There were no errors for the libmesh build, but I got run time errors for > ex29 and ex30 when I tested the library. I'd appreciate if someone could > help me with the problems. > > K. Lee. > > ex29: > > Compiling C++ (in debug mode) ex29.C... > Linking ex29-dbg... > *************************************************************** > * Running Example ./ex29-dbg > *************************************************************** > > Triangulating an L-shaped domain with holes > Assertion `obj_procid != DofObject::invalid_processor_id' failed. > [0] > /Users/aeronova/Development/local/lib64/libmesh/include/parallel/parallel_ghost_sync.h, > line 249, compiled Nov 14 2011 at 09:37:23 > terminate called after throwing an instance of 'libMesh::LogicError' > what(): Error in libMesh internal logic > make[2]: *** [run] Abort trap > make[1]: *** [run] Error 1 > make: *** [run_examples] Error 2 > > ex30: > > [0]PETSC ERROR: --------------------- Error Message > ------------------------------------ > [0]PETSC ERROR: Object is in wrong state! > [0]PETSC ERROR: Not for unassembled matrix! > [0]PETSC ERROR: > ------------------------------------------------------------------------ > [0]PETSC ERROR: Petsc Release Version 3.2.0, Patch 5, Sat Oct 29 13:45:54 > CDT 2011 > [0]PETSC ERROR: See docs/changes/index.html for recent updates. > [0]PETSC ERROR: See docs/faq.html for hints about trouble shooting. > [0]PETSC ERROR: See docs/index.html for manual pages. > [0]PETSC ERROR: > ------------------------------------------------------------------------ > [0]PETSC ERROR: ./ex30-dbg on a arch-darw named ken-pc.sutd.edu.sg by > aeronova Mon Nov 14 09:52:54 2011 > [0]PETSC ERROR: Libraries linked from > /Users/aeronova/Development/local/lib64/petsc/petsc-3.2-p5/lib > [0]PETSC ERROR: Configure run at Mon Nov 14 08:24:55 2011 > [0]PETSC ERROR: Configure options > --prefix=/Users/aeronova/Development/local/lib64/petsc/petsc-3.2-p5 > --download-mpich=1 --download-blacs=1 --download-parmetis=1 > --download-scalapack=1 --download-mumps=1 --download-umfpack=1 > --with-clanguage=C++ --with-fc=g95 > [0]PETSC ERROR: > ------------------------------------------------------------------------ > [0]PETSC ERROR: MatGetRow() line 350 in > /Users/aeronova/Development/local/src/petsc-3.2-p5/src/mat/interface/matrix.c > [0]PETSC ERROR: MatAXPY_BasicWithPreallocation() line 98 in > /Users/aeronova/Development/local/src/petsc-3.2-p5/src/mat/utils/axpy.c > [0]PETSC ERROR: MatAXPY_SeqAIJ() line 2718 in > /Users/aeronova/Development/local/src/petsc-3.2-p5/src/mat/impls/aij/seq/aij.c > [0]PETSC ERROR: MatAXPY() line 39 in > /Users/aeronova/Development/local/src/petsc-3.2-p5/src/mat/utils/axpy.c > [0]PETSC ERROR: add() line 566 in > "unknowndirectory/"/Users/aeronova/Development/local/lib64/libmesh/include/numerics/petsc_matrix.h > application called MPI_Abort(comm=0x84000000, 73) - process 0 > [unset]: aborting job: > application called MPI_Abort(comm=0x84000000, 73) - process 0 > ------------------------------------------------------------------------------ > RSA(R) Conference 2012 > Save $700 by Nov 18 > Register now > http://p.sf.net/sfu/rsa-sfdev2dev1 > _______________________________________________ > Libmesh-users mailing list > Lib...@li... > https://lists.sourceforge.net/lists/listinfo/libmesh-users |
From: Kyunghoon L. <aer...@gm...> - 2011-11-14 02:54:47
|
Hi David, I run ex30-dbg through gdb, but nothing came out from back trace: Program exited with code 0111. (gdb) bt No stack. About adding close(), I searched in ex30, but I couldn't figure out where to put close(); can you suggest me the location, plz? K. Lee. On Mon, Nov 14, 2011 at 10:17 AM, David Knezevic <dkn...@se... > wrote: > Hi K, > > I just added ex30. It sounds like an extra matrix->close() is needed to > avoid the runtime error for ex30 on your system. If you could run ex30 > through the debugger and send over the stack trace that'd be helpful --- > should be easy to figure out where to add the close(). > > David > > > > On 11/13/2011 09:00 PM, Kyunghoon Lee wrote: > > Hi all, > > > > I configured libmesh with petsc-3.2-p5 and slepc-3.2-p1 with the > following > > options for a Mac 10.6.8: > > > > ./configure --prefix=/Users/aeronova/Development/local/lib64/libmesh > > --enable-petsc --enable-slepc --enable-glpk > > > --with-glpk-include=/Users/aeronova/Development/local/lib64/glpk/glpk-4.45/include > > > --with-glpk-lib=/Users/aeronova/Development/local/lib64/glpk/glpk-4.45/lib > > --enable-ifem --enable-eigen > > > --with-eigen-include=/Users/aeronova/Development/local/lib64/Eigen/include/eigen3 > > > > There were no errors for the libmesh build, but I got run time errors for > > ex29 and ex30 when I tested the library. I'd appreciate if someone could > > help me with the problems. > > > > K. Lee. > > > > ex29: > > > > Compiling C++ (in debug mode) ex29.C... > > Linking ex29-dbg... > > *************************************************************** > > * Running Example ./ex29-dbg > > *************************************************************** > > > > Triangulating an L-shaped domain with holes > > Assertion `obj_procid != DofObject::invalid_processor_id' failed. > > [0] > > > /Users/aeronova/Development/local/lib64/libmesh/include/parallel/parallel_ghost_sync.h, > > line 249, compiled Nov 14 2011 at 09:37:23 > > terminate called after throwing an instance of 'libMesh::LogicError' > > what(): Error in libMesh internal logic > > make[2]: *** [run] Abort trap > > make[1]: *** [run] Error 1 > > make: *** [run_examples] Error 2 > > > > ex30: > > > > [0]PETSC ERROR: --------------------- Error Message > > ------------------------------------ > > [0]PETSC ERROR: Object is in wrong state! > > [0]PETSC ERROR: Not for unassembled matrix! > > [0]PETSC ERROR: > > ------------------------------------------------------------------------ > > [0]PETSC ERROR: Petsc Release Version 3.2.0, Patch 5, Sat Oct 29 13:45:54 > > CDT 2011 > > [0]PETSC ERROR: See docs/changes/index.html for recent updates. > > [0]PETSC ERROR: See docs/faq.html for hints about trouble shooting. > > [0]PETSC ERROR: See docs/index.html for manual pages. > > [0]PETSC ERROR: > > ------------------------------------------------------------------------ > > [0]PETSC ERROR: ./ex30-dbg on a arch-darw named ken-pc.sutd.edu.sg by > > aeronova Mon Nov 14 09:52:54 2011 > > [0]PETSC ERROR: Libraries linked from > > /Users/aeronova/Development/local/lib64/petsc/petsc-3.2-p5/lib > > [0]PETSC ERROR: Configure run at Mon Nov 14 08:24:55 2011 > > [0]PETSC ERROR: Configure options > > --prefix=/Users/aeronova/Development/local/lib64/petsc/petsc-3.2-p5 > > --download-mpich=1 --download-blacs=1 --download-parmetis=1 > > --download-scalapack=1 --download-mumps=1 --download-umfpack=1 > > --with-clanguage=C++ --with-fc=g95 > > [0]PETSC ERROR: > > ------------------------------------------------------------------------ > > [0]PETSC ERROR: MatGetRow() line 350 in > > > /Users/aeronova/Development/local/src/petsc-3.2-p5/src/mat/interface/matrix.c > > [0]PETSC ERROR: MatAXPY_BasicWithPreallocation() line 98 in > > /Users/aeronova/Development/local/src/petsc-3.2-p5/src/mat/utils/axpy.c > > [0]PETSC ERROR: MatAXPY_SeqAIJ() line 2718 in > > > /Users/aeronova/Development/local/src/petsc-3.2-p5/src/mat/impls/aij/seq/aij.c > > [0]PETSC ERROR: MatAXPY() line 39 in > > /Users/aeronova/Development/local/src/petsc-3.2-p5/src/mat/utils/axpy.c > > [0]PETSC ERROR: add() line 566 in > > > "unknowndirectory/"/Users/aeronova/Development/local/lib64/libmesh/include/numerics/petsc_matrix.h > > application called MPI_Abort(comm=0x84000000, 73) - process 0 > > [unset]: aborting job: > > application called MPI_Abort(comm=0x84000000, 73) - process 0 > > > ------------------------------------------------------------------------------ > > RSA(R) Conference 2012 > > Save $700 by Nov 18 > > Register now > > http://p.sf.net/sfu/rsa-sfdev2dev1 > > _______________________________________________ > > Libmesh-users mailing list > > Lib...@li... > > https://lists.sourceforge.net/lists/listinfo/libmesh-users > > > ------------------------------------------------------------------------------ > RSA(R) Conference 2012 > Save $700 by Nov 18 > Register now > http://p.sf.net/sfu/rsa-sfdev2dev1 > _______________________________________________ > Libmesh-users mailing list > Lib...@li... > https://lists.sourceforge.net/lists/listinfo/libmesh-users > |
From: Roy S. <roy...@ic...> - 2011-11-14 02:22:20
|
On Mon, 14 Nov 2011, Kyunghoon Lee wrote: > Hi all, > > I configured libmesh with petsc-3.2-p5 and slepc-3.2-p1 with the following > options for a Mac 10.6.8: > > ./configure --prefix=/Users/aeronova/Development/local/lib64/libmesh > --enable-petsc --enable-slepc --enable-glpk > --with-glpk-include=/Users/aeronova/Development/local/lib64/glpk/glpk-4.45/include > --with-glpk-lib=/Users/aeronova/Development/local/lib64/glpk/glpk-4.45/lib > --enable-ifem --enable-eigen > --with-eigen-include=/Users/aeronova/Development/local/lib64/Eigen/include/eigen3 > > There were no errors for the libmesh build, but I got run time errors for > ex29 and ex30 when I tested the library. I'd appreciate if someone could > help me with the problems. I don't think it's a problem just on your end. ex30 is a new addition to the library; presumably it works for David Knezevic's group but it doesn't currently compile for me; looks like it's not set up to handle configurations without SLEPc or GLPK. ex29 depends on some code that John Peterson is editing for ParallelMesh compatibility, and it looks like he's accidentally broken a SerialMesh use case in the process. If you're looking for something more stable to work with, I'd suggest starting with libMesh 0.7.2. There's one known bug there that affects users of System::point_gradient or the reduced_basis code in 3D; if you're so affected then you'll want to apply the fix in svn r4952 or wait for 0.7.2.1. --- Roy |
From: David K. <dkn...@se...> - 2011-11-14 03:24:04
|
On 11/13/2011 09:22 PM, Roy Stogner wrote: > > On Mon, 14 Nov 2011, Kyunghoon Lee wrote: > >> Hi all, >> >> I configured libmesh with petsc-3.2-p5 and slepc-3.2-p1 with the following >> options for a Mac 10.6.8: >> >> ./configure --prefix=/Users/aeronova/Development/local/lib64/libmesh >> --enable-petsc --enable-slepc --enable-glpk >> --with-glpk-include=/Users/aeronova/Development/local/lib64/glpk/glpk-4.45/include >> --with-glpk-lib=/Users/aeronova/Development/local/lib64/glpk/glpk-4.45/lib >> --enable-ifem --enable-eigen >> --with-eigen-include=/Users/aeronova/Development/local/lib64/Eigen/include/eigen3 >> >> There were no errors for the libmesh build, but I got run time errors for >> ex29 and ex30 when I tested the library. I'd appreciate if someone could >> help me with the problems. > I don't think it's a problem just on your end. ex30 is a new addition > to the library; presumably it works for David Knezevic's group but it > doesn't currently compile for me; looks like it's not set up to handle > configurations without SLEPc or GLPK. ex29 depends on some code that > John Peterson is editing for ParallelMesh compatibility, and it looks > like he's accidentally broken a SerialMesh use case in the process. OK, looks like I screwed something up... I'll look at it again now. David |
From: Kyunghoon L. <aer...@gm...> - 2011-11-14 02:58:30
|
Hi Roy, I have to use the bleeding edge version for reduced_basis; ex29 is not important to me, so it's just a bug report. K. Lee. On Mon, Nov 14, 2011 at 10:22 AM, Roy Stogner <roy...@ic...>wrote: > > > On Mon, 14 Nov 2011, Kyunghoon Lee wrote: > > Hi all, >> >> I configured libmesh with petsc-3.2-p5 and slepc-3.2-p1 with the following >> options for a Mac 10.6.8: >> >> ./configure --prefix=/Users/aeronova/**Development/local/lib64/**libmesh >> --enable-petsc --enable-slepc --enable-glpk >> --with-glpk-include=/Users/**aeronova/Development/local/** >> lib64/glpk/glpk-4.45/include >> --with-glpk-lib=/Users/**aeronova/Development/local/** >> lib64/glpk/glpk-4.45/lib >> --enable-ifem --enable-eigen >> --with-eigen-include=/Users/**aeronova/Development/local/** >> lib64/Eigen/include/eigen3 >> >> There were no errors for the libmesh build, but I got run time errors for >> ex29 and ex30 when I tested the library. I'd appreciate if someone could >> help me with the problems. >> > > I don't think it's a problem just on your end. ex30 is a new addition > to the library; presumably it works for David Knezevic's group but it > doesn't currently compile for me; looks like it's not set up to handle > configurations without SLEPc or GLPK. ex29 depends on some code that > John Peterson is editing for ParallelMesh compatibility, and it looks > like he's accidentally broken a SerialMesh use case in the process. > > If you're looking for something more stable to work with, I'd suggest > starting with libMesh 0.7.2. There's one known bug there that affects > users of System::point_gradient or the reduced_basis code in 3D; if > you're so affected then you'll want to apply the fix in svn r4952 or > wait for 0.7.2.1. > --- > Roy > |
From: Roy S. <roy...@ic...> - 2011-11-14 03:01:18
|
On Mon, 14 Nov 2011, Kyunghoon Lee wrote: > I have to use the bleeding edge version for reduced_basis; ex29 is not > important to me, so it's just a bug report. Thanks; we appreciate any bug reports. It's just embarassing when the bugs are problems we already know about and haven't fixed yet. ;-) --- Roy |
From: David K. <dkn...@se...> - 2011-11-14 04:01:58
|
On 11/13/2011 09:22 PM, Roy Stogner wrote: > > On Mon, 14 Nov 2011, Kyunghoon Lee wrote: > >> Hi all, >> >> I configured libmesh with petsc-3.2-p5 and slepc-3.2-p1 with the following >> options for a Mac 10.6.8: >> >> ./configure --prefix=/Users/aeronova/Development/local/lib64/libmesh >> --enable-petsc --enable-slepc --enable-glpk >> --with-glpk-include=/Users/aeronova/Development/local/lib64/glpk/glpk-4.45/include >> --with-glpk-lib=/Users/aeronova/Development/local/lib64/glpk/glpk-4.45/lib >> --enable-ifem --enable-eigen >> --with-eigen-include=/Users/aeronova/Development/local/lib64/Eigen/include/eigen3 >> >> There were no errors for the libmesh build, but I got run time errors for >> ex29 and ex30 when I tested the library. I'd appreciate if someone could >> help me with the problems. > I don't think it's a problem just on your end. ex30 is a new addition > to the library; presumably it works for David Knezevic's group but it > doesn't currently compile for me; looks like it's not set up to handle > configurations without SLEPc or GLPK. Yes, there were some silly pre-processor errors. I didn't check thoroughly enough, my apologies. It should now compile (and be a NO-OP) when SLEPc and GLPK aren't installed. I think K's error is just a missing matrix close (which manifests differently on different systems, and hence I'm not seeing on my system). K: are you sure you're running the debugger in debug mode? If not, that would explain the empty stack trace. David |
From: Roy S. <roy...@ic...> - 2011-11-15 04:34:38
|
On Sun, 13 Nov 2011, David Knezevic wrote: > Yes, there were some silly pre-processor errors. I didn't check > thoroughly enough, my apologies. It should now compile (and be a NO-OP) > when SLEPc and GLPK aren't installed. It still was failing for me in several of our Buildbot configurations, but I think r4972 will take care of those. --- Roy |
From: Kyunghoon L. <aer...@gm...> - 2011-11-14 04:38:31
|
Hi, David I did svn up, which updated ex30, but I still got the same error. I did run in a debug mode, but I'm not sure why I got no stack. Please check the log: ken-pc:ex30 aeronova$ echo $METHOD dbg ken-pc:ex30 aeronova$ make Updated .depend Compiling C++ (in debug mode) ex30.C... Linking ex30-dbg... ken-pc:ex30 aeronova$ gdb ex30-dbg GNU gdb 6.3.50-20050815 (Apple version gdb-1515) (Sat Jan 15 08:33:48 UTC 2011) Copyright 2004 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "x86_64-apple-darwin"...Reading symbols for shared libraries ......................... done (gdb) run Starting program: /Users/aeronova/Development/local/lib64/libmesh/examples/ex30/ex30-dbg Reading symbols for shared libraries .++++++++++++++++++++++++.. done *** Warning, This code is untested, experimental, or likely to see future API changes: src/reduced_basis/rb_parametrized_object.C, line 31, compiled Nov 14 2011 at 11:55:23 *** EquationSystems n_systems()=2 System #0, "RBConvectionDiffusion" Type "RBConstruction" Variables="u" Finite Element Types="LAGRANGE", "JACOBI_20_00" Infinite Element Mapping="CARTESIAN" Approximation Orders="FIRST", "THIRD" n_dofs()=2601 n_local_dofs()=2601 n_constrained_dofs()=0 n_vectors()=1 DofMap Sparsity Average On-Processor Bandwidth <= 8.76624 Average Off-Processor Bandwidth <= 0 Maximum On-Processor Bandwidth <= 9 Maximum Off-Processor Bandwidth <= 0 DofMap Constraints Number of DoF Constraints = 0 System #1, "RBSCMConvectionDiffusion" Type "CondensedEigen" Variables="p" Finite Element Types="LAGRANGE", "JACOBI_20_00" Infinite Element Mapping="CARTESIAN" Approximation Orders="FIRST", "THIRD" n_dofs()=2601 n_local_dofs()=2601 n_constrained_dofs()=0 n_vectors()=0 DofMap Sparsity Average On-Processor Bandwidth <= 8.76624 Average Off-Processor Bandwidth <= 0 Maximum On-Processor Bandwidth <= 9 Maximum Off-Processor Bandwidth <= 0 DofMap Constraints Number of DoF Constraints = 0 Mesh Information: mesh_dimension()=2 spatial_dimension()=3 n_nodes()=2601 n_local_nodes()=2601 n_elem()=2500 n_local_elem()=2500 n_active_elem()=2500 n_subdomains()=1 n_partitions()=1 n_processors()=1 n_threads()=1 processor_id()=0 Initializing training parameters with random training set... Parameter 0: log scaling = 1 Parameter 1: log scaling = 1 Parameter 2: log scaling = 1 Initializing training parameters with random training set... Parameter 0: log scaling = 0 Parameter 1: log scaling = 0 Parameter 2: log scaling = 0 RBConstruction parameters: system name: RBConvectionDiffusion constrained_problem: 0 Nmax: 10 Basis training error tolerance: 1e-05 A_q operators attached: 3 F_q functions attached: 1 n_outputs: 4 output 0, Q_l = 1 output 1, Q_l = 1 output 2, Q_l = 1 output 3, Q_l = 1 Number of parameters: 3 Parameter 0: Min = 0.1, Max = 1 Parameter 1: Min = 0.1, Max = 1 Parameter 2: Min = 1, Max = 10 n_training_samples: 100 single-matrix mode? 0 reuse preconditioner? 1 use a relative error bound in greedy? 0 write out data during basis training? 0 quiet mode? 1 parameter initialized to: mu[0] = 0.1 mu[1] = 0.1 mu[2] = 1 RBSCMConstruction parameters: system name: RBSCMConvectionDiffusion SCM Greedy tolerance: 0.1 A_q operators attached: 3 Number of parameters: 3 Parameter 0: Min = 0.1, Max = 1 Parameter 1: Min = 0.1, Max = 1 Parameter 2: Min = 1, Max = 10 n_training_samples: 100 [0]PETSC ERROR: --------------------- Error Message ------------------------------------ [0]PETSC ERROR: Object is in wrong state! [0]PETSC ERROR: Not for unassembled matrix! [0]PETSC ERROR: ------------------------------------------------------------------------ [0]PETSC ERROR: Petsc Release Version 3.2.0, Patch 5, Sat Oct 29 13:45:54 CDT 2011 [0]PETSC ERROR: See docs/changes/index.html for recent updates. [0]PETSC ERROR: See docs/faq.html for hints about trouble shooting. [0]PETSC ERROR: See docs/index.html for manual pages. [0]PETSC ERROR: ------------------------------------------------------------------------ [0]PETSC ERROR: /Users/aeronova/Development/local/lib64/libmesh/examples/ex30/ex30-dbg on a arch-darw named ken-pc.sutd.edu.sg by aeronova Mon Nov 14 12:33:44 2011 [0]PETSC ERROR: Libraries linked from /Users/aeronova/Development/local/lib64/petsc/petsc-3.2-p5/lib [0]PETSC ERROR: Configure run at Mon Nov 14 08:24:55 2011 [0]PETSC ERROR: Configure options --prefix=/Users/aeronova/Development/local/lib64/petsc/petsc-3.2-p5 --download-mpich=1 --download-blacs=1 --download-parmetis=1 --download-scalapack=1 --download-mumps=1 --download-umfpack=1 --with-clanguage=C++ --with-fc=g95 [0]PETSC ERROR: ------------------------------------------------------------------------ [0]PETSC ERROR: MatGetRow() line 350 in /Users/aeronova/Development/local/src/petsc-3.2-p5/src/mat/interface/matrix.c [0]PETSC ERROR: MatAXPY_BasicWithPreallocation() line 98 in /Users/aeronova/Development/local/src/petsc-3.2-p5/src/mat/utils/axpy.c [0]PETSC ERROR: MatAXPY_SeqAIJ() line 2718 in /Users/aeronova/Development/local/src/petsc-3.2-p5/src/mat/impls/aij/seq/aij.c [0]PETSC ERROR: MatAXPY() line 39 in /Users/aeronova/Development/local/src/petsc-3.2-p5/src/mat/utils/axpy.c [0]PETSC ERROR: add() line 566 in "unknowndirectory/"/Users/aeronova/Development/local/lib64/libmesh/include/numerics/petsc_matrix.h application called MPI_Abort(comm=0x84000000, 73) - process 0 [unset]: aborting job: application called MPI_Abort(comm=0x84000000, 73) - process 0 Program exited with code 0111. (gdb) bt No stack. On Mon, Nov 14, 2011 at 12:01 PM, David Knezevic <dkn...@se... > wrote: > On 11/13/2011 09:22 PM, Roy Stogner wrote: > > > > On Mon, 14 Nov 2011, Kyunghoon Lee wrote: > > > >> Hi all, > >> > >> I configured libmesh with petsc-3.2-p5 and slepc-3.2-p1 with the > following > >> options for a Mac 10.6.8: > >> > >> ./configure --prefix=/Users/aeronova/Development/local/lib64/libmesh > >> --enable-petsc --enable-slepc --enable-glpk > >> > --with-glpk-include=/Users/aeronova/Development/local/lib64/glpk/glpk-4.45/include > >> > --with-glpk-lib=/Users/aeronova/Development/local/lib64/glpk/glpk-4.45/lib > >> --enable-ifem --enable-eigen > >> > --with-eigen-include=/Users/aeronova/Development/local/lib64/Eigen/include/eigen3 > >> > >> There were no errors for the libmesh build, but I got run time errors > for > >> ex29 and ex30 when I tested the library. I'd appreciate if someone > could > >> help me with the problems. > > I don't think it's a problem just on your end. ex30 is a new addition > > to the library; presumably it works for David Knezevic's group but it > > doesn't currently compile for me; looks like it's not set up to handle > > configurations without SLEPc or GLPK. > > Yes, there were some silly pre-processor errors. I didn't check > thoroughly enough, my apologies. It should now compile (and be a NO-OP) > when SLEPc and GLPK aren't installed. > > I think K's error is just a missing matrix close (which manifests > differently on different systems, and hence I'm not seeing on my > system). K: are you sure you're running the debugger in debug mode? If > not, that would explain the empty stack trace. > > David > > > > > ------------------------------------------------------------------------------ > RSA(R) Conference 2012 > Save $700 by Nov 18 > Register now > http://p.sf.net/sfu/rsa-sfdev2dev1 > _______________________________________________ > Libmesh-users mailing list > Lib...@li... > https://lists.sourceforge.net/lists/listinfo/libmesh-users > |
From: Roy S. <roy...@ic...> - 2011-11-14 04:45:32
|
On Mon, 14 Nov 2011, Kyunghoon Lee wrote: > I did svn up, which updated ex30, but I still got the same error. I did > run in a debug mode, but I'm not sure why I got no stack. The libMesh terminate handler catches C++ exceptions; gdb intercepts segfaults... but on PETSc errors, we've got nothing in place to catch the problem before program exit. My workaround has always been to re-run and step through the program manually, but in hindsight I suppose we ought to be figuring out something appropriate to give to PetscPushErrorHandler()? --- Roy |
From: Kyunghoon L. <aer...@gm...> - 2011-11-14 05:35:39
|
It seems ex29 is ok if I configure petsc without "--with-fc=g95" option. On Mon, Nov 14, 2011 at 12:45 PM, Roy Stogner <roy...@ic...>wrote: > > On Mon, 14 Nov 2011, Kyunghoon Lee wrote: > > I did svn up, which updated ex30, but I still got the same error. I did >> run in a debug mode, but I'm not sure why I got no stack. >> > > The libMesh terminate handler catches C++ exceptions; gdb intercepts > segfaults... but on PETSc errors, we've got nothing in place to catch > the problem before program exit. My workaround has always been to > re-run and step through the program manually, but in hindsight I > suppose we ought to be figuring out something appropriate to give to > PetscPushErrorHandler()? > --- > Roy > |
From: Jed B. <je...@59...> - 2011-11-14 06:06:13
|
On Sun, Nov 13, 2011 at 22:45, Roy Stogner <roy...@ic...> wrote: > The libMesh terminate handler catches C++ exceptions; gdb intercepts > segfaults... but on PETSc errors, we've got nothing in place to catch > the problem before program exit. My workaround has always been to > re-run and step through the program manually, but in hindsight I > suppose we ought to be figuring out something appropriate to give to > PetscPushErrorHandler()? > You could do that. I just have "break PetscError" in my ~/.gdbinit. That way when I run in the debugger, it automatically stops at the first error. You can also -run_in_debugger which also sets this up. Or use -on_error_attach_debugger which has a similar effect, but runs full speed up until an error is encountered. David, void RBSCMConstruction::load_matrix_B() { // Load the operators from the RBConstruction EquationSystems& es = this->get_equation_systems(); RBConstruction& rb_system = es.get_system<RBConstruction>(RB_system_name); matrix_B->zero(); matrix_B->add(1.,*rb_system.get_inner_product_matrix()); } Could you manage to call MatCopy() here instead? The problem is that the matrix isn't assembled yet, we don't know the preallocation. I haven't figured out how you were creating this matrix (such that it got here while still being set as unassembled), but it would be cleaner to just call MatCopy() in this circumstances. |
From: David K. <dkn...@se...> - 2011-11-14 12:32:52
|
On 11/14/2011 01:06 AM, Jed Brown wrote: > On Sun, Nov 13, 2011 at 22:45, Roy Stogner<roy...@ic...> wrote: > >> The libMesh terminate handler catches C++ exceptions; gdb intercepts >> segfaults... but on PETSc errors, we've got nothing in place to catch >> the problem before program exit. My workaround has always been to >> re-run and step through the program manually, but in hindsight I >> suppose we ought to be figuring out something appropriate to give to >> PetscPushErrorHandler()? >> > You could do that. I just have > > "break PetscError" > > in my ~/.gdbinit. That way when I run in the debugger, it automatically > stops at the first error. You can also -run_in_debugger which also sets > this up. Or use -on_error_attach_debugger which has a similar effect, but > runs full speed up until an error is encountered. > > David, > > void RBSCMConstruction::load_matrix_B() > { > // Load the operators from the RBConstruction > EquationSystems& es = this->get_equation_systems(); > RBConstruction& rb_system = es.get_system<RBConstruction>(RB_system_name); > > matrix_B->zero(); > matrix_B->add(1.,*rb_system.get_inner_product_matrix()); > } > > Could you manage to call MatCopy() here instead? The problem is that the > matrix isn't assembled yet, we don't know the preallocation. I haven't > figured out how you were creating this matrix (such that it got here while > still being set as unassembled), but it would be cleaner to just call > MatCopy() in this circumstances. Certainly, thanks for the suggestion Jed. The idea is that we're just copying the assembled matrix over from rb_system to provide the "right hand side" matrix for RBSCMConstruction (which derives from EigenSystem). Would I have to use the raw PETSc MatCopy() though? I don't see a libMesh wrapper for it, and using SparseMatrix's operator= gives a memory leak... this is why I was doing the "zero" then "add" (which is presumably horribly inefficient, but at least it's not PETSc-specific...) David |
From: David K. <dkn...@se...> - 2011-11-14 13:10:15
|
On 11/14/2011 07:32 AM, David Knezevic wrote: > > > On 11/14/2011 01:06 AM, Jed Brown wrote: >> On Sun, Nov 13, 2011 at 22:45, Roy Stogner<roy...@ic...> >> wrote: >> >>> The libMesh terminate handler catches C++ exceptions; gdb intercepts >>> segfaults... but on PETSc errors, we've got nothing in place to catch >>> the problem before program exit. My workaround has always been to >>> re-run and step through the program manually, but in hindsight I >>> suppose we ought to be figuring out something appropriate to give to >>> PetscPushErrorHandler()? >>> >> You could do that. I just have >> >> "break PetscError" >> >> in my ~/.gdbinit. That way when I run in the debugger, it automatically >> stops at the first error. You can also -run_in_debugger which also sets >> this up. Or use -on_error_attach_debugger which has a similar effect, >> but >> runs full speed up until an error is encountered. >> >> David, >> >> void RBSCMConstruction::load_matrix_B() >> { >> // Load the operators from the RBConstruction >> EquationSystems& es = this->get_equation_systems(); >> RBConstruction& rb_system = >> es.get_system<RBConstruction>(RB_system_name); >> >> matrix_B->zero(); >> matrix_B->add(1.,*rb_system.get_inner_product_matrix()); >> } >> >> Could you manage to call MatCopy() here instead? The problem is that the >> matrix isn't assembled yet, we don't know the preallocation. I haven't >> figured out how you were creating this matrix (such that it got here >> while >> still being set as unassembled), but it would be cleaner to just call >> MatCopy() in this circumstances. > > Certainly, thanks for the suggestion Jed. The idea is that we're just > copying the assembled matrix over from rb_system to provide the "right > hand side" matrix for RBSCMConstruction (which derives from EigenSystem). > > Would I have to use the raw PETSc MatCopy() though? I don't see a > libMesh wrapper for it, and using SparseMatrix's operator= gives a > memory leak... this is why I was doing the "zero" then "add" (which is > presumably horribly inefficient, but at least it's not PETSc-specific...) Or, to follow up on that thought, perhaps a copy method should be added to SparseMatrix? David |
From: Jed B. <je...@59...> - 2011-11-14 13:35:21
|
On Mon, Nov 14, 2011 at 06:32, David Knezevic <dkn...@se...>wrote: > Would I have to use the raw PETSc MatCopy() though? I don't see a > libMesh wrapper for it, and using SparseMatrix's operator= gives a > memory leak... > It seems to me that this should be fixed. But in any case, it does not call MatCopy(), so it's not a complete solution (and I find it easy to get confused when overloading = to produce a new object or to copy into an existing object; they have very different semantics if anyone holds a reference to the original). > this is why I was doing the "zero" then "add" (which is > presumably horribly inefficient, but at least it's not PETSc-specific...) > Well, the problem has everything to do with preallocation and not marking new matrices "assembled". We _could_ make MatZeroEntries() mark the matrix as assembled, but that would be confusing for users who forget to assemble (e.g. accidentally assemble into the wrong matrix, or when trying to run the code before everything is implemented). We could add another special state to be reached after MatZeroEntries(), but that makes the implementation more complicated and offers more chance of bugs. Could you add a copy method to SparseMatrix or otherwise find a way to get the matrix assembled? (If necessary, you could just call matrix_B->close(). When I add that line, the example makes it further and errors that the eigensolver did not converge.) |
From: David K. <dkn...@se...> - 2011-11-14 14:07:29
|
On 11/14/2011 08:35 AM, Jed Brown wrote: > On Mon, Nov 14, 2011 at 06:32, David Knezevic > <dkn...@se... <mailto:dkn...@se...>> wrote: > > Would I have to use the raw PETSc MatCopy() though? I don't see a > libMesh wrapper for it, and using SparseMatrix's operator= gives a > memory leak... > > > It seems to me that this should be fixed. But in any case, it does not > call MatCopy(), so it's not a complete solution (and I find it easy to > get confused when overloading = to produce a new object or to copy > into an existing object; they have very different semantics if anyone > holds a reference to the original). > > this is why I was doing the "zero" then "add" (which is > presumably horribly inefficient, but at least it's not > PETSc-specific...) > > > Well, the problem has everything to do with preallocation and not > marking new matrices "assembled". We _could_ make MatZeroEntries() > mark the matrix as assembled, but that would be confusing for users > who forget to assemble (e.g. accidentally assemble into the wrong > matrix, or when trying to run the code before everything is > implemented). We could add another special state to be reached after > MatZeroEntries(), but that makes the implementation more complicated > and offers more chance of bugs. > > Could you add a copy method to SparseMatrix or otherwise find a way to > get the matrix assembled? (If necessary, you could just call > matrix_B->close(). When I add that line, the example makes it further > and errors that the eigensolver did not converge.) OK, I've just checked in the matrix_B->close() change for now. I've also changed to -eps_type lapack (as in ex17) to avoid slepc convergence issues. Let me know if that works for you? David |
From: Jed B. <je...@59...> - 2011-11-14 14:18:51
|
On Mon, Nov 14, 2011 at 08:07, David Knezevic <dkn...@se...>wrote: > OK, I've just checked in the matrix_B->close() change for now. I've also > changed to -eps_type lapack (as in ex17) to avoid slepc convergence issues. > Let me know if that works for you? Works here |
From: Kyunghoon L. <aer...@gm...> - 2011-11-14 14:29:24
|
Hi David, After svn up, ex30 works fine. Thanks for the update; thanks to Jed for the help! K. Lee. On Mon, Nov 14, 2011 at 10:18 PM, Jed Brown <je...@59...> wrote: > On Mon, Nov 14, 2011 at 08:07, David Knezevic <dkn...@se... > >wrote: > > > OK, I've just checked in the matrix_B->close() change for now. I've also > > changed to -eps_type lapack (as in ex17) to avoid slepc convergence > issues. > > Let me know if that works for you? > > > Works here > > ------------------------------------------------------------------------------ > RSA(R) Conference 2012 > Save $700 by Nov 18 > Register now > http://p.sf.net/sfu/rsa-sfdev2dev1 > _______________________________________________ > Libmesh-users mailing list > Lib...@li... > https://lists.sourceforge.net/lists/listinfo/libmesh-users > |
From: David K. <dkn...@se...> - 2011-11-15 23:02:47
|
Jed, On 11/14/2011 01:06 AM, Jed Brown wrote: > You can also -run_in_debugger which also sets this up. Or use > -on_error_attach_debugger which has a similar effect, but runs full > speed up until an error is encountered. I presume you need to compile PETSc with --with-debugging=1 for this to work, yes? Thanks, David |
From: Jed B. <je...@59...> - 2011-11-15 23:08:01
|
On Tue, Nov 15, 2011 at 17:02, David Knezevic <dkn...@se...>wrote: > I presume you need to compile PETSc with --with-debugging=1 for this to > work, yes? > No, but you would need that to have debugging symbols in PETSc code. If I run ./example-opt -ksp_type does-not-exist -start_in_debugger I get (gdb) c Continuing. Program received signal SIGABRT, Aborted. 0x00007fc5e25a8965 in raise () from /lib/libc.so.6 (gdb) bt #0 0x00007fc5e25a8965 in raise () from /lib/libc.so.6 #1 0x00007fc5e25a9ddb in abort () from /lib/libc.so.6 #2 0x00007fc5e52aa071 in PetscAbortErrorHandler () from /home/jed/petsc/ompi-opt/lib/libpetscsys.so #3 0x00007fc5e52a6aa6 in PetscError () from /home/jed/petsc/ompi-opt/lib/libpetscsys.so #4 0x00007fc5e6536a5b in KSPSetType () from /home/jed/petsc/ompi-opt/lib/libpetscksp.so #5 0x00007fc5e652b6d8 in KSPSetFromOptions () from /home/jed/petsc/ompi-opt/lib/libpetscksp.so #6 0x00007fc5e6a9515d in SNESSetFromOptions () from /home/jed/petsc/ompi-opt/lib/libpetscsnes.so #7 0x000000000040252f in main () If the error occurs in your code, it will have those function names in the stack and symbols if you built your code with debugging symbols. |
From: David K. <dkn...@se...> - 2011-11-15 23:09:41
|
On 11/15/2011 06:07 PM, Jed Brown wrote: > On Tue, Nov 15, 2011 at 17:02, David Knezevic > <dkn...@se... <mailto:dkn...@se...>> wrote: > > I presume you need to compile PETSc with --with-debugging=1 for > this to > work, yes? > > > No, but you would need that to have debugging symbols in PETSc code. > If I run > > ./example-opt -ksp_type does-not-exist -start_in_debugger > > I get > > (gdb) c > Continuing. > > Program received signal SIGABRT, Aborted. > 0x00007fc5e25a8965 in raise () from /lib/libc.so.6 > (gdb) bt > #0 0x00007fc5e25a8965 in raise () from /lib/libc.so.6 > #1 0x00007fc5e25a9ddb in abort () from /lib/libc.so.6 > #2 0x00007fc5e52aa071 in PetscAbortErrorHandler () from > /home/jed/petsc/ompi-opt/lib/libpetscsys.so > #3 0x00007fc5e52a6aa6 in PetscError () from > /home/jed/petsc/ompi-opt/lib/libpetscsys.so > #4 0x00007fc5e6536a5b in KSPSetType () from > /home/jed/petsc/ompi-opt/lib/libpetscksp.so > #5 0x00007fc5e652b6d8 in KSPSetFromOptions () from > /home/jed/petsc/ompi-opt/lib/libpetscksp.so > #6 0x00007fc5e6a9515d in SNESSetFromOptions () from > /home/jed/petsc/ompi-opt/lib/libpetscsnes.so > #7 0x000000000040252f in main () > > > If the error occurs in your code, it will have those function names in > the stack and symbols if you built your code with debugging symbols. Got it, thanks! |