Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [ptp-dev] Performance Framework progress

It's possible that I'll want to adjust the locations of various components.  Right now the part that parses the XML is located in the toolopts package.  The ToolMaker class in there is fed an xml file and creates a set of objects, each containing both the tool workflow information and any tool configuration panes.  Those objects are used in the core .perf(ormance) plugin in a few different places.  The .ui.PerformanceLaunchConfigurationTab class uses them to generate custom tool configuration tabs.  Once the launch has started the .internal.PerformanceLaunchSteps class uses the actual workflow data that was objectified out of the XML file to build, execute and run post-launch analysis.  These three steps are done by buildInstrumented, performLaunch and postLaunch routines, respectively.  It sounds like the postLaunch routine is the one you're most interested in.

Note that I think at least one change to the xml file format is necessary.  Right now configuration tab definitions exist only inside tool workflow definitions.  I need to move the configuration-tab definitions outside so they can be more easily used by multiple workflows.  Also, I should probably work on an extension point to expand the XML file format itself...

Please let me know if you need additional information.  I've only added the extension points used by TAU so far.  It's likely that other tools will need to be able to build onto other parts of the framework so I'm interested to here where that requires attention.

Also, yes, this system should work for tools not related to performance analysis.  You could use it to make a gui-wrapper for just about any command-line application, or series of applications, you wanted... as long as you didn't mind launching it from the PTP or CDT launch interface.

-Wyatt

On Feb 6, 2008 11:44 AM, Beth Tibbitts <tibbitts@xxxxxxxxxx> wrote:
Where is the part that allows specification of external tools to launch?
I remember two xml files in the original tau plugins that looked very
useful generally:
1. generate GUI - that sounds like org.eclipse.ptp.perf.toolopts
2. specify external tools to launch - i think it was the tool.xml file -
had the compile, execute, and analyze "phases" for external tools.
               Where is that?

I am looking to implement a small extension for a first 'test'
implementation utilizing mainly the tool configuration (gui) and launching
parts first.
I'll be the guinea pig. :)  So these are the two parts that seem to be
general enough for reuse in a simple case.
Note that simple tools that aren't necessarily performance tools work here
too, that's your assumption too, right?



..Beth

Beth Tibbitts  (859) 243-4981  (TL 545-4981)
High Productivity Tools / Parallel Tools  http://eclipse.org/ptp
IBM T.J.Watson Research Center
Mailing Address:  IBM Corp., 745 West New Circle Road, Lexington, KY 40511



            wspear
            <wspear@cs.uorego
            n.edu>                                                     To
            Sent by:                  "Parallel Tools Platform general
            ptp-dev-bounces@e         developers" <ptp-dev@xxxxxxxxxxx>
            clipse.org                                                 cc

                                                                  Subject
            02/06/08 02:09 PM         Re: [ptp-dev] Performance Framework
                                      progress

            Please respond to
             Parallel Tools
            Platform general
               developers
            <ptp-dev@eclipse.
                  org>






By my present plan the core framework would have:
org.eclipse.ptp.perf  (The core of the performance framework, operates with
the CDT launch system)
org.eclipse.ptp.perf.parallel (The extension to the performance framework
to operate with the PTP launch system)
org.eclipse.ptp.perf.toolopts (The system for parsing the tool xml files
and generating configuration GUIs therefrom)
and possibly
org.eclipse.ptp.perf.managedbuilder.other.ui (Adds an 'other' c/c++ build
configuration type that has no assumptions about valid compiler options
(some compilers don't handle things like optimization flags by default))
org.eclipse.ptp.perf.managedbuilder.photran.other.ui (The same, for photran
build configuration)

The TAU specific components are:
org.eclipse.perf.tau (Contains the tau-specific launch configuration
elements and trace/profile processing for the 'analysis' step for TAU)
org.eclipse.perf.tau.papiselect (Defines a selector tool for PAPI event
counters)
org.eclipse.perf.tau.perfdmf (Contains the system for storing tau profiles
in a perfdmf database and launching paraprof with the ability to callback
to the source editor)
org.eclipse.perf.tau.jars (Contains the TAU-provided jar files required by
the perfdmf plugin)
org.eclipse.perf.tau.selinst (Plugin for generating a selective
instrumentation file for C/C++ via context menus in the source tree and
source editor)
org.eclipse.perf.tau.selinstfort (Same as above, for fortran code)

All but the main tau plugin can probably be generalized and moved to the
core framework eventually.  The PAPI plugin is already fairly accessible to
other tools, but there is more to be done to make it general-tool friendly.
For the perfdmf/paraprof functionality, I would want to work around the
need to haul around the jarfiles for those tools before moving it to the
core.

Regards,

Wyatt

On Feb 6, 2008 10:31 AM, Beth Tibbitts <tibbitts@xxxxxxxxxx> wrote:
 That package structure works for me.
 Are there just two projects though? The TAU plugins alone were several..
 How many (plugin) projects are there now and what would they be named?..


 ..Beth

 Beth Tibbitts  (859) 243-4981  (TL 545-4981)
 High Productivity Tools / Parallel Tools  http://eclipse.org/ptp
 IBM T.J.Watson Research Center
 Mailing Address:  IBM Corp., 745 West New Circle Road, Lexington, KY
 40511



             wspear
             <wspear@cs.uorego
             n.edu>                                                     To
             Sent by:                  "Parallel Tools Platform general
             ptp-dev-bounces@e         developers" <?..ptp-dev@xxxxxxxxxxx
 >
             clipse.org                                                 cc

                                                                   Subject
             02/06/08 01:15 PM         [ptp-dev] Performance Framework
                                       progress

             Please respond to
              Parallel Tools
             Platform general
                developers
             <ptp-dev@eclipse.
                   org>






 Greetings,

 I have added extension points to the performance framework plugins to
 support advanced features provided by other tools, on top of the generic
 tool support provided by the tool definition file.  The TAU specific
 components are now a discrete set of plugins which make use of the
 extension points in the core framework.  There are still a few minor
 tweaks
 I would like to apply, but soon it will be ready to put up on CVS.  There
 has been some call for changing the package structure a bit.  I had in
 mind
 putting the performance framework core under tools in
 org.eclipse.ptp.perf
 and the TAU specific components in org.eclipse.ptp.perf.tau.  Please let
 me
 know if that seems appropriate.

 Thanks,
 Wyatt_______________________________________________
 ptp-dev mailing list
 ptp-dev@xxxxxxxxxxx
 https://dev.eclipse.org/mailman/listinfo/ptp-dev


 _______________________________________________
 ptp-dev mailing list
 ptp-dev@xxxxxxxxxxx
 https://dev.eclipse.org/mailman/listinfo/ptp-dev

_______________________________________________
ptp-dev mailing list
ptp-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/ptp-dev


_______________________________________________
ptp-dev mailing list
ptp-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/ptp-dev



Back to the top