[petsc-dev] Nested event logging and human friendly output
Koos Huijssen
koos.huijssen at vortech.nl
Mon Sep 14 07:45:41 CDT 2015
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.
- 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 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 koos.huijssen at vortech.nl
web www.vortech.nl
____________________________________________________________________
-------------- next part --------------
A non-text attachment was scrubbed...
Name: timers.tar.gz
Type: application/x-gzip
Size: 290872 bytes
Desc: not available
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20150914/12a0bf2d/attachment.gz>
More information about the petsc-dev
mailing list