Skip to content

Commit 5bcb9a0

Browse files
committed
Merge branch 'release-3.0'
2 parents 34da6b5 + f39d193 commit 5bcb9a0

File tree

240 files changed

+12530
-59253
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

240 files changed

+12530
-59253
lines changed

.gitignore

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
*~
22
.DS_Store
33
*.pyc
4+
aclocal.m4
45
autom4te.cache
56
*.a
67
*.so
@@ -17,9 +18,17 @@ autom4te.cache
1718
*.ptab
1819
*.top
1920
Makefile
21+
Makefile.in
2022
config.h
2123
config.log
2224
config.status
25+
config.h.in
26+
config/libtool.m4
27+
config/ltmain.sh
28+
config/ltoptions.m4
29+
config/ltversion.m4
30+
config/lt~obsolete.m4
31+
configure
2332
doc/refman/
2433
doc/src/INSTALL
2534
doc/src/LICENSE
@@ -44,6 +53,7 @@ scripts/STAT
4453
scripts/STATBench
4554
scripts/STATGUI
4655
scripts/STATview
56+
scripts/attach-helper
4757
scripts/core_stack_merge
4858
scripts/stat-core-merger
4959
scripts/stat-bench

ChangeLog

Lines changed: 130 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,133 @@
1+
2016-09-06 Gregory L. Lee <[email protected]>
2+
* backend.cpp : Re-enable struct member gathering, fix offset calculation (bits vs bytes)
3+
4+
2016-08-24 Gregory L. Lee <[email protected]>
5+
* : Updatd documentation
6+
7+
2016-08-24 Gregory L. Lee <[email protected]>
8+
* STAT_BackEnd.C : Encapsulate DySect BE code
9+
10+
2016-08-10 Gregory L. Lee <[email protected]>
11+
* STAThelper.py : Handle empty edge labels
12+
* STAT_BackEnd.C : fix test for detached/exited procs
13+
14+
2016-08-09 Gregory L. Lee <[email protected]>
15+
* : fixed handling of external events
16+
* : build system fixes
17+
18+
2016-06-22 Gregory L. Lee <[email protected]>
19+
* : Cray fixes
20+
21+
2016-06-06 Gregory L. Lee <[email protected]>
22+
* : Renamed Cray build option to --with-cray-alps
23+
24+
2016-05-23 Gregory L. Lee <[email protected]>
25+
* : Graphlib 2.0 fix with threads
26+
27+
2016-05-20 Gregory L. Lee <[email protected]>
28+
* : Graphlib 2.0 fixes
29+
30+
2016-03-31 Gregory L. Lee <[email protected]>
31+
* STATview.py, STAThelper.py : truncate edge labels when exporting STAT graphs to non-.dot formats
32+
33+
2016-03-09 Gregory L. Lee <[email protected]>
34+
* : Modified libdepositcore action
35+
36+
2016-03-04 Gregory L. Lee <[email protected]>
37+
* : Added immediate actions
38+
39+
2015-12-01 Gregory L. Lee <[email protected]>
40+
* STAT_BackEnd.C : use edge attributes
41+
* : track thread count in edges
42+
* : static and dynamic code analysis fixes
43+
44+
2015-11-02 Gregory L. Lee <[email protected]>
45+
* STATview.py : migrate to edge attributes instead of label
46+
* : no longer generate edge labels
47+
48+
2015-10-28 Gregory L. Lee <[email protected]>
49+
* : added ability to record Thread ID
50+
51+
2015-10-23 Gregory L. Lee <[email protected]>
52+
* : added OpenMP OMPD support (prototype from Lai Wei)
53+
54+
2015-10-20 Gregory L. Lee <[email protected]>
55+
* : added stat type attribute to .dot files
56+
57+
2015-10-19 Gregory L. Lee <[email protected]>
58+
* : bug fixes to resolve compiler warnings
59+
60+
2015-10-15 Gregory L. Lee <[email protected]>
61+
* : integrated with graphlib 3 API
62+
* : added node and edge attributes to STAT graphs
63+
64+
2015-09-11 Gregory L. Lee <[email protected]>
65+
* : changed tabs to spaces
66+
* probe_be.cpp : fixed awaitingActions decrementating
67+
* err.cpp : flush file handle
68+
* action_be.cpp : clear aggregates upon finish
69+
* TraceAPI_be.cpp : erase trace from pendingGlobalRes before continuing procs to avoid race!
70+
* analytics.cpp : add DEBUG_ANALYTICS macro to print debug info
71+
72+
2015-09-11 Gregory L. Lee <[email protected]>
73+
* probe_be.cpp : fixed awaitingActions decrementating
74+
* err.cpp : flush file handle
75+
76+
2015-09-11 Gregory L. Lee <[email protected]>
77+
* err.cpp : flush file handle
78+
79+
2015-09-09 Gregory L. Lee <[email protected]>
80+
* probe_be.cpp : fixed awaitingActions decrementing
81+
82+
2015-09-09 Gregory L. Lee <[email protected]>
83+
* : allow passing of argc and argv to probe sessions (Jira STAT-17)
84+
85+
2015-08-24 Gregory L. Lee <[email protected]>
86+
* : don't replicate "prepare" of Actions when reused
87+
88+
2015-08-24 Jesper Nielsen
89+
* probe_be.cpp : decrement awaitingActions count for each action
90+
91+
2015-08-11 Jesper Nielsen
92+
* backend.cpp : modified handleTimerActions to avoid mutex deadlock
93+
94+
2015-07-28 Gregory L. Lee <[email protected]>, Jesper Nielsen
95+
* : added DySectAPI probe tree visualizer
96+
* : DySectAPI FE create .dot file with probe tree
97+
98+
2015-07-22 Gregory L. Lee <[email protected]>
99+
* : Created mock DynInst header file for FE
100+
* : Some cleaning of header files and includes
101+
102+
2015-07-10 Gregory L. Lee <[email protected]>
103+
* err.[C,h] : better control of DySectAPI verbosity and logging
104+
105+
2015-07-10 Gregory L. Lee <[email protected]>
106+
* : DySectAPI filter function should only merge packets with same tag
107+
108+
2015-07-08 Gregory L. Lee <[email protected]>
109+
* : DySectAPI filter should process messages in received order
110+
111+
2015-07-02 Gregory L. Lee <[email protected]>
112+
* : Fixes for probes pending library load
113+
114+
2015-07-01 Gregory L. Lee <[email protected]>
115+
* STAT_FrontEnd : FGFS recv only on expected streams, not all streams
116+
117+
2015-06-15 Gregory L. Lee <[email protected]>
118+
* action* : added Null Action
119+
* location_be.cpp : make sure process is stopped before inserting breakpoint
120+
121+
2015-06-12 Gregory L. Lee <[email protected]>
122+
* STAT_FrontEnd.C : added appropriate #ifdef STAT_FGFS pragma
123+
* symbol.cpp : don't return redundant addresses for symbol resolution
124+
125+
2015-06-05 Gregory L. Lee <[email protected]>
126+
* : fix for Jira STAT-12, DySect + FGFS hang
127+
128+
2015-06-01 Gregory L. Lee <[email protected]>
129+
* : tag version 2.2.0
130+
1131
2015-05-29 Gregory L. Lee <[email protected]>
2132
* config/x_ac_mrnet : removed xmlrpc lib dependence for cray-xt
3133

INSTALL

Lines changed: 38 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -13,24 +13,26 @@ Dependent Packages
1313
Table 1. STAT Dependent Packages
1414
Package What It Does
1515
Package Web Page
16-
Graphlib version 2.0 or greater Graph creation, merging, and
16+
Graphlib version 3.0 or greater Graph creation, merging, and
1717
export
18-
https://github.com/lee218llnl/STAT/
18+
https://github.com/LLNL/graphlib/
1919
Launchmon Scalable daemon co-location
20-
http://sourceforge.net/projects/launchmon/
20+
https://github.com/LLNL/LaunchMON
2121
Libdwarf Debug information parsing (Required by StackWalker)
22-
http://reality.sgiweb.org/davea/dwarf.html
22+
https://www.prevanders.net/dwarf.html
2323
MRNet version 3.0 or greater Scalable multicast and reduction
2424
network
25-
http://www.paradyn.org/mrnet/
25+
https://github.com/dyninst/mrnet
2626
StackWalker Lightweight stack trace sampling
27-
http://www.paradyn.org/html/downloads.html
27+
https://github.com/dyninst/dyninst
2828

2929
In addition, the STAT GUI requires Python with PyGTK, both of
3030
which are commonly preinstalled with many Linux operating
3131
systems. The Pygments Python module can optionally be installed
3232
to allow the STAT GUI to perform syntax highlighting of source
33-
code.
33+
code. The STAT GUI also requires SWIG to generate Python
34+
wrappers for STAT's core functionality. Another GUI requirement
35+
is the Graphviz package to render the DOT format graph files.
3436

3537
STAT can also be optionally built with the Fast Global File
3638
Status (FGFS) library. This library helps STAT identify when a
@@ -40,23 +42,30 @@ Dependent Packages
4042
STAT frontend and distribute its contents to the daemons via
4143
the MRNet communication tree. The two necessary components of
4244
FGFS can be downloaded from
43-
https://github.com/dongahn/MountPointAttributes and
44-
https://github.com/dongahn/FastGlobalFileStatus
45+
https://github.com/LLNL/MountPointAttributes and
46+
https://github.com/LLNL/FastGlobalFileStatus
4547
__________________________________________________________
4648

4749
Installation
4850

4951
A script that downloads and installs STAT and all its
5052
dependencies for BlueGene/Q has been created and can be
5153
downloaded at
52-
https://github.com/lee218llnl/STAT/blob/master/script-stat-inst
53-
all or can be found in the top-level directory of the STAT
54-
source. Note this script was developed for BlueGene/Q systems,
55-
but can be used as guidance for other systems as well.
54+
https://github.com/LLNL/STAT/blob/master/script-stat-install or
55+
can be found in the top-level directory of the STAT source.
56+
Note this script was developed for BlueGene/Q systems, but can
57+
be used as guidance for other systems as well.
5658

5759
STAT and its dependencies can also be built via the Spack
5860
package management tool, available at
59-
http://scalability-llnl.github.io/spack/index.html.
61+
https://github.com/LLNL/spack. Running spack install stat
62+
should build STAT and all of its dependencies, including those
63+
require for the STAT GUI. Note that two Spack variants exist.
64+
The first is +examples, to enable building example MPI code
65+
that STAT can be tested against. This is disabled by default to
66+
avoid requiring an MPI library, but enabling it will trigger a
67+
build of MPI. The second is +dysect to enable building of the
68+
DySectAPI.
6069

6170
When building STAT itself, first run configure. You will need
6271
to use the --with-package options to specify the install prefix
@@ -74,8 +83,9 @@ Installation
7483
--with-launchmon and --with-mrnet configure options, thus it is
7584
important to specify both of these even if they share a prefix.
7685

77-
STAT will try to build the GUI by default. If you need to
78-
modify your PYTHONPATH envirnment variable to search for side
86+
STAT will try to build the GUI by default. Building and running
87+
the STAT GUI requires SWIG and pygtk. If you need to modify
88+
your PYTHONPATH envirnment variable to search for side
7989
installed site-packages, you can do this by specifying
8090
STAT_PYTHONPATH=path during configure. This will add the
8191
appropriate directory to the $PYTHONPATH environment variable
@@ -98,15 +108,15 @@ Installation
98108
work out of the box, but it provides good guidance on the steps
99109
required.
100110

101-
To compile on Cray systems, specify --with-cray-xt. An example
102-
configure line for Cray:
111+
To compile on Cray systems runnig alps, you no longer need to
112+
specify --with-cray-alps. An example configure line for Cray:
103113

104114
./configure --with-launchmon=/tmp/work/lee218/install \
105115
--with-mrnet=/tmp/work/lee218/install \
106116
--with-graphlib==/tmp/work/lee218/install \
107117
--with-stackwalker=/tmp/work/lee218/install \
108118
--with-libdwarf=/tmp/work/lee218/install \
109-
--prefix=/tmp/work/lee218/install --with-cray-xt \
119+
--prefix=/tmp/work/lee218/install \
110120
MPICC=cc MPICXX=CC MPIF77=ftn --enable-shared LD=/usr/bin/ld
111121

112122
Note that specifying LD=/usr/bin/ld may be required on Cray
@@ -123,13 +133,12 @@ make install
123133
Note that STAT hardcodes the paths to its daemon and filter
124134
shared object, assuming that they are in $prefix/bin and
125135
$prefix/lib respectively, thus testing should be done in the
126-
install prefix after running "make install" and the
127-
installation directory should not be moved. The path to these
128-
components can, however, be overridden with the --daemon and
129-
--filter arguments. Further, the STAT_PREFIX environment
130-
variable can be defined to override the hardcoded paths in
131-
STAT. STAT will also, by default, add rpaths to dependent
132-
libraries. This behavior can be disabled by specifying
133-
"--with-rpath=no". However, when doing so, you must be sure to
134-
set LD_LIBRARY_PATH to point to the directories containing the
135-
dependent libraries.
136+
install prefix after running make install and the installation
137+
directory should not be moved. The path to these components
138+
can, however, be overridden with the --daemon and --filter
139+
arguments. Further, the STAT_PREFIX environment variable can be
140+
defined to override the hardcoded paths in STAT. STAT will
141+
also, by default, add rpaths to dependent libraries. This
142+
behavior can be disabled by specifying --with-rpath=no.
143+
However, when doing so, you must be sure to set LD_LIBRARY_PATH
144+
to point to the directories containing the dependent libraries.

0 commit comments

Comments
 (0)