[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Reporting cpu times to profile KSPSolve (and others)
- To: petsc-dev@xxxxxxxxxxx
- Subject: Re: Reporting cpu times to profile KSPSolve (and others)
- From: "Matthew Knepley" <knepley@xxxxxxxxx>
- Date: Thu, 8 May 2008 22:19:45 -0500
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; bh=Glc/SKlXlVkRj3WnJwR7zDnaN9lQmY0fi0MSpSKNVUA=; b=IYejGGZk85zTBnBffeV91xLQbMWTTWfnIVhZZxRycmV0SBtfACF8Eg/gYJstHMzR/fPxI3jY/7HfCFtPq4fFMr5rqrytZUb6RBJkM9ehrDrqs42qOFD7J1ZvAE5Mrp0UTqC/FicW7V3O43dvjZwBUjr4SMR6iezpm1PIJtuYVS0=
- Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=DthBOMJDoK3a/IKKw8pArnFkAwJd04QNZOY3yToWud4rIoqXrREfXctRT06+jwRda6Ool6p3a9NUMHI6K6E38dbW+XU0r9tVDz95OyUgTazIVZQ9TSIBWOv/f3nwk4yGleWIMU/WacacgqmZJxMnB6GDU3vbeuyb8yTMDoe4Vsc=
- In-reply-to: <956373f0805082009g38410db7u3cb58098bd36b876@mail.gmail.com>
- References: <956373f0805082009g38410db7u3cb58098bd36b876@mail.gmail.com>
- Reply-to: petsc-dev@xxxxxxxxxxx
- Sender: owner-petsc-dev@xxxxxxxxxxx
On Thu, May 8, 2008 at 10:09 PM, Dave May <dave.mayhem23@xxxxxxxxx> wrote:
> Hey petsc folk,
> What is the best way to obtain timing information to profile the
> performance
> of KSPSolve (or SNESSolve)? Currently I have written some specific KSP
> monitors,
> but it I think it would be useful to have access to this information all the
> time without
> having to go through the monitor. It seems like each object should know how
> to time
> some of its operations.
>
> It would be very useful to have functions such as
> KSPGetCPUTime(KSP ksp,PetscLogDouble *time)
> to report the total solution time required by the KSPSolve() and
> KSPGetCPUTimeHistory(KSP ksp,PetscLogDouble *time[],PetscInt *na)
> which is like KSPGetResidualHistory() but returns the accumulated cpu time
> for each
> iterate
>
> It would also be useful to have a default KSP monitor which could report the
> time per iterate
> or accumulate time. For example something like
> 40 KSP Residual norm 1.519638506430e-01 Time 1.000000000000e-03
> 41 KSP Residual norm 1.510346481853e-01 Time 1.510346481853e-02
>
> Is there a better approach to what I've been doing and are there plans to
> add any
> additional features to help profile individual operations on each object?
Maybe you could motivate it by giving a use case? So far, I have never needed
anything but the KSPSolve() event and stages to separately aggregate different
types of solves.
Matt
> Cheers,
> Dave
--
What most experimenters take for granted before they begin their
experiments is infinitely more interesting than any results to which
their experiments lead.
-- Norbert Wiener