Sun Java Solaris Communities My SDN Account
 
Sun Studio Compilers and Tools

Fortran - Features & Benefits

 
Table of Contents
 
 

Forte for High Performance Computing (HPC) and Forte Fortran provide a comprehensive, productive environment for developing high-performance applications in Fortran and C for the Solaris Operating Environment. Forte HPC also includes C++.

 
New Features in Forte Fortran/HPC 6 update 2
Feature
Function
Benefit
Support for common language extensions in C and C++.
Eases porting code from other compilers to the Forte Developer tools.
Enables you to port to Solaris quicker.
Interprocedural optimization is now available in C, C++, and Fortran 95.
A new compiler flag performs whole-program optimizations by invoking an interprocedural analysis pass. Optimizations are performed across all object files in the link step, and are not limited to just the source files on the compile command.
Improved runtime performance through interprocedural optimization.
1) ALLOCATABLE attribute,
2) VALUE type declaration,
3) Stream I/O.
The ALLOCATABLE attribute for Fortran 95 has been extended, and the VALUE type declaration attribute from Fortran 2000 is now recognized. Additionally, stream I/O commands from Fortran 2000 have been implemented.
Fortran 2000 capabilities provides increased flexibility for Fortran 9X programmers.
VAX-style structures and unions are now supported in Fortran 95.
This aides in migration of Sun F77 and Compaq Visual Fortran.
Migrate from F77 to F95 quicker.
Global Program Checking (GPC).
GPC in Fortran 95 provides a valuable way to analyze a program encompassing many source files for inconsistencies and possible runtime problems.
Find program errors quickly.
The debugger, dbx, now supports a subset of GDB commands.
You can switch between dbx and GDB command sets.
GDB users can be more productive when debugging applications.
In dbx, the 8 MB limit in runtime checking for memory access errors and leaks on UltraSPARC systems has been eliminated.
Runtime checking for memory errors of large applications is more feasible.
Reduces debugging time for large applications.
The Performance Analyzer features improved support for MPI programs and compiler commentary.
Performance bottlenecks are more quickly discovered.
Developer productivity is increased.
Starting with the Solaris 7 Operating Environment, the linker (LD) accepts a construct allowing for symbols to be partially initialized.
Elements such as very large sparse matrices can be initialized at runtime rather than allocating a larger area in the a.out file.
Significant savings in the size of the a.out file may be realized for applications with large sparse matrices.
Euro Currency Symbol Support
Enable entry, display, and printing of the euro currency sign through the support in the Solaris 7 and 8 operating environments.
Supports the drive for a single currency under the Economic and Monetary Union (EMU). For more information, see Sun's webpage on Euro Currency Support.
 
Previous Features in Forte Fortran/HPC 6 update 1
Feature
Function
Benefit
Support for UltraSPARC III Hardware Counters in the Performance Analyzer
Hardware counter overflow profiling records the callstack of each light-weight process (LWP) at the time the hardware counter of the CPU on which the LWP is running overflows.
More technical info »
This provides critical data that helps you to tune applications.
New Fortran 95 Interval Intrinsic Operators and Functions
Fortran 95 interval arithmetic adds support for the dependent subtraction operator, a division with an intersection function, and the interval version of the generic random number generation subroutine RANDOM_NUMBER.
More technical info »
These features provide better interval arithmetic support.
Interval Arithmetic Support
This release of the C++ compiler provides an interface to the interval arithmetic library. You can use interval arithmetic to perform machine computations with guaranteed bounds on errors from all sources, including input data errors, machine rounding, and their interactions. Interval algorithms can be developed that solve nonlinear problems, such as the solution to nonlinear systems of equations and nonlinear programming.
More technical info »
The C++ interval library is now compatible with interval arithmetic, as implemented in the Fortran compiler. You will be able to solve non-linear problems while providing guaranteed results.
Support in the Debugger (dbx) for Interval Expressions in Fortran 95
Fortran interval data types and expressions are now supported in the Debugger. Simple arithmetic add, subtract, multiply, divide, negate, equal, and not equal operations are implemented.
More technical info »
These features provide more insight into interval arithmetic.
Standalone collect Command for the Performance Analyzer
The new collect command allows you to collect performance data on your applications independent of the IPE (Sun WorkShop) and dbx. This helps you isolate data about named experiments.
More technical info »
You can be more productive during the tuning phase of development.
Mixed Language Linking Fortran and C++ Object Files
A new option allows you to link Fortran and C++ object files. For example, you can link a C++ main program with Fortran object files and the Sun Performance Library.
More technical info »
You will have flexibility for architecting more solutions.
Improved Support for MPI and OpenMP Applications (Forte HPC only)
You can now distinguish when a slave thread is waiting for synchronization at the end of a parallel region, and when it is waiting because the code is in a serial region. The collect command provides more options for specifying experiments and collecting data for the processes of an MPI run.
More technical info »
You will be more productive tuning MPI and Open MP applications.
Fortran 95 Standard Compliance
The full ANSI/ISO standard is supported for more features and portability.
Allows greater flexibility and portability in your applications.
Interval Arithmetic Extensions
Interval arithmetic can be used to perform machine computations with guaranteed bounds on errors from all sources, including input data errors, machine rounding, and their interactions. Interval algorithms can be developed that solve nonlinear problems, such as the solution to nonlinear systems of equations and nonlinear programming.
Interval arithmetic provides computations with guaranteed error bounds, giving you more precise answers.
OpenMP Fortran API
Forte HPC implements the OpenMP, Fortran 1.1 interface for explicit parallelization, including a set of source code directives, run-time library routines, and environment variables in Fortran 95. OpenMP is a portable, scalable model that gives shared-memory parallel programmers a simple and flexible interface for developing parallel applications for platforms ranging from the desktop to enterprise servers.
Allows your applications on SPARC SMP systems to be more portable and scalable.
"BINARY" I/O Extension
This new option in an OPEN statement causes the file to be treated as a sequential binary (unformatted) file with no record marks.
This enables data to be written and read as a continuous stream of bytes, and provides compatibility with other vendor systems.
Enhanced Array Optimization
The Fortran 95 compiler performs aggressive array optimizations at high levels of optimization.
This can produce dramatic improvements in application performance that use arrays extensively.
Fortran 95 Implements FORTRAN 77 Compiler Flags
Most of the FORTRAN 77 compiler flags are now implemented in Fortran 95.
Eases the migration of applications from FORTRAN 77 to Fortran 95.
Related Links
 

Oracle is reviewing the Sun product roadmap and will provide guidance to customers in accordance with Oracle's standard product communication policies. Any resulting features and timing of release of such features as determined by Oracle's review of roadmaps, are at the sole discretion of Oracle. All product roadmap information, whether communicated by Sun Microsystems or by Oracle, does not represent a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. It is intended for information purposes only, and may not be incorporated into any contract.