Previous Contents Doc Set Home


Index


Symbols

.NO_PARALLEL: special target,  12

.PARALLEL: special target,  12

.WAIT special target,  9

A

About box,  32

archiving libraries,  10

array
graphing,  71

array display,  73

arrays
automatic updating,  72

automatic parallelization
-parallel compiler switch,  25

B

Build Server Configuration File,  4

build servers,  13

C

C array example program,  81

call-graph profile
threads,  50

changing array display perspective,  73

changing the array display,  73

compiler switch
-depend,  33
-loopinfo,  33
-O4,  25
-parallel,  25
promotion of,  32
-Zlp,  25
-Ztha (Thread Analyzer),  43

concurrent file modification,  10

condition variable
time spent wating for signal,  42

contour array graph,  73

D

-depend (perform data dependency analysis),  33

dependency lists,  9
explicit ordering,  9
implicit ordering,  9

distributed make, explanation of,  3

DMake host,  13

Dmake, basic concept,  3

DOALL pragma
mark loop for parallelization,  32

E

effects of optimizations applied to loops
inlining,  38
phantom loops,  38

environment variable
LD_LIBRARY_PATH,  25
PARALLEL,  24

exit Thread Analyzer,  46

explicit parallelization,  32

,  32

-explicitpar,  32

F

file
collision,  12
concurrent modification,  10

fix and continue,  97
conditions,  99
example,  101
restrictions,  98
using,  98

Fortran array example program,  80

function glyph (Thread Analyzer),  47

G

gnuemacs editor, help with,  30

graphing an array,  71

graphing an array from dbx,  72

H

hints about optimizations applied to loops,  34
compiler generated two versions of this loop,  35
loop contains backward flow of control,  37
loop contains data dependency,  36
loop contains I/O, or other function calls, that are not MT safe,  37
loop contains multiple exits,  37
loop contains procedure call,  35
loop marked by user-inserted pragma, DOALL,  37
loop may have been distributed,  37
loop may or may not hold enough work to be profitably parallelized,  36
loop significantly transformed during optimization,  36
no hint available,  35
two or more loops may have been fused,  38
two or more loops may have been interchanged,  38

I

inlining,  38

instrumenting a program with-Ztha,  43

L

LD_LIBRARY_PATH environment variable,  25

library update, concurrent,  10

limitations on makefiles,  9

loop contains backward flow of control,  37

loop contains procedure call,  35

loop may have been distributed,  37

-loopinfo (print hints about loops),  33

LoopReport
loading timing file,  26
starting,  26

loops,phantom,  38

LoopTool
bar chart of loop runtimes,  27
choosing an editor,  30
creating a detailed report on loops,  29
editing source code,  30
getting help,  32
gettting hints,  30
graphical user interface,  26
LD_LIBRARY_PATH,  25
loading timing file,  26
looptool command,  27
LVPATH environment variable,  27
online explanation of all compiler hints,  29
opening files,  28
printing the LoopTool graph,  29
sending comments,  32
setting default search paths,  30
specified via command line (looptool command),  27
starting,  26
Version menu in editor,  30
XUSERFILESEARCHPATH,  24

LVPATH environment variable,  27

M

macro
dynamic,  10

makefiles, limitations,  9

metrics collected by Thread Analyzer,  48

multiple targets,  11

multiprocessing,  19

multiprocessors, how many,  24

multithreaded,  19

N

naming convention, thread,  48

ncpus utility,  24

No hint available,  35

O

optimizations applied to loops
inlining,  38
loop transformations
jamming,  39
transposition,  39
unrolling,  39
phantom loops,  38

P

LoopReport
,  27

LoopTool
,  27

-p option,  27

-parallel (automatic parellelization),  32

PARALLEL environment variable,  24

parallel loop nested inside serial loop
wallclock anomaly,  39

parallelism,  20
restricting,  12

parallelize loop marked by DOALL pragma
-explicitpar,  32

phantom loops,  38

pragma
DOALL,  32

processors, how many on your machine,  24

profile data
functions,  51
program,  51
threads,  51

program glyph (Thread Analyzer),  47

promotion of compiler switches,  32

Q

quit Thread Analyzer,  46

R

read system call
number per second,  43

reader/writer read lock
time spent wating to acquire,  43

reader/writer write lock
time spent waiting to acquire,  43

restricting parallelism,  12

restrictions on makefiles,  9

rotating array display,  73

runtime checking
features,  85
limitations,  86
memory access error checking,  87
memory access error reporting,  89
memory access errors,  89
memory leak error reporting,  93
memory leak errors,  93
memory leaks checking,  90
setting options,  95
starting,  87

Runtime Configuration File,  4

S

surface array graph,  73

T

targets
.NO_PARALLEL:,  12
.PARALLEL:,  12
.WAIT,  9
multiple,  11

Thread Analyzer,  41 to 53, 53 to 65
blocking on I/O or thread synchronization,  61
bottleneck, narrowing focus,  61 to 63
call-graph profile for threads,  50
collapse glyph hierarchy,  48
collecting metrics,  44
conventions,  48
CPU time filter,  63 to 65
display graph,  49
display table,  49
error messages,  48
exit,  46
expand glyph hierarchy,  48
filter,  53
glyph hierarchy,  48
gprof table,  50
gprof table for particular thread,  56
graph condition variable wait time,  63
hierarchy navigation,  48
horizontal scrollbar,  47
identified via graphical data,  60 to ??
initial investigation,  54 to 59
instrumenting program,  43
interactive error messages,  48
Load button,  49
load trace directory,  49
loading a trace directory via command line,  44
manipulating menus,  48
metric
condition variable wait time,  42
CPU time,  42
file reads (ops),  43
file write (bytes),  43
file writes (ops),  43
reader/writer read lock wait,  43
reader/writer write lock,  43
total sync wait time,  43
wall clock time,  42
metric graph,  49
metric graph property sheet,  49
metric scope, entire program,  42
metric scope, single function,  42
metric scope, single thread,  42
metric table,  52
metric table for particular function,  58
metrics,  48
collected by,  48
mouse gestures,  48
multiple metrics for particular thread or function,  52
multiple metrics, particular function,  52
multiple metrics, particular thread,  52
navigating through glyph hierarchy,  48
particular glyph level,  51
performance bottlenecks,  60 to 61
plot CPU time versus wallclock time,  60
prof table,  51
prof table for all threads,  55
profile data for functions,  51
profile data for program,  51
profile data for threads,  51
property sheet,  49, 51
quit,  46
select metric,  49
sorted metric profile table,  51
sorted metric profile table for all threads,  59
sorted metric profile table property sheet,  51
specifying pathname to executable via command line,  44
start ThA via comand line,  44
tha.pid directory,  44
thread naming convention,  48
threshold CPU time for function,  53
threshold CPU time for thread,  53
trace data file,  46
View menu,  49
write trace data files,  44
-Ztha,  43

thread glyph (Thread Analyzer),  47

thread naming convention,  48

thread synchronization
time spent on,  43

timing file,  26

timing file location
LoopTool
current directory,  26
specified via environment variable,  27
specified via -p option,  27

Two or more loops may have been fused,  38

two or more loops may have been interchanged,  38

U

updating array displays,  72

V

Version menu, in LoopTool,  30

vi editor, help with,  30

vitem,  72

W

wallclock anomaly
parallel loop nested inside serial loop,  39

write system call
number of bytes written,  43
number per second,  43

X

xemacs editor, help with,  30

XUSERFILESEARCHPATH (LoopTool environment variable),  24

Z

-Ztha
instrument program
C,  43
C++,  43
FORTRAN,  43

-Ztha compiler option for Thread Analyzer,  43



Previous Contents Doc Set Home