Sun Java Solaris Communities My SDN Account
 
Sun Studio

Sun Studio White Papers

Title
Abstract
This article suggests how to get the best performance from an UltraSPARC or x86/AMD64 (x64) processor running on the latest Solaris systems by compiling with the best set of compiler options and the latest compilers. These are suggestions of things you should try, but before you release the final version of your program, you should understand exactly what you have asked the compiler to do.
Large applications have a particular problem: they have a lot of instructions, and the processor does not have the capacity to hold the entire application on-chip at any one time. As a consequence, larger applications spend some of their run time stalled with the processor waiting to fetch new instructions from memory. This paper discusses several techniques that help the processor to hold more useful instructions on-chip, consequently reducing the time wasted fetching data from memory.
In the past, most Sun customers had a Sun workstation running the Solaris Operating System on their desktop. They could easily develop applications for deployment on other workstations or on large Sun servers. Today, many developers have a PC running Microsoft Windows on their desktop instead. How can these developers use Sun Studio software to develop their Solaris applications?
The Fortran 95 compiler, f95, now accepts many of the non-standard features that the legacy FORTRAN 77 compiler, f77, accepted. This paper outlines those compatible features and provides useful information for migrating FORTRAN 77 codes to the Fortran 95 compiler.
This paper is an overview of all the new interval features that have been introduced into Forte Developer Fortran. This is a good paper to start with, and then go on to other white papers of interest.
This paper addresses a number of interesting issues that come up when working with interval angles or any periodic numbers. The specific issue that motivated the paper was to rationalize what the containment set (or cset) is for the ATAN2 Fortran intrinsic function for all possible interval arguments.
This paper introduces readers to the advantages provided by arithmetic systems in which there are no undefined operators, operands, functions, or relations. Such systems are referred to as "closed." The obvious advantages in programming are that exceptional events cannot occur, and therefore, many special cases need not be explicitly coded.
Many possible closed interval systems can be constructed from containment-set (cset) theory. For a purely software interval implementation, the simple system described in this paper is a reasonable compromise between narrow interval results for special edge cases, and speed for cases that occur more frequently.
In interval mathematics, the distinction between constants and variables is even more important than it is in point mathematics. This paper introduces language conventions to deal with the problem of transforming a literal decimal constant into the narrowest possible width interval that contains the literal constant's value.
One consequence of working with a closed interval system is that values outside the domain of functions such as sqrt and log do not cause an exception. The paper describes how it possible to numerically find the root of a function when the root is on the edge, or the boundary of the function's domain of definition.
Because intervals are sets of numbers, it makes sense that there should be an empty interval. The question is: how should this construct be used? That question is answered in this paper.
In Fortran 95 and 2000, literal constants are assumed to have a kind type parameter value (or precision, as in single, double, or quad). Following this convention prevents an interval implementation from constructing narrow intervals when, for example, 0.1 is encountered in a double precision interval expression. To eliminate this problem and to permit mixed interval-non-interval expressions, interval expressions are evaluated using rules that are not the same as standard Fortran. This paper describes how and why this is done.
This paper describes in detail why the "no-exception" interval system has been implemented.
This paper presents the motivation and theoretical foundation for containment-set (or cset) theory. The containment set of a given expression is the set of values that the expression's interval evaluation must contain. Using cset theory, closed interval systems can be derived.
This paper is designed to be read as a document and also used as a reference to supplement IBLAS man pages. The goal has been to make the material easy to find and understand.

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.