Previous Contents Doc Set Home


Index


Symbols

 ,  xv

%VAL(), pass by value,  180

* as logical unit identifier,  5

A

abrupt underflow,  87

agreement across routines, -Xlist,  51

aliasing,  104

align
data types, Fortran 90 vs. C,  178
data, Fortran 77 vs C,  177
errors across routines, -Xlist,  51

ANSI
conformance check, -Xlist,  52

ANSI X3.9-1978 standard,  1

ar to create static library,  39, 43

arguments
reference versus value, C-Fortran interface,  180

array
differences between C and Fortran,  181

ASCII characters
maximum characters in data types,  101

B

-Bdynamic, -Bstatic,  45

bindings
POSIX,  48
static or dynamic (-B, -d),  45
Xlib,  48
XView,  48

blank space,  xv

BS 6832 standard,  1

C

-C,  67

C directive,  180

C$PAR Sun-style directives,  151

call
graphs, -Xlistc,  61
in parallelized loops,  153
inhibiting optimization,  129
passing arguments by reference or value,  180

carriage-control,  98

case sensitivity,  179

C-Fortran interface
array indexing,  181
call arguments and ordering,  180
case sensitivity,  179
comparing I/O,  182
compatibility issues,  175
function compared to subroutine,  176
function names,  179, 184
passing data by value,  190, 191, 195
sharing I/O,  195

checking strictness, -Xlistvn,  63

CHUNKSIZE directive qualifier,  169

CMIC$ Cray-style directives,  167

command line
passing runtime arguments,  9
redirection and piping,  12

common block
maps, -Xlist,  63

compile
viewing source listing with diagnostics,  69

conventions in text,  xv

Cray style parallelization directives,  149

cross reference table, -Xlist,  64

D

-dalign,  125

data
alignment, Fortran 77 vs C,  177
alignment, Fortran 90 vs C,  178
Hollerith,  100
inspection, dbx,  68
maximum characters in data types,  101
representation,  100
sizes, C vs. Fortran 77,  177
sizes, C vs. Fortran 90,  178

data dependency
apparent,  143
parallelization,  136
restructuring to eliminate,  137

data race
defined,  166

dd conversion utility,  18

debug,  51 to 69
arguments, agree in number and type,  51
common blocks, agree in size and type,  51
compiler options,  67
dbx and debugger,  68 to 69
exceptions,  88
index check of arrays,  67
linker debugging aids,  33
parameters, agree globally,  51
segmentation fault,  67
subscript array bounds checking,  67

declared but unused, checking, -Xlist,  52

denormalized number,  91

-depend,  126

diagnostics, source,  69

direct I/O,  13
to internal files,  15

directives
C() C interface,  180
Cray parallelization,  167
parallelization, summary,  139
Sun parallelization,  151

display to terminal, -Xlist,  53

division by zero,  73

-dn, -dy,  46

DOALL directive,  152
qualifiers,  154

documentation,  3

DOSERIAL directive,  152

DOSERIAL* directive,  152

dynamic libraries
See libraries, dynamic

E

environment variables
LD_LIBRARY_PATH,  37
LOGICALNAMEMAPPING,  12
PARALLEL,  140
passed to program,  10
with IOINIT,  10

equivalence block maps, -Xlist,  63

error
messages
listing with -XlistE,  61
suppress with -Xlist,  61
standard error
accrued exceptions,  86

establish a signal handler,  83

event management, dbx,  68

exceptions
accrued,  78
debugging,  88 to 90
detecting,  83
IEEE,  73
ieee_handler,  80
messages,  88
suppressing warnings with ieee_flags,  77, 88
trapping
with -ftrap=mode,  87

extended
syntax check, -Xlist,  52

extensions and features,  2

external
C functions,  180
names,  179

F

FACTORING, directive qualifier,  159

-fast,  123

features and extensions,  2

feedback, performance profiling,  124

file names
on INCLUDE statements,  12
passing to programs,  9

files
attached at runtime,  10
internal,  15
opening scratch files,  7
passing file names to programs,  9, 99
permissions, C-Fortran interface,  183
preconnected,  7, 8
standard error,  7, 8
standard input,  7, 8
standard output,  7, 8
tape,  18

FIPS 69-1 standard,  1

fix and continue, dbx,  68

.fln files
directory, -Xlist,  61
-Xlist,  54

analysis files, .fln, -Xlist,  54

floating-point arithmetic,  71 to 94
considerations,  91
denormalized number,  91
exceptions,  73
IEEE,  72
underflow,  91
See also IEEE arithmetic,  72

-fns, disable underflow,  87

font conventions,  xv

format
edit descriptors,  98

Fortran
libraries,  48
standards and validation,  1
SunSoft features and extensions,  2

free format,  xv

-fsimple,  126

-ftrap=mode,  87

function
compared to subroutine,  176
data type of, checking, -Xlist,  52
names, Fortran vs. C,  179
unused, checking, -Xlist,  52
used as a subroutine, checking, -Xlist,  52

G

-G,  47

GETARG library routine,  6, 9

GETC library routine,  18

GETENV library routine,  6, 10

global
program checking,  51
strictness, -Xlist,  63

gprof
usage,  110

graphically monitor variables, dbx,  68

GSA validation,  1

GSS, directive qualifier,  159

GUIDED directive qualifier,  169

H

Hollerith data,  100

I

IDATE VMS routine,  48

IEEE (Institute of Electronic and Electrical Engineers),  72

IEEE arithmetic
754 standard,  1, 72
continue with wrong answer,  92
exception handling,  74
exceptions,  73
excessive overflow,  93
gradual underflow,  86, 91
interfaces,  74
signal handler,  83
underflow handling,  86

ieee_flags,  74, 76, 88

ieee_functions,  74

ieee_handler,  74, 80

ieee_retrospective,  86, 88

ieee_values,  75

INCLUDE,  12

include files
list and cross checking with -XlistI,  62

inconsistency
arguments, checking, -Xlist,  52
named common blocks, checking, -Xlist,  52

indirect addressing
data dependency,  137

inexact
floating-point arithmetic,  73

input/output,  5 to 19
accessing files,  5
comparing Fortran and C I/O,  182
dd conversion utility,  18
direct I/O,  13
to internal files,  15
end-of-file on tape,  18
Fortran 90 considerations,  19
in parallelized loops,  165
inhibiting optimization,  129
inhibiting parallelization,  163
initialize for FORTRAN 77 from C,  196
internal I/O,  15
logical unit,  5
opening files,  7
preconnect units 0, 5, 6 from C,  196
preconnected units,  7
profiling,  118
random I/O,  13
redirection and piping,  12
scratch files,  7
tape,  17
multifile,  19

interface
problems, checking for, -Xlist,  52

internal files,  15

IOINIT library routine,  10

K

keywords,  xv

L

labels, unused, -Xlist,  52

-Ldir,  36

libF77,  48

libFposix,  48

libM77,  48

libraries,  31 to 50
create
dynamic,  44
static,  46
dynamic
creating,  44
example,  46
naming,  46
position-independent code,  45
specifying,  38
tradeoffs,  44
in general,  31
linking,  32
load map,  32
math,  48
optimized,  128
POSIX,  49
profiling,  114
provided with SunSoft Fortran,  48
redistributable,  50
search order
command line options,  36
LD_LIBRARY_PATH,  37
paths,  35
shared
See dynamic
static
creating,  39
ordering routines,  43
recompile and replace module,  43
tradeoffs,  39
VMS,  48

libV77,  48

line width, output, -Xlist,  63

line-numbered listing, -Xlist,  53

linking
binding options (-B, -d),  45
consistent compile and link,  34
libraries,  32
specifying static or dynamic,  45
mixing C and Fortran,  183
search order,  35
-lx, -Ldir,  36
troubleshooting errors,  38

lint-like checking across routines, -Xlist,  51

listing
cross-references with -Xlist,  64
line numbered with diagnostics, -Xlist,  51
-XlistL,  62

logical unit,  5
attached at runtime,  10

loop unrolling
and portability,  106
with -unroll,  126

-lV77,  49

-lx,  36

M

-m linker option for load map,  33

macros
with make,  23

make,  21, 25
command,  23
macros,  23
makefile,  21
suffix rules,  25

makefile,  21

maps
common blocks, -Xlist,  63
equivalence blocks, -Xlist,  63

MAXCPUS, directive qualifier,  154, 168

measuring program performance See performance, profiling

MIL-STD-1753 standard,  1

monitor variables graphically, dbx,  68

multifile tape access,  19

multifile tapes,  19

multiplatform release,  xiv

multithreading
See parallelization

N

NBS validation,  1

NIST validation,  1

nonstandard_arithmetic(),  87

NUMCHUNKS directive qualifier,  169

O

/opt/SUNWspro
standard location for Sun software,  35

optimization
hand restructurings and portability,  104

optimization See performance

options
debugging, useful,  67
for optimization,  122
parallelization,  138

order of
linker libraries search,  35
linker search,  35
-lx, -Ldir options,  36

output
to terminal, -Xlist,  53
-Xlist report file,  62

overflow
excessive,  93
floating-point arithmetic,  73
locating
example,  90
with reduction operations,  147

overriding make macro values,  24

P

PARALLEL, number of processors,  140

parallelization,  133 to 173
automatic,  142, 143
criteria,  143
CALL, loops with,  153
chunk distribution,  142
data dependency,  136
data race,  166
debugging,  169
definitions,  142
directives
Cray-style,  167
summary,  139
Sun style directives,  151
explicit,  149
criteria,  149
loop scheduling,  159
loop scheduling (Cray),  169
scoping rules,  150
scoping variables with Cray directives,  167
inhibitors
for f90,  169
to automatic parallelization,  144
to explicit parallelization,  162
options summary,  138
private and shared variables,  150
reduction operations,  145
specifying number of processors,  140
specifying stack sizes,  140
-stackvar,  140
steps to,  135
what to expect,  134
with directives,  149

performance
optimization,  121 to 131
choosing options,  122
further reading,  131
inhibitors,  129
levels,  124
libraries,  128
loop unrolling,  126
options
summary,  123
specifying target hardware,  127
with runtime profile,  124
See also parallelization
profiling,  109 to 120
gprof,  110
I/O,  118
libraries missing,  114
overhead,  114
tcov,  115
time,  109

-PIC,  45

-pic,  45

platforms,  xiv

porting,  95 to 108
accessing files,  99
aliasing,  104
carriage-control,  98
data representation issues,  100
format edit descriptors,  98
Hollerith data,  100
initializing with Hollerith,  101
nonstandard coding,  103
obscure optimizations,  104
precision considerations,  94
problems, checking, -Xlist,  52
strip-mining,  105
time functions,  95
troubleshooting guidelines,  107
uninitialized variables,  104
unrolled loops,  106

position-independent code
(-pic),  45

POSIX
bindings, libFposix,  48
Library,  49

pragma
See directives

preattached logical units,  10

preconnected units,  7

preserve case,  179

preserving precision,  94

PRIVATE, directive qualifier,  154, 168

process control, dbx,  68

program analysis,  51 to 69

program development tools,  21 to 29
make,  21
SCCS,  26

psrinfo command,  140

pure scalar variable
defined,  143

R

random I/O,  13

READONLY, directive qualifier,  154

recurrence
data dependency,  136

redistributable libraries,  50

reduction operations
data dependency,  137
numerical accuracy,  147
recognized by the compiler,  146

REDUCTION, directive qualifier,  154

referenced but not declared, checking, -Xlist,  52

retrospective summary of exceptions,  86

roundoff
with reduction operations,  147

runtime
arguments to program,  9

runtime.libraries, redistributable,  50

S

SAVELAST, directive qualifier,  154, 168

scalar
defined,  143

SCCS
checking in files,  29
checking out files,  28
creating files,  28
creating SCCS directory,  26
inserting keywords,  27
putting files under SCCS,  26

SCHEDTYPE, directive qualifier,  154

scheduling, parallel loops,  159, 169

segmentation fault
due to out-of-bounds subscripts,  67

SELF, directive qualifier,  159

shared library
See libraries, dynamic,  44

SHARED, directive qualifier,  154, 168

sharing I/O, C-Fortran interface,  195

shippable libraries,  50

SIGFPE signal
definition,  74, 80
when generated,  83

SINGLE directive qualifier,  169

source
diagnostics,  69

source code control See SCCS

stack size and parallelization,  140

STACKSIZE, stack size,  141

-stackvar,  140

standard
error
accrued exceptions,  86

standard files
error,  8
input,  7
output,  7
redirection and piping,  12

standard_arithmetic(),  87

standards
conformance,  1

statement
unreachable, checking, -Xlist,  52

static libraries
See libraries, static

STATIC, directive qualifier,  159

stdio, C-Fortran interface,  182

STOREBACK, directive qualifier,  154

strip-mining
degrades portability,  105

subroutine
compared to function,  176
names,  179
unused, checking, -Xlist,  52
used as a function, checking, -Xlist,  52

suffix rules in make,  25

summing and reduction, automatic parallelization,  145

suppress
error nnn, -Xlist,  61
unreferenced identifiers, -Xlist,  62
warnings
-Xlist,  63

syntax
errors, -Xlist,  52

T

tab format,  xv

tape files,  18

tape I/O,  17
end-of-file,  18
multifile,  19

target
specifying hardware,  127

tcov,  115

time command,  109
multiprocessor interpretation,  110

time functions,  95
summarized,  96
VMS routines,  96

TIME VMS routine,  48

timing program execution,  109

TOPEN library routines,  17

transporting See porting

trapping
exceptions with -ftrap=mode,  87

troubleshooting
program fails,  108
results not close enough,  107

type checking across routines, -Xlist,  52

U

-U do not convert to lowercase,  179

undeclared
variables, -u,  67

underflow
abrupt,  87
floating-point arithmetic,  73
gradual (IEEE),  86, 91
simple,  92
with reduction operations,  147

underscore
in external names,  180

uninitialized
variables,  104

unit
logical unit attached at runtime,  10
preconnected units,  7

-unroll,  126

unused functions, subroutines, variables, labels, -Xlist,  52

uppercase
external names,  179

uppercase characters,  xv

V

-V,  68

VAL(), pass by value,  180

validation of Fortran,  1

variables
aliased,  104
private and shared,  150, 167
undeclared, checking for with -u,  67
uninitialized,  104
unused, checking, -Xlist,  52
used but unset, checking, -Xlist,  52

version
checking,  68

Viewing,  69

VMS Fortran
file names on INCLUDE,  12
library libV77,  48
time functions,  96

W

watchpoints, dbx,  68

width of output lines, -Xlist,  63

X

X11 interface,  48

X3.9-1978,  1

-xl[d],  12

-Xlist
a la carte options,  59
combination special,  59
defaults,  53
display directly to terminal,  53
errors and
call graph, -Xlistc,  60
cross reference, -XlistX,  60
listing, -XlistL,  60
suboptions,  59 to 64
details,  61
summary,  60

-Xlistc,  61

-XlistE,  60, 61

-Xlisterr,  61

-Xlistf,  61

-Xlistflndir
.fln files directory,  61

-Xlisth,  61

-XlistI,  62

-XlistL,  62

-Xlistln,  62

-Xlisto,  62

-Xlists,  62

-Xlistvn,  63

-Xlistw,  63

-Xlistwar,  63

-XlistX,  64

-xprofile,  124

-xtarget,  127

Z

-ztext,  47

Previous Contents Doc Set Home