Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
More options
HP.com home
Fortran 90 Compiler for HP-UX: Fortran 90 Programmer's Guide

Glossary

» 

Technical documentation

Complete book in PDF
» Feedback
Content starts here

 » Table of Contents

 » Glossary

A-B

aliasing 

Referencing a variable by more than one name. Examples of aliasing include:

  • Passing the same variable as two or more actual arguments.

  • Using the EQUIVALENCE statement.

  • Referencing an element of an array declared in common with an out-of-bounds subscript.

  • Passing a common variable as an actual argument.

In general, aliasing inhibits optimization.


alignment 

The positioning of data within memory. Except for objects larger than 8 bytes, HP Fortran 90 aligns data on a byte boundary that is a multiple of its size. Objects larger than 8 bytes are aligned on 8-byte boundaries.


archive library 

A library of routines that can be linked to an executable program at link-time. The names of archive libraries have the .a extension.

See also See also shared library..


automatic variable 

A variable that is allocated on the stack. By default, program variables in HP Fortran 90 are automatic. Two characteristics of automatic variables are of note:

  • They are allocated at each invocation of the procedure in which they are declared and deallocated upon return from the procedure. This means that automatic variables do not retain their value between invocations.

  • They must be explicitly initialized.

See also See also static variable..


back-end 

The component of the compiler that optimizes and generates object code.

See also See also front-end..


Basic Linear Algebra Subroutine library 

A library of de facto standard routines for performing low-level vector and matrix operations. To access routines in this library, you must compile with the -lblas option.


BLAS 

See See Basic Linear Algebra Subroutine library..


BOZ constant 

An integer constant that is used as an initializer in a DATA statement and is formatted in binary (B), octal (O), or hexadecimal (Z) notation.


buffering, tty 

See See tty buffering..


built-in functions 

The two HP Fortran 90 extensions, %VAL and %REF. %VAL forces an argument to be passed by value, and %REF forces it to be passed by reference.


C-D

C preprocessor 

A C language utility that removes or adds statements in a program source text, in accordance with directives that have been inserted in the source file. HP Fortran 90 can pass source files to the C preprocessor (cpp) for preprocessing and then send the output to the compiler.


column-major order 

The method of storing Fortran 90 arrays in memory. Column-major order requires the columns of a two-dimensional array to be in contiguous memory locations. For example, given the array a(3,4), element a(1,1) would be stored in the first location, a(2,1) in the second, a(3,1) in the third, and so on.

See also See also row-major order..


core dump 

A core image of an executing program that is deposited in a file after the program aborted execution. The core dump (also called a core file) may contain information that is useful in debugging the aborted program.


cpp 

See See C preprocessor..


data dependence 

The relationship that can obtain between the definition of data and its use. The occurrence of a data dependence in a loop can prevent the optimizer from parallelizing it.


dde 

The command for invoking the HP Distributed Debugging Environment, the source-level debugger that is included with HP Fortran 90.


debugger 

See See HP Distributed Debugging Environment..


division by zero 

The floating-point exception that occurs whenever the system attempts to divide a nonzero value by zero.


driver 

The component of the compiler that retains control throughout the entire compilation process.


dusty-deck programs 

Older, pre-FORTRAN 77 programs. Dusty-deck programs are so called because they were presumably encoded and stored on punched cards. Such programs are difficult to port and optimize.


E-K

exception 

A condition occurring during the execution of a program that may require special handling to make further execution meaningful. Some exceptions can be trapped by the system and handled within the program.


extension 

See See filename extension and language extension..


fast underflow 

A hardware feature for handling underflow by substituting zero for the operation that causes the underflow.


file descriptor 

An integer that is returned by certain HP-UX system I/O routines and then passed to others to provide access to a file. A file descriptor is similar to Fortran's logical unit number. When the Fortran 90 intrinsic FNUM is given a logical unit number, it returns a file descriptor.


filename extension 

A sequence of characters that begins with a period (.) and is added to a filename to indicate the function or contents of the file.

See also See also language extension..


floating-point exception 

See See exception..


front-end 

The component of the compiler that parses source code and issues warning and error messages.

See also See also back-end..


High-Level Optimizer 

One of the optimizing components of HP Fortran 90 that performs optimizations across procedures and files.


HLO 

See See High-Level Optimizer..


HP DDE 

See See HP Distributed Debugging Environment..


HP Distributed
Debugging Environment.
 

The source-level debugger for HP Fortran 90 programs.

See also See also dde..


integer overflow 

An exception condition that occurs when attempting to use an integer to represent a value that falls outside its range. The ON statement can be used to trap integer overflow.


invalid operation 

The floating-point exception that occurs whenever the system attempts to perform an operation that has no numerically meaningful interpretation, such as a NaN.


L-N

.mod file 

A file that is created and read by the compiler when processing Fortran 90 source files that define or use modules.


language extension 

A feature of a programming language that has been added by a vendor and is not defined in (or is in violation of) the language standard. The ON statement is an HP language extension to the Fortran 90 Standard.

See also See also filename extension..


libU77 routines 

Routines in the BSD 3f library (libU77.a) that provide a Fortran 90 interface to selected system calls in libc.a. The libU77.a library is part of HP Fortran 90 and is accessed with the +U77 option.


memory fault 

See See segmentation violation..


migrating 

In this document, migrating refers to the processing of moving a program written for HP FORTRAN 77 to HP Fortran 90.

See also See also porting..


millicode routines 

Millicode versions of frequently called intrinsics, having very low call overhead and little error-handling. One of the optimizations performed by HP Fortran 90 is to replace calls to eligible intrinsics with millicode versions.


module 

A type of Fortran 90 program unit that is used for sharing data. Modules can also be used to contain subprograms.


NaN 

Not-a-Number, the condition that results from a floating-point operation that has no mathematical meaning, such as infinity divided by infinity. The ON statement can be used to trap operations that result in NaN.


null 

The null character ('\0') that is used in C programs to terminate strings.


O-Q

one-trip DO loop 

A DO loop that, if reached, executes for at least one iteration. Programs written for some implementations of FORTRAN 66 rely on one-trip DO loops.


optimization 

Code transformations made by the compiler to improve program performance.


overflow 

An exception condition that occurs when the result of a floating-point operation is greater than the largest normalized number.

See also See also integer overflow..


parallel execution 

Program execution on multiple processors at the same time. One of the optimizations performed by the compiler is to transform eligible program loops for parallel execution.


parallelization 

An optimization that transforms eligible program loops for parallel execution on a multiprocessor machine.


PIC 

See See position-independent code..


porting 

In this document, porting refers to the process of moving a program that was coded for another vendor's Fortran to HP Fortran 90.

See also See also migrating..


position-independent code 

Object code that contains no absolute addresses. Position-independent code (PIC) has linkage tables that contain pointers to code and data. This table is filled in by the loader at runtime. Object code that consists of PIC can be used to create shared libraries.


precision 

The number of digits to which floating-point numbers are represented. Double-precision numbers can have greater precision than single-precision numbers.


profilers 

Programming tools that determine where a program spends its execution time. Profilers that come with HP Fortran 90 include prof, gprof, and CXperf.


R-S

roundoff error 

The loss of precision that can occur as a result of floating-point arithmetic. Different orders of evaluating a floating-point expression can produce different accumulations of roundoff errors, which in turn can sometimes cause the expression to yield significantly different results.


row-major order 

The method of storing C-language arrays in memory. (Fortran arrays are stored in column-major order.) Row-major order requires the rows of a two-dimensional array to be in contiguous memory locations. For example, given the array a[3][4], element a[0][0] would be stored in the first location, a[0][1] in the second, a[0][2] in the third, and so on.


segmentation violation 

A type of exception that occurs when an executing program attempts to access memory outside of its allocated memory segment; also called a memory fault.


serial execution 

Program execution on only one processor at a time.

See also See also parallel execution..


shared executable 

An executable program whose text segment (that is, its code) can be shared by multiple processes.


shared library 

A library of routines that can be linked to an executable program at runtime and shared by several programs simultaneously. The names of shared libraries have the .sl extension.

See also See also archive library..


side effects 

A condition that prevents the optimizer from parallelizing a loop. A procedure that is called within a loop has side effects if it communicates with the outside world other than through a return value.


signal 

See See trap..


stack overflow 

An error condition that occurs when the runtime system attempts to allocate more memory from the stack than is available. This condition can occur when attempting to allocate very large arrays or when a recursive program is out of control.


static variable 

Variables that are allocated from static storage (sometimes referred to as the heap). Static variables have two characteristics of note:

  • They preserve their value for the lifetime of the program.

  • They are initialized when they are allocated.

By default, program variables in HP Fortran 90 are automatic.


stream I/O 

A type of I/O that is based on the concept of a stream—a flow of data to or from a file or I/O device. Streams are managed by the HP-UX operating system. Access to a stream is provided by a stream pointer, which is the address of a C-like structure that contains information about a stream. When the Fortran 90 intrinsic FSTREAM is given a logical unit number, it returns a stream pointer, providing Fortran programs with access to stream-based system routines.


symbol table 

A table of names of procedures and data, including their offset addresses. The compiler inserts a symbol table in the object file for use by the debugger and profiler.


T-Z

thread 

An independent flow of control within a single process, having its own register set and program counter. The HP-UX operating system supports multiple-executing threads within the same process.


Thread Trace Visualizer 

See See ttv..


trap 

A change in system state that is caused by an exception and that may be detected by the executing program that took the exception. Traps are hardware features that may be enabled or disabled. If traps are enabled, they can change the flow of control in the program that took the exception. In response to a trap, the system may generate a signal (for example, SIGFPE), which the program can detect. Such a program can be designed to handle traps. HP Fortran 90 provides the ON statement to handle traps.


ttv 

A tool for analyzing parallel-executing programs.


tty buffering 

A method for efficiently processing data that is directed to standard output by capturing it in a buffer before sending it to the screen.


underflow 

An exception condition that occurs when the result of a floating-point operation is smaller than the smallest normalized number. On systems that support it, fast underflow is an efficient method of handling this exception.


vectorization 

An optimization technique that replaces eligible program loops that operate on arrays with calls to specially tuned routines that perform the same operation.


wall-clock time 

Time spent by an executing program that includes system time as well as process time. In contrast, virtual time takes into account process time only. Profilers (such as CXperf) that track both virtual time and wall-clock time provide information about when a program is blocked as well as when it is running.


Printable version
Privacy statement Using this site means you accept its terms Feedback to webmaster
© Hewlett-Packard Development Company, L.P.