Skip to main content
Jump to: navigation, search

Difference between revisions of "PTP/new and noteworthy/4.0.0"

(GEM)
 
(32 intermediate revisions by 5 users not shown)
Line 1: Line 1:
Please add new features in PTP 4.0 here and we'll build our N&N/help item from this. Images too please!
+
The following are  new features available with PTP 4.0 and Photran 6.0 - available June 2010 with Eclipse Helios (3.6).
  
"New and Noteworthy" is a tradition for Eclipse projects - an interesting way to present our new features.  Screenshots and enticing examples are best!  But any information at all is welcome - we can get screenshots later.
+
"New and Noteworthy" is a tradition for Eclipse projects - an interesting way to present our new features.  
 +
== PTP Resource Managers ==
  
See also our  [[PTP/new_and_noteworthy/3.0.0 | New and Noteworthy for 3.0]]
+
The PBS and SLURM resource managers have been updated and improved. There have been numerous bug fixes to existing resource managers.
  
== General Category name ==
+
<center>[[Image:rms.png]]</center>
  
* Bullet item or two briefly describing the new feature. Screenshot image too, please! Please attach as .png images if possible.
+
=== PBS ===
* To upload an image file, see the "Upload file" link on the left side of the page.
+
  
[[Image:ptp-nn-sample.png]]
+
There is now support for submitting to and monitoring (parallel) jobs on resources with PBS (Portable Batch System).  
  
== General features ==
+
On the client side, the PBS Resource Manager can be configured to use different (customized) batch script templates, whose values can then be provided from a Run Configuration.  
* Externalization of strings enables translations
+
* Enhanced Scalability ...
+
  
== RDT ==
+
On-resource submission and monitoring takes place via a Java proxy, which is automatically deployed to the host when it is launched.
Remote Development Tools
+
* automatic deployment to remote target of the server components, if RemoteTools used for Connection
+
* xlUPC remote new project wizard
+
  
==PLDT (Parallel Language Development Tools) ==
+
Here is an example of the view for configuring and submitting a PBS Job:
=== UPC features ===
+
<center>[[Image:PBSJobSubmission.png]]</center>
New code templates
+
=== Support for CDT 7.0 ===
+
  
=== Support for Fortran ===
+
=== SLURM  ===
* Artifact identification: MPI in Fortran code
+
<center>
+
[[Image:pldt-fortran-mpi.png]]
+
</center>
+
* Artifact identification: OpenMP in Fortran code
+
  
<center>[[Image:pldt-fortran-openmp.png]]</center>
+
Support for SLURM 2.1 has been added.
  
=== Automated Testing ===
+
<center>[[image:Slurm_run_application_2.png]]</center>
JUnit tests for PLDT analysis features
+
  
== Photran 6 ==
+
== Remote Development Tools (RDT)  ==
  
Photran 6 adds two major features (Fortran 2008 support and C preprocessor support) and three new refactorings to Photran 5.  It also includes several more minor improvements, including a Fortran Analysis/Refactoring Problems view, documentation in the online help system, the ability for the parser to "skip over" many syntax errors, an improved New Fortran Project dialog, Unicode support, configurable fixed-form line length, per-project source form settings, outlining of declarations in interface blocks, more robust content assist facilities, the ability to jump to external program definitions using Open Declaration, better editor responsiveness when working on large projects, indexer/database crash recovery... and, of course, some bug fixes.
+
A new project wizard for remote projects has been added that simplifies the creation of remote projects.
  
=== Fortran 2008 Support ===
+
<center>[[image:New_remote_wiz.png]]</center>
  
The editor (syntax highlighting) and Outline view in Photran 6 support the new syntactic constructs in the Fortran 2008 ISO standard.  These include submodules, separate module subprograms, the BLOCK construct, complex part designators, concurrent loop control, and co-arrays.
+
Support for managed projects (using xlC toolchain).
  
<center>[[Image:Photran-fortran2008.png]]</center>
+
<center>[[image:Wiz_managed.png]]</center>
  
=== C Preprocessor Support ===
+
Remote indexer is automatically deployed to remote target for Remote Tools connections.
  
Photran 6 now supports C preprocessor directives in free form code (when configured appropriately), allowing the Outline view, search, open declaration, and content assist to work correctly on preprocessed code.  The filename extensions associated with C preprocessed code are configured in the project properties.
+
<center>[[image:Dstore.png]]</center>
  
<center>[[Image:Photran-source-form-config.png]]</center>
+
xlUPC remote new project wizard
  
=== New Refactorings ===
+
== Parallel Language Development Tools (PLDT) ==
  
Photran 6 includes three new refactorings, thanks to Gustavo Risetti (Universidade Federal de Santa Maria):
+
=== UPC features  ===
 +
New code templates
  
*'''Standardize Statements''' rewrites all variables declarations, so that there is only one variable declaration per line, and every variable declaration contains a double colon (::).
+
In the C editor, activate code templates by typing cntrl-c <i>twice</i>.
*'''Convert <small>DATA</small> to <small>PARAMETER</small>''' replaces a constant-valued declaration in a <small>DATA</small> statement with a <small>PARAMETER</small> statement.
+
For a list of <i>just</i> the UPC templates, type upc_ then cntrl-c <i>twice</i>.
*'''Remove Unused Variables''' deletes declarations of local variables that are never used.  
+
  
<center>[[Image:Photran-Remove-Unused-Variables.png]]</center>
+
A list of the available templates is provided.
 +
<center>
 +
[[Image:Upc_template1.png]]  
 +
</center>  
  
=== Other New Features  ===
+
If the highlighted template is chosen, it inserts code into the editor at the insertion point.
 +
Templated variables (highlighted in blue here) can be changed in one place and their use
 +
in the other places in the template will be changed accordingly.
 +
<center>
 +
[[Image:Upc_template2.png]]
 +
</center>
  
*The '''Fortran Analysis/Refactoring Problems view''' displays errors encountered by Photran's parser that may prevent refactorings, Fortran Search, the Fortran Declaration view, and other advanced features from working correctlyThis is distinct from the ordinary Problems view, which displays error messages produced by the user's Fortran compiler.
+
=== Support for CDT 7.0 ===
  
<center>[[Image:Photran-analysis-refactoring-problems-view.png]]</center>
+
=== Support for Fortran  ===
  
*'''Online Help.'''  The documentation from the Photran wiki is now included in the Eclipse help system (via Help > Contents), making it accessible to users on machines without Internet access.
+
*Artifact identification: MPI in Fortran code
 +
<center>
 +
[[Image:Pldt-fortran-mpi.png]]
 +
</center>
 +
*Artifact identification: OpenMP in Fortran code
 +
<center>[[Image:Pldt-fortran-openmp.png]]</center>
 +
=== Automated Testing  ===
  
<center>[[Image:Photran-offline-user-guide.png]]</center>
+
JUnit tests for PLDT analysis features
  
*'''Error recovery in the parser.''' The Fortran parser can now "recover" from many unrecognized statements. This allows the Outline view, content assist, and many other features to work on files that cannot be parsed completely (such as files using vendor-specific language extensions).
+
== Photran 6 ==
  
<center>[[Image:Photran-error-recovery.png]]</center>
+
Photran 6 adds two major features (Fortran 2008 support and C preprocessor support) and three new refactorings to Photran 5. It also includes several more minor improvements, including a Fortran Analysis/Refactoring Problems view, documentation in the online help system, the ability for the parser to "skip over" many syntax errors, an improved New Fortran Project dialog, Unicode support, configurable fixed-form line length, per-project source form settings, outlining of declarations in interface blocks, more robust content assist facilities, the ability to jump to external program definitions using Open Declaration, better editor responsiveness when working on large projects, indexer/database crash recovery... and, of course, some bug fixes.
  
*'''Improved content assist.''' The content assist facility is significantly more robust in Photran 6. In addition, the content assistant displays a short synopsis for each intrinsic procedure, as well as and the various combinations of arguments it may take.
+
=== Fortran 2008 Support  ===
  
<center>[[Image:Photran-content-assist-intrinsics.png]]</center>
+
The editor (syntax highlighting) and Outline view in Photran 6 support the new syntactic constructs in the Fortran 2008 ISO standard. These include submodules, separate module subprograms, the BLOCK construct, complex part designators, concurrent loop control, and co-arrays.
 +
<center>[[Image:Photran-fortran2008.png]]</center>  
 +
=== C Preprocessor Support  ===
  
*In Photran 6, the '''New Fortran Project dialog''' only displays Fortran project types.  In previous versions, it contained both C/C++ and Fortran project types.
+
Photran 6 now supports C preprocessor directives in free form code (when configured appropriately), allowing the Outline view, search, open declaration, and content assist to work correctly on preprocessed code. The filename extensions associated with C preprocessed code are configured in the project properties.  
 +
<center>[[Image:Photran-source-form-config.png]]</center>
 +
=== New Refactorings  ===
  
<center>[[Image:Photran-new-fortran-project-dialog2.png]]</center>
+
Photran 6 includes three new refactorings, thanks to Gustavo Risetti (Universidade Federal de Santa Maria):
  
 +
*'''Standardize Statements''' rewrites all variables declarations, so that there is only one variable declaration per line, and every variable declaration contains a double colon (::).
 +
*'''Convert <small>DATA</small> to <small>PARAMETER</small>''' replaces a constant-valued declaration in a <small>DATA</small> statement with a <small>PARAMETER</small> statement.
 +
*'''Remove Unused Variables''' deletes declarations of local variables that are never used.
 +
<center>[[Image:Photran-Remove-Unused-Variables.png]]</center>
 +
=== Other New Features  ===
 +
 +
*The '''Fortran Analysis/Refactoring Problems view''' displays errors encountered by Photran's parser that may prevent refactorings, Fortran Search, the Fortran Declaration view, and other advanced features from working correctly. This is distinct from the ordinary Problems view, which displays error messages produced by the user's Fortran compiler.
 +
<center>[[Image:Photran-analysis-refactoring-problems-view.png]]</center>
 +
*'''Online Help.''' The documentation from the Photran wiki is now included in the Eclipse help system (via Help &gt; Contents), making it accessible to users on machines without Internet access.
 +
<center>[[Image:Photran-offline-user-guide.png]]</center>
 +
*'''Error recovery in the parser.''' The Fortran parser can now "recover" from many unrecognized statements. This allows the Outline view, content assist, and many other features to work on files that cannot be parsed completely (such as files using vendor-specific language extensions).
 +
<center>[[Image:Photran-error-recovery.png]]</center>
 +
*'''Improved content assist.''' The content assist facility is significantly more robust in Photran 6. In addition, the content assistant displays a short synopsis for each intrinsic procedure, as well as and the various combinations of arguments it may take.
 +
<center>[[Image:Photran-content-assist-intrinsics.png]]</center>
 +
*In Photran 6, the '''New Fortran Project dialog''' only displays Fortran project types. In previous versions, it contained both C/C++ and Fortran project types.
 +
<center>[[Image:Photran-new-fortran-project-dialog2.png]]</center>
 
*'''Configurable fixed-form line length.''' The default fixed-form line length of 72 characters can now be changed in the workspace preferences.
 
*'''Configurable fixed-form line length.''' The default fixed-form line length of 72 characters can now be changed in the workspace preferences.
 +
<center>[[Image:Photran-fixed-form-line-length.png]]</center>
 +
*'''Per-project source form settings.''' Source form settings are now configured on each project, not workspace-wide. It is also possible to change the "default" source form-filename extension associations (e.g., .f files can be changed to free form).
 +
<center>[[Image:Photran-source-form-config.png]]</center>
 +
*'''Unicode support.''' Photran's indexer and refactoring engine now permit Unicode characters in comments in Fortran source code.
 +
<center>[[Image:Photran-unicode-comment.png]]</center>
 +
*'''Outline view improvements.''' Declarations in <small>INTERFACE</small> blocks are now shown in the Outline view. Submodules (new in Fortran 2008) are also shown.
 +
<center>[[Image:Photran-interface-outline.png]]</center>
 +
*External program definitions can be located using Open Declaration.
 +
*The editor is much more responsive when working on large projects with analysis/refactoring enabled. (The computation that was blocking the user interface has been moved into a background thread.)
 +
*The indexer can now detect when Eclipse crashed or was shut down uncleanly, and it will automatically rebuild its database in case it was corrupted. (This prevents many cryptic "indexer errors" that were discussed on the Photran mailing list.)
  
<center>[[Image:Photran-fixed-form-line-length.png‎]]</center>
+
== Graphical Explorer of MPI Programs (GEM)  ==
  
*'''Per-project source form settings.''' Source form settings are now configured on each project, not workspace-wide.  It is also possible to change the "default" source form-filename extension associations (e.g., .f files can be changed to free form).
+
'''GEM has replaced ISP'''
  
<center>[[Image:Photran-source-form-config.png]]</center>
+
Full Support for C++ MPI Applications. Now GEM offers push-button dynamic formal verification for both C and C++ MPI applications (Managed Build and Makefile Projects).
  
*'''Unicode support.''' Photran's indexer and refactoring engine now permit Unicode characters in comments in Fortran source code.
+
<center>
 +
[[Image:Run-verify.png]]
 +
</center>
  
<center>[[Image:Photran-unicode-comment.png]]</center>
+
Support for terminating long-running GEM operations
  
*'''Outline view improvements.''' Declarations in <small>INTERFACE</small> blocks are now shown in the Outline view.  Submodules (new in Fortran 2008) are also shown.
+
<center>
 +
[[Image:Gem terminate-button.png]]
 +
</center>  
  
<center>[[Image:Photran-interface-outline.png‎]]</center>
+
Reworked UI Threading. GEM operations that were blocking the UI have been moved into a background thread.
  
*External program definitions can be located using Open Declaration.
+
Updated Eclipse Help Contribution
*The editor is much more responsive when working on large projects with analysis/refactoring enabled.  (The computation that was blocking the user interface has been moved into a background thread.)
+
*The indexer can now detect when Eclipse crashed or was shut down uncleanly, and it will automatically rebuild its database in case it was corrupted.  (This prevents many cryptic "indexer errors" that were discussed on the Photran mailing list.)
+
  
== GEM ==
+
<center>
Graphical Explorer of MPI Programs
+
[[Image:Gem-help.png]]
 +
</center>
  
*'''Full Support for C++ MPI Applications.''' C++ support for both Managed Build and Makefile Projects. Now GEM offers push-button dynamic formal verification for both C and C++ MPI applications.
+
== Parallel Performance Wizard (PPW)  ==
  
*'''Support for terminating long-running GEM operations'''
+
PPW is a tool for analyzing the performance of partitioned global-address-space (PGAS) applications -- mainly those written in UPC. All of PPW's capabilities can be used within Eclipse by creating a Profile Configuration and choosing PPW under 'Tool Selection'.
  
<center>
+
Ability to specify instrumentation options for PPW's compiler wrapper scripts.
[[Image:Gem_terminate-button.png]]
+
 
</center>
+
<center>[[Image:PPWinstOptions.png]]</center>
 +
 
 +
Ability to choose options for the instrumented program run.
 +
 
 +
<center>[[Image:PPWrunOptions.png]]</center>  
 +
 
 +
After the program is then run with PPW enabled, the resulting performance data file appears in the workspace, and the PPW GUI is launched.
  
* '''Updated help for new and old features'''
+
<center>[[Image:PPWguiEclipse.png]]</center>
  
* contributed by U. Utah
+
Source-code lines selected in the PPW GUI are highlighted within the appropriate file in the Eclipse editor.
  
== PPW ==
+
<center>[[Image:PPWsourceEclipseEditor.png]]</center>
Parallel Performance Wizard
+
* contributed by U. Florida
+

Latest revision as of 23:23, 21 June 2011

The following are new features available with PTP 4.0 and Photran 6.0 - available June 2010 with Eclipse Helios (3.6).

"New and Noteworthy" is a tradition for Eclipse projects - an interesting way to present our new features.

PTP Resource Managers

The PBS and SLURM resource managers have been updated and improved. There have been numerous bug fixes to existing resource managers.

Rms.png

PBS

There is now support for submitting to and monitoring (parallel) jobs on resources with PBS (Portable Batch System).

On the client side, the PBS Resource Manager can be configured to use different (customized) batch script templates, whose values can then be provided from a Run Configuration.

On-resource submission and monitoring takes place via a Java proxy, which is automatically deployed to the host when it is launched.

Here is an example of the view for configuring and submitting a PBS Job:

PBSJobSubmission.png

SLURM

Support for SLURM 2.1 has been added.

Slurm run application 2.png

Remote Development Tools (RDT)

A new project wizard for remote projects has been added that simplifies the creation of remote projects.

New remote wiz.png

Support for managed projects (using xlC toolchain).

Wiz managed.png

Remote indexer is automatically deployed to remote target for Remote Tools connections.

Dstore.png

xlUPC remote new project wizard

Parallel Language Development Tools (PLDT)

UPC features

New code templates

In the C editor, activate code templates by typing cntrl-c twice. For a list of just the UPC templates, type upc_ then cntrl-c twice.

A list of the available templates is provided.

Upc template1.png

If the highlighted template is chosen, it inserts code into the editor at the insertion point. Templated variables (highlighted in blue here) can be changed in one place and their use in the other places in the template will be changed accordingly.

Upc template2.png

Support for CDT 7.0

Support for Fortran

  • Artifact identification: MPI in Fortran code

Pldt-fortran-mpi.png

  • Artifact identification: OpenMP in Fortran code
Pldt-fortran-openmp.png

Automated Testing

JUnit tests for PLDT analysis features

Photran 6

Photran 6 adds two major features (Fortran 2008 support and C preprocessor support) and three new refactorings to Photran 5. It also includes several more minor improvements, including a Fortran Analysis/Refactoring Problems view, documentation in the online help system, the ability for the parser to "skip over" many syntax errors, an improved New Fortran Project dialog, Unicode support, configurable fixed-form line length, per-project source form settings, outlining of declarations in interface blocks, more robust content assist facilities, the ability to jump to external program definitions using Open Declaration, better editor responsiveness when working on large projects, indexer/database crash recovery... and, of course, some bug fixes.

Fortran 2008 Support

The editor (syntax highlighting) and Outline view in Photran 6 support the new syntactic constructs in the Fortran 2008 ISO standard. These include submodules, separate module subprograms, the BLOCK construct, complex part designators, concurrent loop control, and co-arrays.

Photran-fortran2008.png

C Preprocessor Support

Photran 6 now supports C preprocessor directives in free form code (when configured appropriately), allowing the Outline view, search, open declaration, and content assist to work correctly on preprocessed code. The filename extensions associated with C preprocessed code are configured in the project properties.

Photran-source-form-config.png

New Refactorings

Photran 6 includes three new refactorings, thanks to Gustavo Risetti (Universidade Federal de Santa Maria):

  • Standardize Statements rewrites all variables declarations, so that there is only one variable declaration per line, and every variable declaration contains a double colon (::).
  • Convert DATA to PARAMETER replaces a constant-valued declaration in a DATA statement with a PARAMETER statement.
  • Remove Unused Variables deletes declarations of local variables that are never used.
Photran-Remove-Unused-Variables.png

Other New Features

  • The Fortran Analysis/Refactoring Problems view displays errors encountered by Photran's parser that may prevent refactorings, Fortran Search, the Fortran Declaration view, and other advanced features from working correctly. This is distinct from the ordinary Problems view, which displays error messages produced by the user's Fortran compiler.
Photran-analysis-refactoring-problems-view.png
  • Online Help. The documentation from the Photran wiki is now included in the Eclipse help system (via Help > Contents), making it accessible to users on machines without Internet access.
Photran-offline-user-guide.png
  • Error recovery in the parser. The Fortran parser can now "recover" from many unrecognized statements. This allows the Outline view, content assist, and many other features to work on files that cannot be parsed completely (such as files using vendor-specific language extensions).
Photran-error-recovery.png
  • Improved content assist. The content assist facility is significantly more robust in Photran 6. In addition, the content assistant displays a short synopsis for each intrinsic procedure, as well as and the various combinations of arguments it may take.
Photran-content-assist-intrinsics.png
  • In Photran 6, the New Fortran Project dialog only displays Fortran project types. In previous versions, it contained both C/C++ and Fortran project types.
Photran-new-fortran-project-dialog2.png
  • Configurable fixed-form line length. The default fixed-form line length of 72 characters can now be changed in the workspace preferences.
Photran-fixed-form-line-length.png
  • Per-project source form settings. Source form settings are now configured on each project, not workspace-wide. It is also possible to change the "default" source form-filename extension associations (e.g., .f files can be changed to free form).
Photran-source-form-config.png
  • Unicode support. Photran's indexer and refactoring engine now permit Unicode characters in comments in Fortran source code.
Photran-unicode-comment.png
  • Outline view improvements. Declarations in INTERFACE blocks are now shown in the Outline view. Submodules (new in Fortran 2008) are also shown.
Photran-interface-outline.png
  • External program definitions can be located using Open Declaration.
  • The editor is much more responsive when working on large projects with analysis/refactoring enabled. (The computation that was blocking the user interface has been moved into a background thread.)
  • The indexer can now detect when Eclipse crashed or was shut down uncleanly, and it will automatically rebuild its database in case it was corrupted. (This prevents many cryptic "indexer errors" that were discussed on the Photran mailing list.)

Graphical Explorer of MPI Programs (GEM)

GEM has replaced ISP

Full Support for C++ MPI Applications. Now GEM offers push-button dynamic formal verification for both C and C++ MPI applications (Managed Build and Makefile Projects).

Run-verify.png

Support for terminating long-running GEM operations

Gem terminate-button.png

Reworked UI Threading. GEM operations that were blocking the UI have been moved into a background thread.

Updated Eclipse Help Contribution

Gem-help.png

Parallel Performance Wizard (PPW)

PPW is a tool for analyzing the performance of partitioned global-address-space (PGAS) applications -- mainly those written in UPC. All of PPW's capabilities can be used within Eclipse by creating a Profile Configuration and choosing PPW under 'Tool Selection'.

Ability to specify instrumentation options for PPW's compiler wrapper scripts.

PPWinstOptions.png

Ability to choose options for the instrumented program run.

PPWrunOptions.png

After the program is then run with PPW enabled, the resulting performance data file appears in the workspace, and the PPW GUI is launched.

PPWguiEclipse.png

Source-code lines selected in the PPW GUI are highlighted within the appropriate file in the Eclipse editor.

PPWsourceEclipseEditor.png

Back to the top