On Mon, Sep 14, 2015 at 8:14 AM, Koos Huijssen <[email protected]> wrote:
> Dear Matt, > > On 14-9-2015 14:50, Matthew Knepley wrote: > > On Mon, Sep 14, 2015 at 7:45 AM, Koos Huijssen <[email protected]> > wrote: > >> Dear PETSc development team, >> >> We have developed an extension of the PETSc event logging facilities that >> has the following advanced features: >> >> - It allows logging of events in the form of a nested tree. So if some >> function is called from multiple locations in the code, these instances are >> distinguished. This in contrast with the standard event logger, which only >> logs the amount of total call time. >> > > How is this different from using stages? > > Stages have to be set up explicitly, and there can only be 10 stages. The > nested event facility automatically provides a 'staged' appearance, as it > keeps track of the whole tree of parent routines. As a user you don't have > to bother about it, you just do your LogEventBegin - LogEventEnd and the > rest is taken care by the system. Yet, the instrumentation is not heavy, so > it doesn't introduce huge overhead in the code. > Okay, so this is automatic staging anytime an event is used in a different place in the call chain? That sounds nice. It would be good if it could be overridden to identify events since sometimes the output can get complex. Thanks, Matt > > > - It allows the output report to be formatted in XML format. This output >> can then be viewed in a human-friendly form in a web browser >> with the use of the XSL Transformation script performance_xml2html.xsl. >> The html features an nested timings tree that can be expanded and collapsed >> as desired. >> > > This sounds fine and useful. We will look at the code. > > Great! Let me hear if you need further clarification. > > Kind regards, > > Koos > > > > Thanks, > > Matt > > >> This tool has been very useful for us to analyze the code and pinpoint >> performance bottle necks. We think that it can be useful for others as >> well, and therefore we are providing the code here for integration in the >> open source distribution of PETSc. >> >> For more information I refer to the included manual. We have also >> provided a test program and a makefile for convenience. The test program >> can be run using MPI with for instance 3-6 processes. >> >> I apologize for not using the git repo to submit the developed code. I >> also apologize for not adhering to the PETSc coding standards (or at least >> not as far as I know), but I hope that it is not too far off.. Apart from >> the whole capital/underscore standardization stuff one issue may require >> special attention, namely the (ab)use of the format PETSc_VIEWER_ASCII_IMPL >> for signaling the XML format in XMLViewer.c. I couldn't find an already >> existing and better fitting format, but it could be necessary to add a new >> format here for this purpose. >> >> Can you take it up from here and realize the integration of the code in >> the PETSc distribution? >> >> With kind regards, >> >> Koos Huijssen >> >> -- >> ____________________________________________________________________ >> >> VORtech BV - Scientific software engineers >> ____________________________________________________________________ >> >> Dr.ir. Koos Huijssen >> >> P.O. Box 260 >> 2600 AG Delft >> The Netherlands >> >> phone +31(0)15-285 0125 >> mobile +31(0)6-3333 0803 >> email [email protected] >> web www.vortech.nl >> ____________________________________________________________________ >> >> > > > -- > 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 > > > -- > ____________________________________________________________________ > > VORtech BV - Scientific software engineers > ____________________________________________________________________ > > Dr.ir. Koos Huijssen > > P.O. Box 260 > 2600 AG Delft > The Netherlands > > phone +31(0)15-285 0125 > mobile +31(0)6-3333 0803 > email [email protected] > web www.vortech.nl > ____________________________________________________________________ > > -- 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
