[Tau-announcements] TAU v2.18.3 and POINT releases

Sameer Shende sameer at cs.uoregon.edu
Fri Sep 18 16:21:22 PDT 2009


Hi,
    We are pleased to announce the release of TAU v2.18.3 and the POINT Live-DVD.

http://tau.uoregon.edu/
http://tau.uoregon.edu/point.iso

The following new features have been added since the TAU 2.18.2p4 release on July 1, 2009.

I. Re-engineering of the TAU measurement library
------------------------------------------------

To simplify the usage of TAU, we have converted the usage of several
measurement configurations from compile time to runtime. Instead of re-compiling your application, now you can simply set an environment variable to access the
features. You may specify the following environment variables (as 1/0, on/off, or true/false):
a. TAU_TRACK_HEAP - 1
Triggers a pair of context events (one at entry and the other at routine exit) with the size of the heap memory used.
The context event shows the calling context with the routine name and the callpath that led to the entry and exit events. The depth of the callpath is specified by the TAU_CALLPATH_DEPTH environment variable (default=2, see below). Caveat: this currently only works and tracks heap memory upto 4GB, as the Linux mallinfo call has room for 32 bit values.
b. TAU_TRACK_HEADROOM - 1
Similar to TAU_TRACK_HEAP but here we trigger a context event for the memory headroom (the amount of memory remaining before the process runs out of memory). Caveat - this scheme works well under Cray and IBM BG/P systems, but does not work under Linux, where the method of calculating the headroom (series of mallocs and frees) does not work as malloc can keep returning memory that does not exist.
c. TAU_CALLPATH_DEPTH - 0 or 1

Context events now handle TAU_CALLPATH_DEPTH of 0 or 1.  With 0, they become regular user events, with 1,
they record only the current active event. E.g.,
% setenv TAU_CALLPATH_DEPTH=2, TAU_TRACK_HEAP=1

NumSamples   MaxValue   MinValue  MeanValue  Std. Dev.  Event Name
--------------------------------------------------------------------------------
        40  5.036E+04       2069  3.011E+04  1.228E+04  Heap Memory Used (KB) :
Entry : int main(int, char **) C => void func(int, int) C
        40  5.139E+04   1.13E+04  3.134E+04  1.187E+04  Heap Memory Used (KB) :
Exit : int main(int, char **) C => void func(int, int) C

% setenv TAU_CALLPATH_DEPTH=1, TAU_TRACK_HEAP=1

NumSamples   MaxValue   MinValue  MeanValue  Std. Dev.  Event Name
--------------------------------------------------------------------------------
        40  5.036E+04       2068  3.011E+04  1.227E+04  Heap Memory Used (KB) :
Entry : void func(int, int) C
        40  5.139E+04   1.13E+04  3.134E+04  1.187E+04  Heap Memory Used (KB) :
Exit : void func(int, int) C

% setenv TAU_CALLPATH_DEPTH=0, TAU_TRACK_HEAP=1

NumSamples   MaxValue   MinValue  MeanValue  Std. Dev.  Event Name
--------------------------------------------------------------------------------
       365  5.138E+04      44.39   3.09E+04  1.234E+04  Heap Memory Used (KB) :
Entry
       365  5.138E+04       2064  3.115E+04   1.21E+04  Heap Memory Used (KB) :
Exit

Both profiles and traces may be created using context events.

We have also introduced a tau.conf file where you may specify the values of TAU runtime variables instead of setting these within your environment. For a sample, and the default values of variables, please see tools/src/tau.conf.

TAU retains backward compatibility and it will also accept the previous specification.

II. Paraprof enhancements
-------------------------
* ParaProf now features a new 3D communication matrix
* Fixed ParaProf "Show source code" for Opari OpenMP regions
* ParaProf: Added --dumprank <rank> option to dump a single rank from a .ppk file (or any other format)
* ParaProf: Added --overwrite option to overwrite output files
* Added FSAA (full screen anti-aliasing) option to ParaProf 3D visualizations
* ParaProf now allows the deletion of a metric within a trial

III. PerfExplorer enhancements:
-------------------------------
PerfExplorer creates a new working database and allows a user to load profile files directly from PerfExplorer.


IV. Callstack Query API
----------------------------------------
Added calls to the TAU measurement library to query the callstack:

    TAU_QUERY_DECLARE_EVENT(event)
    TAU_QUERY_GET_CURRENT_EVENT(event)
    TAU_QUERY_GET_EVENT_NAME(event, str)
    TAU_QUERY_GET_PARENT_EVENT(event)


V. Eclipse/PTP enhancements
---------------------------
We have added support for UPC compilers to the External Tools
Framework Eclipse plug-ins, along with support for environment
variable setting in work-flows.  We have updated the TAU plug-ins to
better support recent changes to the TAU configuration system and
improved support for TAU's compiler based instrumentation.  There have
also been numerous minor improvements and bug-fixes.

VI. Other enhancements and bug fixes
------------------------------------
* Added -j and -j=# to installtau for parallel builds (thanks to Kevin Huck)
* tau_instrumentor fixes for preprocessor returns, and routines that return a reference  (thanks to Markus Geimer)
* External tool mode added to ParaProf/PerfExplorer (Paraver)
* Fixed Opari makefile for IBM make
* Fixed Parameter based profiling (map implementation allowed duplicates)
* Added -j and -j=# to installtau for parallel builds
* Fixed derived metrics in Derby
* tau_validate now handles a hanging test case with a timeout
* tau_validate now includes an option to create a table file in addition to the log
* Updates to Paraver profile reader (thanks to Kevin Huck)
* Added -scalasca option, operates the same as -epilog
* Allow escaping of : in TAU_METRICS, for example
(TAU_METRICS=PAPI_NATIVE_INST_RETIRED\\:LOADS:PAPI_NATIVE_INST_RETIRED\\:STORES:linuxtimers:gettimeofday)
* Context events now handle TAU_CALLPATH_DEPTH of 0 or 1.  With 0, they become regular user events, with 1, they record only the current active event.
* Fixed selective instrumentation of templates (e.g. MADNESS)
* Fixed header instrumentation (e.g. MADNESS)
* Enabled C++ demangling with -bfd=download
* Fixed reading of PerfSuite data


VI. POINT LiveDVD
-----------------
http://tau.uoregon.edu/point.iso
now points to the latest version of the LiveDVD. It adds support for the latest releases of PAPI, TAU, VampirTrace, Marmot, and Scalasca and features workshop examples for VampirTrace and Scalasca.

VII. Updated Documentation
--------------------------
We now have a quick reference guide to using TAU (see attached) and have improved our web based documentation, re-organized our user's guide and movies section in the TAU documentaiton.

Please let us know if we may assist you with the use of these tools.

VIII. SC'09
-----------
Come visit us at SC'09 in Portland, OR (Nov 14-20). The TAU team will be at the NNSA/ASC booth and we will be presenting a full day POINT tutorial (MO5: Productive Performance Engineering of Petascale Applications with POINT and VI-HPS, Mon, 8:30am - 5pm), and participating in the "Productivity Tools for MultiCore and Heterogeneous Systems" BOF on Tuesday  5:30 - 7PM (A107-108). Watch our webpage for further updates details. Please send us a note if you would like to see a live TAU demo or if you would like to speak to our team.
	Thanks,
	- Sameer
	(for tau-team at cs.uoregon.edu)


More information about the Tau-announcements mailing list