A special Waf tool named ParallelDebug is used to inject code in Waf modules and obtain information on the execution. This module is provided in the folder playground
and must be imported in one's project before use:
def configure(conf): conf.check_tool('ParallelDebug', tooldir='.')
After executing a full build, a trace of the execution is output in /tmp/test.dat
; it may be processed by other applications such as Gnuplot:
#! /usr/bin/gnuplot -persist set terminal X11 set ylabel "Amount of jobs running in parallel" set xlabel "Time in seconds" set title "Amount of jobs running in parallel (waf -j3)" unset label set yrange [-0.1:4] set ytic 1 plot 'test.dat' using 1:3 with lines title "" lt 3