87
What Is It Good For?! Real World Examples of Vampir Usage at IU Robert Henschel [email protected] Thanks to Scott Teige, Don Berry, Scott Michael, Huian Li, Judy Qiu for providing traces. May 2009

4 HPA Examples Of Vampir Usage

  • Upload
    ptihpa

  • View
    1.034

  • Download
    1

Embed Size (px)

Citation preview

Page 1: 4 HPA Examples Of Vampir Usage

What Is It Good For?!

Real World Examples ofVampir Usage at IU

Robert [email protected]

Thanks to Scott Teige, Don Berry, Scott Michael, Huian Li, Judy Qiu for providing traces.

May 2009

Page 2: 4 HPA Examples Of Vampir Usage

Robert Henschel

Contents• IPP – Repeated Execution of an Application• Runtime Anomaly on the iDataPlex (Tachyon)• Cell B.E. Tracing• Particle Swarm Optimizer – Memory Tracing• Finding an I/O Bottleneck (EMAN)• Cluster Challenge

– WPP, GAMESS• Tracing on Windows• Swarp – Pthread Tracing• MD Simulation

Page 3: 4 HPA Examples Of Vampir Usage

Robert Henschel

What is this all about• Provide a feeling for what Vampir can be used for• Show a few of Vampirs features• Raise the awareness that tracing software is a

complex undertaking

Page 4: 4 HPA Examples Of Vampir Usage

Robert Henschel

IPP - Repeated Execution of an Application• Image analysis pipeline• Every module/binary is called a few hundred times

during a single run

• Setting VT_FILE_UNIQUE=yes allows for normal execution of the pipeline, while traces are produced

• We ended up with 640 traces, that we did not want to look at

• otfprofile was used in bash script to retrieve the profile of every trace, and then combine to a profile of the entire run

Page 5: 4 HPA Examples Of Vampir Usage

Robert Henschel

IPP - Repeated Execution of an Application ppImage_103.0.def.z ppImage_103.0.marker.z ppImage_103.1.events.z ppImage_103.otf ppImage_103.otf_collop.csv ppImage_103.otf_data.csv ppImage_103.otf_func.csv ppImage_103.otf_p2p.csv ppImage_103.otf_result.aux ppImage_103.otf_result.dvi ppImage_103.otf_result.log ppImage_103.otf_result.ps ppImage_103.otf_result.tex

Page 6: 4 HPA Examples Of Vampir Usage

Robert Henschel

IPP - Repeated Execution of an Application

Page 7: 4 HPA Examples Of Vampir Usage

Robert Henschel

IPP - Repeated Execution of an Application

Page 8: 4 HPA Examples Of Vampir Usage

Robert Henschel

IPP - Repeated Execution of an Application

Page 9: 4 HPA Examples Of Vampir Usage

Robert Henschel

IPP - Repeated Execution of an Application

Page 10: 4 HPA Examples Of Vampir Usage

Robert Henschel

IPP - Repeated Execution of an Application

Page 11: 4 HPA Examples Of Vampir Usage

Robert Henschel

IPP - Repeated Execution of an Application

Page 12: 4 HPA Examples Of Vampir Usage

Robert Henschel

IPP - Repeated Execution of an Application

Page 13: 4 HPA Examples Of Vampir Usage

Robert Henschel

IPP - Repeated Execution of an Application

Page 14: 4 HPA Examples Of Vampir Usage

Robert Henschel

IPP - Repeated Execution of an Application

Page 15: 4 HPA Examples Of Vampir Usage

Robert Henschel

IPP - Repeated Execution of an Application

Page 16: 4 HPA Examples Of Vampir Usage

Robert Henschel

IPP - Repeated Execution of an Application

Page 17: 4 HPA Examples Of Vampir Usage

Robert Henschel

IPP - Repeated Execution of an Application

Page 18: 4 HPA Examples Of Vampir Usage

Robert Henschel

IBM iDataPlex Testing• We are testing an IBM iDataPlex system

– 84 dual quad-core node cluster– Infiniband interconnect

• Tachyon, a part of the SPEC MPI2007 benchmark suite had a strange runtime behavior– 100 vs. 200 seconds

• Tracing the application, made the problem go away, stable runtime at 110 seconds

• There will be a deeper interaction of OpenMPI and VampirTrace in the future, OpenMPI 1.3 now contains VampirTrace

Page 19: 4 HPA Examples Of Vampir Usage

Robert Henschel

IBM iDataPlex Testing

Page 20: 4 HPA Examples Of Vampir Usage

Robert Henschel

IBM iDataPlex Testing

Page 21: 4 HPA Examples Of Vampir Usage

Robert Henschel

IBM iDataPlex Testing

Page 22: 4 HPA Examples Of Vampir Usage

Robert Henschel

IBM iDataPlex Testing

Page 23: 4 HPA Examples Of Vampir Usage

Robert Henschel

IBM iDataPlex Testing

Page 24: 4 HPA Examples Of Vampir Usage

Robert Henschel

Cell B.E. Tracing• Code exists as serial version, MPI version and as Cell

B.E. version• Great to be able to use the same tracing tool on both

platforms and for different parallelization strategies• We used a beta version of VampirTrace for Cell B.E.

Page 25: 4 HPA Examples Of Vampir Usage

Robert Henschel

Cell B.E. Tracing

Page 26: 4 HPA Examples Of Vampir Usage

Robert Henschel

Cell B.E. Tracing

Page 27: 4 HPA Examples Of Vampir Usage

Robert Henschel

Cell B.E. Tracing

Page 28: 4 HPA Examples Of Vampir Usage

Robert Henschel

Cell B.E. Tracing

Page 29: 4 HPA Examples Of Vampir Usage

Robert Henschel

Cell B.E. Tracing

Page 30: 4 HPA Examples Of Vampir Usage

Robert Henschel

Cell B.E. Tracing

Page 31: 4 HPA Examples Of Vampir Usage

Robert Henschel

Cell B.E. Tracing

Page 32: 4 HPA Examples Of Vampir Usage

Robert Henschel

Cell B.E. Tracing

Page 33: 4 HPA Examples Of Vampir Usage

Robert Henschel

Cell B.E. Tracing

Page 34: 4 HPA Examples Of Vampir Usage

Robert Henschel

Cell B.E. Tracing

Page 35: 4 HPA Examples Of Vampir Usage

Robert Henschel

Cell B.E. Tracing

Page 36: 4 HPA Examples Of Vampir Usage

Robert Henschel

Cell B.E. Tracing

Page 37: 4 HPA Examples Of Vampir Usage

Robert Henschel

Cell B.E. Tracing

Page 38: 4 HPA Examples Of Vampir Usage

Robert Henschel

PSO – Memory Footprint• Determining the memory footprint of a particle swarm

optimizer

Page 39: 4 HPA Examples Of Vampir Usage

Robert Henschel

PSO – Memory Footprint

Page 40: 4 HPA Examples Of Vampir Usage

Robert Henschel

PSO – Memory Footprint

Page 41: 4 HPA Examples Of Vampir Usage

Robert Henschel

EMAN Tracing• Application ran very slow on regular hardware, NFS

mounted file system• Application was faster on Lustre• Application was really fast on shared memory filesystem• Suspected I/O problem• However, the actual I/O problem was not visible in

Vampir, as this had to do with file locking

Page 42: 4 HPA Examples Of Vampir Usage

Robert Henschel

EMAN Tracing

Page 43: 4 HPA Examples Of Vampir Usage

Robert Henschel

EMAN Tracing

Page 44: 4 HPA Examples Of Vampir Usage

Robert Henschel

EMAN Tracing

Page 45: 4 HPA Examples Of Vampir Usage

Robert Henschel

Cluster Challenge• WPP (Wave Propagation Program)• Vampir helped to understand the code (few comments,

not sure what the code does, and how it does it)• PAPI counter helped to show that on X86, peak floating

point performance was already achieved, thus, not much room for tuning, besides rewriting the algorithm

Page 46: 4 HPA Examples Of Vampir Usage

Robert Henschel

Cluster Challenge

Page 47: 4 HPA Examples Of Vampir Usage

Robert Henschel

Cluster Challenge

Page 48: 4 HPA Examples Of Vampir Usage

Robert Henschel

Cluster Challenge

Page 49: 4 HPA Examples Of Vampir Usage

Robert Henschel

Cluster Challenge

Page 50: 4 HPA Examples Of Vampir Usage

Robert Henschel

Cluster Challenge

Page 51: 4 HPA Examples Of Vampir Usage

Robert Henschel

Cluster Challenge

Page 52: 4 HPA Examples Of Vampir Usage

Robert Henschel

Cluster Challenge

Page 53: 4 HPA Examples Of Vampir Usage

Robert Henschel

Cluster Challenge

Page 54: 4 HPA Examples Of Vampir Usage

Robert Henschel

Cluster Challenge• GAMESS• Problem with MPI communication, while socket

communication worked just fine

Page 55: 4 HPA Examples Of Vampir Usage

Robert Henschel

Tracing on Windows• On Windows, the trace creation is handled by MS MPI• Unfortunately, not a lot of details are provided, thus ,the

traces look a bit different to traces that are created on Linux– MPI collective operations are not marked as such!

• However, on Windows, you are able to trace C# application in addition to C/C++/Fortran applications– And possibly other applications, that are build on top

of MS MPI

Page 56: 4 HPA Examples Of Vampir Usage

Robert Henschel

Tracing on Windows

Page 57: 4 HPA Examples Of Vampir Usage

Robert Henschel

Tracing on Windows

Page 58: 4 HPA Examples Of Vampir Usage

Robert Henschel

Tracing on Windows

Page 59: 4 HPA Examples Of Vampir Usage

Robert Henschel

Tracing on Windows

Page 60: 4 HPA Examples Of Vampir Usage

Robert Henschel

Tracing on Windows

Page 61: 4 HPA Examples Of Vampir Usage

Robert Henschel

Tracing on Windows

Page 62: 4 HPA Examples Of Vampir Usage

Robert Henschel

Tracing on Windows

Page 63: 4 HPA Examples Of Vampir Usage

Robert Henschel

Tracing on Windows

Page 64: 4 HPA Examples Of Vampir Usage

Robert Henschel

Tracing on Windows

Page 65: 4 HPA Examples Of Vampir Usage

Robert Henschel

Swarp - Pthread Tracing• SWARP can be run as a Pthread parallel application• Tracing of Pthread parallel applications is a new feature

of the latest VampirTrace version• Enabled by default, if Pthread flag is detected on the

compile and link commands, but can be forced as well

• Compiling with -DVTRACE_PTHREAD and including vt_user.h in the appropriate file

– Will trace the overhead of Pthread functions

Page 66: 4 HPA Examples Of Vampir Usage

Robert Henschel

Swarp - Pthread Tracing

Page 67: 4 HPA Examples Of Vampir Usage

Robert Henschel

Swarp - Pthread Tracing

Page 68: 4 HPA Examples Of Vampir Usage

Robert Henschel

Swarp - Pthread Tracing

Page 69: 4 HPA Examples Of Vampir Usage

Robert Henschel

Swarp - Pthread Tracing

Page 70: 4 HPA Examples Of Vampir Usage

Robert Henschel

Swarp - Pthread Tracing

Page 71: 4 HPA Examples Of Vampir Usage

Robert Henschel

MD Application, Serial, OpenMP, MPI, Hybrid• MD application, part of the research of physics

professor Chuck Horowitz• Used for studying dense nuclear matter in supernovae,

white dwarf and neutron stars • In production use on a daily basis• Exists as serial, MPI, OpenMP, Hybrid and

MDGRAPE-2 application• MDGRAPE-2 tracing is not supported out of the box,

but could be implemented using manual instrumentation

Page 72: 4 HPA Examples Of Vampir Usage

Robert Henschel

MD Application, Serial, OpenMP, MPI, Hybrid

Page 73: 4 HPA Examples Of Vampir Usage

Robert Henschel

MD Application, Serial, OpenMP, MPI, Hybrid

Page 74: 4 HPA Examples Of Vampir Usage

Robert Henschel

MD Application, Serial, OpenMP, MPI, Hybrid

Page 75: 4 HPA Examples Of Vampir Usage

Robert Henschel

MD Application, Serial, OpenMP, MPI, Hybrid

Page 76: 4 HPA Examples Of Vampir Usage

Robert Henschel

MD Application, Serial, OpenMP, MPI, Hybrid

Page 77: 4 HPA Examples Of Vampir Usage

Robert Henschel

MD Application, Serial, OpenMP, MPI, Hybrid

Page 78: 4 HPA Examples Of Vampir Usage

Robert Henschel

MD Application, Serial, OpenMP, MPI, Hybrid

Page 79: 4 HPA Examples Of Vampir Usage

Robert Henschel

MD Application, Serial, OpenMP, MPI, Hybrid

Page 80: 4 HPA Examples Of Vampir Usage

Robert Henschel

MD Application, Serial, OpenMP, MPI, Hybrid

Page 81: 4 HPA Examples Of Vampir Usage

Robert Henschel

MD Application, Serial, OpenMP, MPI, Hybrid

Page 82: 4 HPA Examples Of Vampir Usage

Robert Henschel

MD Application, Serial, OpenMP, MPI, Hybrid

Page 83: 4 HPA Examples Of Vampir Usage

Robert Henschel

MD Application, Serial, OpenMP, MPI, Hybrid

Page 84: 4 HPA Examples Of Vampir Usage

Robert Henschel

MD Application, Serial, OpenMP, MPI, Hybrid

Page 85: 4 HPA Examples Of Vampir Usage

Robert Henschel

MD Application, Serial, OpenMP, MPI, Hybrid

Page 86: 4 HPA Examples Of Vampir Usage

Robert Henschel

MD Application, Serial, OpenMP, MPI, Hybrid

Page 87: 4 HPA Examples Of Vampir Usage

Robert Henschel

MD Application, Serial, OpenMP, MPI, Hybrid