blob: 7e25f36d01b883f47b57f02ad158b77b943e274c [file] [log] [blame]
<html>
<head>
<title>PTP - Overview and Features</title>
<link rel="stylesheet" type="text/css" href="help.css">
</head>
<body>
<h1 id="top">PTP - Overview and Features</h1>
<p><p>The Parallel Tools Platform (PTP) is a framework for integrating tools to aid the development of parallel applications into Eclipse. The PTP framework provides a range of services to support tools in four main areas:
<ul>
<li>Runtime tools that allow developers to monitor and control the execution of parallel applications
<li>Debugging tools for locating runtime errors in parallel applications
<li>Analysis tools that provide advanced editing, error checking, and programmer assistance for developing parallel applications
<li>Performance tools for analyzing and optimizing the performance of parallel applications
</ul>
<h2>Runtime Tools</h2>
These tools aid the developer in launching and monitoring parallel applications on a range of local and remote systems. PTP provides a parallel model that represents the state of a (possibly remote) parallel system, and the applications running on that system. This model includes the notion of a <i>resource manager</i> which is used to control interaction with the target system. Developers can use the normal Eclipse launch configuration mechanism to specify the system-specifc attributes necessary to launch a parallel job, and monitor the status of the system and job using a number of different views.
<h2>Debugging Tools</h2>
PTP provides an integrated parallel debugger that provides a range of basic debugging functions for locating errors in parallel applications. This includes the ability to set breakpoints and control program execution (single step, resume, etc.) across an arbitrary set of application processes. The developer can also drill down into individual process to obtain more detailed information about the process state, variable information, etc.
<h2>Analysis Tools</h2>
These tools are built on the C/C++ Development Tools (CDT) abstract syntax tree infrastructure and use static
analysis techniques to provide a range of advanced editing and error checking features. Examples include content
assist for MPI, OpenMP, LAPI, and UPC APIs and directives, barrier analysis for MPI programs, and concurrency analysis for OpenMP
programs. Future versions of PTP will combine this with the External Tools Framework to provide dynamic
analysis functions, such as parallelization assistance.
<h2>External Tools Framework and Performance Tools</h2>
The External Tools Framework (formerly the Performance Tools Framework) provides a simple mechanism
for integrating external performance tools, and other arbitrary external tools, with PTP.
By providing an XML description file, the tool is able to be integrated with the editor, build, and
launch systems. Currently, support is provided for the Tuning and Analysis Utilities (TAU) performance analysis
system.
<p><a href="#top">Back to Top</a> | <a href="toc.html">Back to Table of Contents</a>
</body>
</html>