-
Notifications
You must be signed in to change notification settings - Fork 12
Plotting Results
The parser requires numpy and joblib, while the plot scripts require numpy and matplotlib. Instructions for installing these can be found online, but here's one way to install it for Ubuntu 12.04:
-
Ensure Python is at least 2.7 and pip is installed.
-
Perform:
sudo aptitude install libfreetype6-dev libpng12-dev gfortran sudo pip install virtualenv sudo pip install ipython sudo pip install joblib numpy matplotlib
-
You may also need to perform
sudo easy_install -U distribute
.
Ensure the logs are structured on your local machine as: */results/<system>/<num-slaves>
. For example, */results/giraph/32
or */results/graphlab/128
. This is done automatically if you use */ec2/uw-ec2.py get-logs
.
To parse all available data, perform:
cd */results/plots/
./gen-all.sh
This will generate the data for the worker machines (data_time.py, data_mem.py, data_net.py) and the data for the master (data_mem_master.py, data_net_master.py). These data files are used by the plot script.
Note: The parser only parses results for 16, 32, 64, and 128 machines by default. To change this, modify MACHINES
in */results/plots/constants.py
. You may also need to modify GRAPHS
, depending on the datasets you use.
Use */results/plots/plot.py
for regular plotting or */results/plots/plot-with-cuts.py
for plots with a cut y-axis. Use --help
to get the available options.
Note: Like the parser, this is also specialized for our results on 16, 32, 64, and 128 m1.xlarge machines for the LJ, OR, AR, TW, and UK graphs. This also relies on MACHINES
and GRAPHS
in */results/plots/constants.py
.