[Swift-devel] Notes for log processing
Michael Wilde
wilde at mcs.anl.gov
Thu Sep 22 09:56:22 CDT 2011
I wanted to do some basic plots to better understand the performance and bottlenecks of a Swift script. I started with this doc on log processing:
http://www.ci.uchicago.edu/swift/wwwdev/guides/trunk/userguide/userguide.html#_log_processing
Here's what I had to do to generate a load plot of my Swift run. Hopefully this will help in documenting how to use the new Java plotting configs now, as well as packaging them for easy use with higher level scripts.
- Mike
# Point to the log processing tools
lp=/homes/wilde/swift/src/0.93/cog/modules/swift/dist/swift-svn/libexec/log-processing
# fix normalize-log.pl: FH -> START
# find the start time of the log in decimal unixtime
$ $lp/normalize-log.pl stime amwg_stats-20110922-0541-ii4a5z96.iso >amwg_stats-20110922-0541-ii4a5z96.norm
# convert ISO time to UNIX time in decimal seconds
$ $lp/iso-to-secs <amwg_stats-20110922-0541-ii4a5z96.log >amwg_stats-20110922-0541-ii4a5z96.iso
# Normalize the log to start at time 0.0
$ $lp/normalize-log.pl stime amwg_stats-20110922-0541-ii4a5z96.iso >amwg_stats-20110922-0541-ii4a5z96.norm
This gives, eg:
0 DEBUG Loader arguments: [-config, cf.properties, ...
0.00199985504150391 DEBUG Loader Max heap: 257294336
0.0199999809265137 DEBUG textfiles BEGIN CDM FILE:
0.0199999809265137 DEBUG textfiles END CDM FILE:
0.622999906539917 DEBUG textfiles BEGIN SWIFTSCRIPT:
0.623999834060669 DEBUG textfiles END SWIFTSCRIPT:
# Install the new plotter tools
$ svn co https://svn.ci.uchicago.edu/svn/vdl2/usertools/plotter
U plotter
Checked out revision 5151.
fusion$ cd plotter
fusion$ ant
Buildfile: build.xml
compile:
[javac] Compiling 7 source files to /fusion/gpfs/home/wilde/amwg/run01/plotter/build
jar:
[jar] Building jar: /fusion/gpfs/home/wilde/amwg/run01/plotter/lib/plotter.jar
BUILD SUCCESSFUL
Total time: 2 seconds
# Edit load.fg (or change your plot files to match it)
# cp $lp/load.cfg . # then edit to contain:
xlabel = time
ylabel = load
shape.amwg_stats-20110922-0541-ii4a5z96.load.data = none
label.amwg_stats-20110922-0541-ii4a5z96.load.data = load
# (was eg: label.load.data = load)
# Generate a Load plot:
$ ./plotter/swift_plotter.zsh -s ./load.cfg load.eps *96.load.data
More information about the Swift-devel
mailing list