Numerical Computation Guide HomeContentsPreviousNextIndex



This manual describes the floating-point environment supported by software and hardware on SPARCTM and x86 platforms running the Solaris operating system. Although this manual discusses some general aspects of the SPARC and Intel architectures, it is primarily a reference manual designed to accompany SunTM language products.

Certain aspects of the IEEE Standard for Binary Floating-Point Arithmetic are discussed in this manual. To learn about IEEE arithmetic, see the 18-page Standard. See Appendix F for a brief bibliography on IEEE arithmetic.

Who Should Use This Book

This manual is written for those who develop, maintain, and port mathematical and scientific applications or benchmarks. Before using this manual, you should be familiar with the programming language used (Fortran, C, etc.), dbx (the source-level debugger), and the operating system commands and concepts.

How This Book Is Organized

Chapter 1, "Introduction," introduces the floating-point environment.

Chapter 2, "IEEE Arithmetic," describes the IEEE arithmetic model, IEEE formats, and underflow.

Chapter 3, "The Math Libraries," describes the mathematics libraries provided with Sun WorkShop Compilers 6.

Chapter 4, "Exceptions and Exception Handling," describes exceptions and shows how to detect, locate, and handle them.

Appendix A, "Examples," contains example programs.

Appendix B, "SPARC Behavior and Implementation," describes the floating-point hardware options for SPARC workstations.

Appendix C, "x86 Behavior and Implementation,"," lists x86 and SPARC compatibility issues related to the floating-point units used in Intel systems.

Appendix D, "What Every Computer Scientist Should Know About Floating-Point Arithmetic," is an edited reprint of a tutorial on floating-point arithmetic by David Goldberg.

Appendix E, "Standards Compliance," discusses standards compliance.

Appendix F, "References," includes a list of references and related documentation.

Glossary contains a definition of terms.

The examples in this manual are in C and Fortran, but the concepts apply for either compiler on a SPARC or Intel system.

Multiplatform Release

This Sun WorkShop release supports versions 2.6, 7, and 8 of the SolarisTM SPARCTM Platform Edition and Solaris Intel Platform Edition Operating Environments.

Note – The term "x86" refers to the Intel 8086 family of microprocessor chips, including the Pentium, Pentium Pro, and Pentium II processors and compatible microprocessor chips made by AMD and Cyrix. In this document, the term "x86" refers to the overall platform architecture, whereas "Intel Platform Edition" appears in the product name.

Access to Sun WorkShop Development Tools

Because Sun WorkShop product components and man pages do not install into the standard /usr/bin/ and /usr/share/man directories, you must change your PATH and MANPATH environment variables to enable access to Sun WorkShop compilers and tools.

To determine if you need to set your PATH environment variable:

1. Display the current value of the PATH variable by typing:

% echo $PATH

2. Review the output for a string of paths containing /opt/SUNWspro/bin/.

If you find the paths, your PATH variable is already set to access Sun WorkShop development tools. If you do not find the paths, set your PATH environment variable by following the instructions in this section.

To determine if you need to set your MANPATH environment variable:

1. Request the workshop man page by typing:

% man workshop

2. Review the output, if any.

If the workshop(1) man page cannot be found or if the man page displayed is not for the current version of the software installed, follow the instructions in this section for setting your MANPATH environment variable.

Note – The information in this section assumes that your Sun WorkShop 6 products were installed in the /opt directory. Contact your system administrator if your Sun WorkShop software is not installed in /opt.

The PATH and MANPATH variables should be set in your home .cshrc file if you are using the C shell or in your home .profile file if you are using the Bourne or Korn shells:

For more information about the PATH variable, see the csh(1), sh(1), and ksh(1) man pages. For more information about the MANPATH variable, see the man(1) man page. For more information about setting your PATH and MANPATH variables to access this release, see the Sun WorkShop 6 Installation Guide or your system administrator.

Typographic Conventions

TABLE P-1 shows the typographic conventions that are used in Sun WorkShop documentation.

TABLE P-1   Typographic Conventions
Typeface Meaning Examples
AaBbCc123 The names of commands, files, and directories; on-screen computer output Edit your .login file. Use ls -a to list all files. % You have mail.
AaBbCc123 What you type, when contrasted with on-screen computer output % su Password:
AaBbCc123 Book titles, new words or terms, words to be emphasized Read Chapter 6 in the User's Guide. These are called class options. You must be superuser to do this.
AaBbCc123 Command-line placeholder text; replace with a real name or value To delete a file, type rm filename.

Shell Prompts

TABLE P-2 shows the default system prompt and superuser prompt for the C shell, Bourne shell, and Korn shell.

TABLE P-2   Shell Prompts
Shell Prompt
C shell %
Bourne shell and Korn shell $
C shell, Bourne shell, and Korn shell superuser #

Related Documentation

You can access documentation related to the subject matter of this book in the following ways:

TABLE P-3 lists related Sun WorkShop 6 manuals by document collection.

TABLE P-3   Related Sun WorkShop 6 Documentation by Document Collection 
Document Collection Document Title Description
ForteTM Developer 6 / Sun WorkShop 6 Release Documents About Sun WorkShop 6 Documentation Describes the documentation available with this Sun WorkShop release and how to access it.
What's New in Sun WorkShop 6 Provides information about the new features in the current and previous release of Sun WorkShop.
Sun WorkShop 6 Release Notes Contains installation details and other information that was not available until immediately before the final release of Sun WorkShop 6. This document complements the information that is available in the component readme files.
Forte Developer 6 / Sun WorkShop 6 Analyzing Program Performance With Sun WorkShop 6 Explains how to use the new Sampling Collector and Sampling Analyzer (with examples and a discussion of advanced profiling topics) and includes information about the command-line analysis tool er_print, the LoopTool and LoopReport utilities, and UNIX profiling tools prof, gprof, and tcov.
Debugging a Program With dbx Provides information on using dbx commands to debug a program with references to how the same debugging operations can be performed using the Sun WorkShop Debugging window.
Introduction to Sun WorkShop Acquaints you with the basic program development features of the Sun WorkShop integrated programming environment.
ForteTM C 6 / Sun WorkShop 6 Compilers C C User's Guide Describes the C compiler options, Sun-specific capabilities such as pragmas, the lint tool, parallelization, migration to a 64-bit operating system, and ANSI/ISO- compliant C.
ForteTM C++ 6 / Sun WorkShop 6 Compilers C++ C++ Library Reference Describes the C++ libraries, including C++ Standard Library, Tools.h++ class library, Sun WorkShop Memory Monitor, Iostream, and Complex.
C++ Migration Guide Provides guidance on migrating code to this version of the Sun WorkShop C++ compiler.
C++ Programming Guide Explains how to use the new features to write more efficient programs and covers templates, exception handling, runtime type identification, cast operations, performance, and multithreaded programs.
C++ User's Guide Provides information on command-line options and how to use the compiler.
Sun WorkShop Memory Monitor User's Manual Describes how the Sun WorkShop Memory Monitor solves the problems of memory management in C and C++. This manual is only available through your installed product (see /opt/SUNWspro/docs/ index.html) and not at the Web site.
ForteTM for High Performance Computing 6 / Sun WorkShop 6 Compilers Fortran 77/95 Fortran Library Reference Provides details about the library routines supplied with the Fortran compiler.
Fortran Programming Guide Discusses issues relating to input/output, libraries, program analysis, debugging, and performance.
Fortran User's Guide Provides information on command-line options and how to use the compilers.
FORTRAN 77 Language Reference Provides a complete language reference.
Interval Arithmetic Programming Reference Describes the intrinsic INTERVAL data type supported by the Fortran 95 compiler.
ForteTM TeamWare 6 / Sun WorkShop TeamWare 6 Sun WorkShop TeamWare 6 User's Guide Describes how to use the Sun WorkShop TeamWare code management tools.
Forte Developer 6 / Sun WorkShop Visual 6 Sun WorkShop Visual User's Guide Describes how to use Visual to create C++ and JavaTM graphical user interfaces.
ForteTM / Sun Performance Library 6 Sun Performance Library Reference Discusses the optimized library of subroutines and functions used to perform computational linear algebra and fast Fourier transforms.
Sun Performance Library User's Guide Describes how to use the Sun- specific features of the Sun Performance Library, which is a collection of subroutines and functions used to solve linear algebra problems.
Numerical Computation Guide Numerical Computation Guide Describes issues regarding the numerical accuracy of floating- point computations.
Standard Library 2 Standard C++ Class Library Reference Provides details on the Standard C++ Library.
Standard C++ Library User's Guide Describes how to use the Standard C++ Library.
Tools.h++ 7 Tools.h++ Class Library Reference Provides details on the Tools.h++ class library.
Tools.h++ User's Guide Discusses use of the C++ classes for enhancing the efficiency of your programs.

TABLE P-4 describes related Solaris documentation available through the Web site.

TABLE P-4   Related Solaris Documentation
Document Collection Document Title Description
Solaris Software Developer Linker and Libraries Guide Describes the operations of the Solaris link-editor and runtime linker and the objects on which they operate.
Programming Utilities Guide Provides information for developers about the special built-in programming tools that are available in the Solaris operating environment.

Sun Microsystems, Inc.
Copyright information. All rights reserved.
Library   |   Contents   |   Previous   |   Next   |   Index