work_queue_graph_log - plots Work Queue statistics logs.


work_queue_graph_log [options] work-queue-log


work_queue_graph_log is a script to plot some of the statistics from a Work Queue log, as generated by work_queue_specify_log from the C and Perl Work Queue APIs, or by q.specify_log from the Python Work Queue API. It assumes the availability of gnuplot.

work_queue_graph_log generates four plots, all with timestamp as the independent variable:

time: timestamp, total_send_time, total_receive_time, total_transfer_time, and total_manager_time. (The last two generated by the script, not in the log.)

time-log: log-scale version of times, plus total_execute_time.

tasks: total_tasks_waiting, total_tasks_running, total_workers_connected, total_workers_busy, and total_cores

tasks-log: log-scale version of tasks, plus total_complete_tasks.


  • -o <prefix-output>
    Generate prefix-output.{time,time-log,tasks,tasks-log}.<output-format>. Default is <work-queue-log>.
  • -o <prefix-output>
    Generate prefix-output.{time,time-log,tasks,tasks-log}.<output-format>. Default is <work-queue-log>.
  • -c <gnuplot-path>
    Specify the location of the gnuplot executable. Default is gnuplot.
  • -r <range>
    Range of time to plot, in time units (see -u) from the start of execution. Of the form: min:max, min:, or :max.
  • -T <output-format>
    Set output format. Default is png. If "text", then the gnuplot scripts are written instead of the images.
  • -u <time-unit>
    Time scale to output. One of s,m,h or d, for seconds, minutes (default), hours or days.
  • -h
    Show help text.


General use:

% work_queue_graph_log mylog
% ls mylog*.png
mylog.tasks.png mylog.tasks-log.png mylog.time.png mylog.time-log.png

Plot up to the eleventh hour:

% work_queue_graph_log -u h -r :11 mylog
Generate script text:

% work_queue_graph_log -Ttext mylog
% ls mylog*.gnuplot
mylog.tasks.png.gnuplot mylog.tasks-log.png.gnuplot mylog.time.png.gnuplot mylog.time-log.png.gnuplot

Specify gnuplot path:

% work_queue_graph_log -c/some/dir/bin/gnuplot mylog


  • Some formats need a special setup for their gnuplot output terminal. -T blindly passes the output format

The Cooperative Computing Tools are Copyright (C) 2005-2021 The University of Notre Dame. This software is distributed under the GNU General Public License. See the file COPYING for details.