using hypre through petsc

Barry Smith bsmith at mcs.anl.gov
Fri Sep 29 20:56:52 CDT 2006


  Yes, you must call SNESSetFromOptions, KSPSetFromOptions or PCSetFromOptions.
It is at this point in the code that it checks the provided options and
prints the help messages (as it checks them).

You do not need to hardwire the options in the code to have the proper
help printed.

   Barry


On Fri, 29 Sep 2006, Matt Funk wrote:

> Hi,
> 
> i don't know what i am doing wrong, but it still doesn't give me the any hypre 
> output.
> 
> So i need to call KSPSetFromOptions? or PCSetFromOptions?
> 
> Also, at what point in the program should it print those options out? After i 
> call XSetFromOptions?
> 
> Do i need to set the PCType to hypre first and then 
> PCHYPRESetType(m_pc,"boomeramg")  and then it prints it out?
> 
> mat
> 
> 
> On Friday 29 September 2006 15:35, Barry Smith wrote:
> > On Fri, 29 Sep 2006, Yaron Kretchmer wrote:
> > > If the latter (Petsc not configured to use Hypre), wouldn't Matt get an
> > > error when specifying hypre as preconditioner?
> >
> >   Yes he would, but it could get lost among all the help messages
> > printed.
> >
> >    Barry
> >
> > > Yaron
> > >
> > > On 9/29/06, Barry Smith <bsmith at mcs.anl.gov> wrote:
> > > >   Either you are not calling KSPSetFromOptions() in your
> > > > code (or SNESSetFromOptions() OR PETSc was not configured
> > > > to use hypre. To configure PETSc to use hypre you
> > > > must use the additional config/configure.py option
> > > > --download-hypre
> > > >
> > > >   Good luck,
> > > >
> > > >     Barry
> > > >
> > > > On Fri, 29 Sep 2006, Matt Funk wrote:
> > > > > This might be a pretty stupid question, especially since i did this a
> > > >
> > > > while
> > > >
> > > > > back and it worked.
> > > > >
> > > > > However, how do i specify thsis? Do i run my executable do and then
> > > >
> > > > simply
> > > >
> > > > > append -pc_type hypre -pc_hypre_type boomeramg -help and it will
> > > > > print
> > > >
> > > > out
> > > >
> > > > > the options?
> > > > >
> > > > >
> > > > > Because when i do that i get:
> > > > > Options for all PETSc programs:
> > > > >  -on_error_abort: cause an abort when an error is detected. Useful
> > > > >        only when run in the debugger
> > > > >  -on_error_attach_debugger [gdb,dbx,xxgdb,ups,noxterm]
> > > > >        start the debugger in new xterm
> > > > >        unless noxterm is given
> > > > >  -start_in_debugger [gdb,dbx,xxgdb,ups,noxterm]
> > > > >        start all processes in the debugger
> > > > >  -on_error_emacs <machinename>
> > > > >     emacs jumps to error file
> > > > >  -debugger_nodes [n1,n2,..] Nodes to start in debugger
> > > > >  -debugger_pause [m] : delay (in seconds) to attach debugger
> > > > >  -stop_for_debugger : prints message on how to attach debugger
> > > > > manually waits the delay for you to attach
> > > > >  -display display: Location where graphics and debuggers are
> > > > > displayed -no_signal_handler: do not trap error signals
> > > > >  -mpi_return_on_error: MPI returns error code, rather than abort on
> > > >
> > > > internal
> > > >
> > > > > error
> > > > >  -fp_trap: stop on floating point exceptions
> > > > >            note on IBM RS6000 this slows run greatly
> > > > >  -malloc_dump <optional filename>: dump list of unfreed memory at
> > > >
> > > > conclusion
> > > >
> > > > >  -malloc: use our error checking malloc
> > > > >  -malloc no: don't use error checking malloc
> > > > >  -mallocinfo: prints total memory usage
> > > > >  -malloc_debug: enables extended checking for memory corruption
> > > > >  -options_table: dump list of options inputted
> > > > >  -options_left: dump list of unused options
> > > > >  -options_left no: don't dump list of unused options
> > > > >  -tmp tmpdir: alternative /tmp directory
> > > > >  -shared_tmp: tmp directory is shared by all processors
> > > > >  -not_shared_tmp: each processor has separate tmp directory
> > > > >  -memory_info: print memory usage at end of run
> > > > >  -get_total_flops: total flops over all processors
> > > > >  -log[_all _summary]: logging objects and events
> > > > >  -log_trace [filename]: prints trace of all PETSc calls
> > > > >  -info <optional filename>: print informative messages about the
> > > >
> > > > calculations
> > > >
> > > > >  -v: prints PETSc version number and release date
> > > > >  -options_file <file>: reads options from file
> > > > >  -petsc_sleep n: sleeps n seconds before running program
> > > > >
> > > > >
> > > > > but nothing about hypre .... ?
> > > > >
> > > > >
> > > > > mat
> > > > >
> > > > > On Tuesday 19 September 2006 17:05, Yaron Kretchmer wrote:
> > > > > > Hi Matt
> > > > > > You can start experimenting by using
> > > > > > -pc_type hypre -pc_hypre_type boomeramg -help
> > > > > > which will give you all the boomeramg options.
> > > > > >
> > > > > > When I use it I get intermittent segfaults, which I couldn't
> > > > > > resolve
> > > >
> > > > with
> > > >
> > > > > > the Hypre guys, so good luck.
> > > > > >
> > > > > > Yaron
> > > > > >
> > > > > > On 9/19/06, Matt Funk <mafunk at nmsu.edu> wrote:
> > > > > > > Hi,
> > > > > > >
> > > > > > > i am trying to use boomeramg from hypre in petsc. What i am doing
> > > >
> > > > right
> > > >
> > > > > > > now is
> > > > > > > simply do:
> > > > > > >
> > > > > > > m_ierr = PCSetType(m_pc,PCHYPRE);//CHKERRQ(ierr)
> > > > > > > m_ierr = PCHYPRESetType(m_pc,"boomeramg");
> > > > > > >
> > > > > > > then i do my kspsetup etc...
> > > > > > >
> > > > > > > i was wondering what other things i need to configure/set to
> > > >
> > > > properly use
> > > >
> > > > > > > the
> > > > > > > hypre preconditioner with petsc. This is new to me, so i am not
> > > >
> > > > really
> > > >
> > > > > > > experienced with this (that is using external packages through
> > > >
> > > > petsc).
> > > >
> > > > > > > Also,
> > > > > > > these are the only hypre calls i found in the manual pages.
> > > > > > >
> > > > > > > Maybe somebody with more experience can share some of their
> > > > > > > wisdom
> > > >
> > > > ...,
> > > >
> > > > > > > or point to a place where i can read up on it?
> > > > > > >
> > > > > > >
> > > > > > > thanks
> > > > > > > mat
> 
> 




More information about the petsc-users mailing list