Improving Application Performance Using TAU

Date and Time: 
2014 April 9th - FULL DAY
CG - room TBD
Wyatt J. Spear

To help computational scientists evaluate and improve the performance of their parallel, scientific applications, we present the TAU Performance System. This tutorial will cover performance data collection, analysis, and performance optimization. The tutorial will introduce profiling and debugging support in TAU. TAU includes support for tracking callstacks at the point of program failure to isolate runtime faults. The tutorial will cover performance evaluation of parallel programs written in Python, Fortran, C++, C, and UPC, using MPI, and other runtime layers such as CUDA, OpenCL, SHMEM, and OpenMP with the TAU Performance System. We will demonstrate different techniques for program instrumentation. We also highlight TAU's support for memory debugging, and I/O evaluation. The hands-on portion of the tutorial will guide developers through the instrumentation, measurement, and analysis process steps in TAU. We will introduce new instrumentation techniques to simplify the usage of performance tools. These will include compiler-based instrumentation, event-based sampling, binary re-writing, library preloading for CUDA instrumentation, native and MIC offloading based modes for Intel Xeon Phi coprocessors, and automatic instrumentation of source code. Performance data will include MPI timings, GPGPU transfers, runtime bounds checking, I/O and memory, and hardware performance counters from PAPI. The tutorial will demonstrate how TAU's instrumentation and analysis tools may be used with external tools such as Score-P, Scalasca, OTF2, PAPI, and Vampir and how to store and analyze performance data using the TauDB database.. For the hands-on session, the participants will be able to use NCAR systems or an optional HPC Linux LiveDVD that will allow them to boot their laptops to a Linux distribution that has the above tools installed. The participants are encouraged to bring a laptop with them and install VirtualBox virtualization software and related OVA files from

Speaker Description: 

Wyatt is a software engineer at the University of Oregon's Performance Research Lab. There he helps develop and provide support for the Tuning and Analysis Utilities (TAU), a performance analysis system for high performance applications. He specializes in performance data collection, performance analysis tools and Eclipse tool integration. He is an Eclipse committer on the Parallel Tools Platform (PTP) project where he primarily works on the External Tools Framework, helping command line based tools find a place in the Eclipse UI. He holds a B.S. and M.S. in Computer and Information Science from the University of Oregon, the latter received in 2004.

PDF icon tau_sea14_tutorial.pdf6.59 MB

Event Category: