Performance Modeling with Tau
Performance Modeling with TAU
We discuss performance modeling and also a programming model for hybrid (threads + MPI) architectures.
Computational resources are under-used due to performance bottlenecks. Performance tuning tools are essential to identify and eliminate the bottlenecks. A variety of profiling and execution analysis tools exist for parallel programs. TAU (Tuning and Analysis Utilities) is a toolkit for the performance analysis and tuning of distributed and multi-threaded programs. TAU can be used by New York Blue users writing a C, C++, or Fortran application who want to understand where the performance bottlenecks are. The TAU performance evaluation tool is available for codes which run on IBM Blue Gene L/P platforms.
We analyzed our code run on BG/P with threads enabled but no modifications to identify thread safe segments. The result was a 20% (out of a potential 400%) improvement.
We also introduce a noninvasive programming model which will allow the effective use of multithreading. It consists of "three" levels of mesh decomposition: the finest is the computational mesh, the middle is the thread mesh and the coarsest is the MPI mesh.