New analysis profiling implementation. Triggering collection of system info works...
authoragheata <agheata@f7af4fe6-9843-0410-8265-dc069ae4e863>
Sun, 14 Mar 2010 09:43:01 +0000 (09:43 +0000)
committeragheata <agheata@f7af4fe6-9843-0410-8265-dc069ae4e863>
Sun, 14 Mar 2010 09:43:01 +0000 (09:43 +0000)
commit096b5a2e0678c89d427cee88d6c69e7f030cac2c
treefbe7cf19d8fb46bb521d0a88f47fae44b8c44f86
parent85a699d8dac09db805c2cc1d4c760fadc845fc54
New analysis profiling implementation. Triggering collection of system info works only in "local" modeis done as usual via:
   mgr->SetNSysInfo(nevents); // Dump info in sysinfo.txt each nevents
A final displayed canvas contains: alocated VM[kB] per event for each top task (plot includes all subtasks), alocated VM for all tasks in CreateOutputObjects, alocated VM for all tasks in Terminate, VM profile for full analysis.

The memory profile is stored in a tree in a file sysinfo.root. One can investigate his task via:
   mgr->ProfileTask(const char *taskname); or:
   mgr->ProfileTask(Int_t itask)
where: taskname is the task name and itask is the task index in the list of top level tasks.
This will produce a canvas with memory alocation in CreateOutputObjects(), Exec() and Terminate() methods + CPU time spent per event
ANALYSIS/AliAnalysisManager.cxx
ANALYSIS/AliAnalysisManager.h