2.3. Rewriting Binaries

2.3.1. Using MAQAO

TAU also allows you to rewrite your application using the MAQAO package included in PDToolkit 3.17 or above(http://tau.uoregon.edu/pdt.tgz).

Install PDToolkit 3.17+ and configure TAU with -pdt= option which will point TAU to where PDToolkit is installed. Use the tau_rewrite tool to instrument your application. (If TAU is not configured with PDT 3.17+, then tau_rewrite defaults to tau_run.)

% configure -pdt=/usr/local/packages/pdtoolkit-3.17
% make install
% tau_rewrite -T scorep,pdt  -loadlib=/tmp/libfoo.so ./a.out -o a.inst 

2.3.2. Using PEBIL

TAU also allows you to rewrite your application using the PEBIL package included in PDToolkit 3.18.1 or above(http://tau.uoregon.edu/pdt.tgz).

Install PDToolkit 3.18.1 and configure TAU with -pdt= option which will point TAU to where PDToolkit is installed. Use the tau_pebil_rewrite tool to instrument your application.

% tau_pebil_rewrite -T <commands> -f select.tau <exe> [-o] <output_exe> 

The select.tau file supports outer-loop level instrumentation and exclude/include lists of functions just like tau_instrumentor's select.tau (same format). Also, -T <options> are identical to tau_exec -T options.