using hypre through petsc
Barry Smith
bsmith at mcs.anl.gov
Wed Oct 4 07:17:13 CDT 2006
The listed ones are the only ones accessible through PETSc.
Note that the listed ones are general purpose, you give them a matrix
and off they go. The ones you mention SMG and PFMG are not
general purpose they require more information than just a matrix
so they could not possibly be used simply by switching a command line
option.
Barry
On Tue, 3 Oct 2006, Matt Funk wrote:
> Hi guys,
>
> first of all thanks for all the help. I was wondering another thing now
> though. The hypre options that i PETSC prints are:
>
> -pc_type Preconditioner:(one of) none jacobi pbjacobi bjacobi sor lu shell
> mg
> eisenstat ilu icc cholesky asm ksp composite redundant nn mat fieldsplit
> hypre tfs (PCSetType)
> HYPRE preconditioner options
> -pc_hypre_type <pilut> (choose one of) pilut parasails boomeramg euclid
>
>
> I was wondering how come the other hypre preconditioners such as SMG or PFMG
> are not listed. (Or did i miss something)?
>
> thanks
> mat
>
> On Friday 29 September 2006 19:56, Barry Smith wrote:
> > 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