| <html> |
| <head> |
| <title>Overview and Features</title> |
| <link rel="stylesheet" type="text/css" href="help.css"> |
| </head> |
| <body> |
| <h1 id="top">Overview and Features</h1> |
| <p><p>The Parallel Tools Platform (PTP) extends Eclipse to enabled the development of parallel applications. It is primarily aimed at message passing codes, |
| such as those using MPI, but also provides support for Open MP programs. PTP also includes support for Fortran programs. |
| <p> |
| PTP provides a range of tools and services to support |
| application development in the following four main areas: |
| <ul> |
| <li>Runtime services 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>A framework for the integration of additional tools, such as performance tools for analyzing and optimizing the performance of parallel applications |
| </ul> |
| <p>PTP tools are provided for projects located both on the local machine (where Eclipse and PTP are installed) |
| as well as on a remote target machine. Remote machines can be utilized for a variety of services including |
| source file hosting, remote builds, execution and monitoring, and debugging. |
| |
| <h2>Runtime Services</h2> |
| |
| These services allow the developer to launch and monitor parallel applications on both local and remote systems. PTP provides configuration |
| files to support a wide range of job schedulers, including PBS, TORQUE, SLURM, GridEngine, LoadLeveler, and runtime systems, including IBM Parallel |
| Environment, Open MPI, and MPICH2, BG/Q, and BG/P. A number of configuration files are also provided to support specific XSEDE systems (http://xsede.org). |
| The runtime services framework also allow users to easily add support for their own systems. |
| |
| Application monitoring allows the user to see the job queues and the status of the nodes (including the location of running jobs, if supported) |
| on the target systems. Users are also able to control jobs that they have launched via the Eclipse interface. |
| |
| <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, OpenACC and OpenSHMEM 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 (ETFw) 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. |
| A Feedback view provides display of results from arbitrary tools in an Eclipse view and maps the |
| results to source code lines for simplified interaction between the tool's results and the source code, |
| as well as providing extension points for integration of other tools based on results. |
| Currently, support is provided for the Tuning and Analysis Utilities (TAU) performance analysis |
| system and the Parallel Performance Wizard (PPW). |
| |
| <p><a href="#top">Back to Top</a> | <a href="toc.html">Back to Table of Contents</a> |
| |
| </body> |
| |
| </html> |