When viewing the Technical Program schedule, on the far righthand side
is a column labeled "PLANNER." Use this planner to build your own
schedule. Once you select an event and want to add it to your personal
schedule, just click on the calendar icon of your choice (outlook
calendar, ical calendar or google calendar) and that event will be
stored there. As you select events in this manner, you will have your
own schedule to guide you through the week.
You can also create your personal schedule on the SC11 app (Boopsie) on your smartphone. Simply select a session you want to attend and "add" it to your plan. Continue in this manner until you have created your own personal schedule. All your events will appear under "My Event Planner" on your smartphone.
M06: Dealing with MPI Bugs at Scale: Best Practices, Automatic Detection, Debugging, and Formal Verification
SESSION: M06: Dealing with MPI Bugs at Scale: Best Practices, Automatic Detection, Debugging, and Formal Verification
EVENT TYPE: Tutorial
TIME: 8:30AM - 5:00PM
Presenter(s):Matthias S. Mueller, Ganesh Gopalakrishnan, Bronis R. de Supinski, David Lecomber, Tobias Hilbrich
ABSTRACT: MPI programming is error prone, due to the large number of different MPI-calls, the complex MPI semantics and the general difficulties of parallel programming. Debugging is a cumbersome and time-consuming task that is complicated by the number of parallel processes, non-determinism as well as platform dependent bugs. We start with a summary of common MPI errors and programming techniques to avoid those errors in the first place. Afterwards, tools that automatically detect these errors are introduced. Techniques to apply debuggers for cases where these tools provide no insight are also presented. Finally we present a technique for formal verification. We also focus on how these techniques can work together and complement each other. Workflows and comparisons will guide application developers in applying these tools to real world scenarios. The runtime error detection tool MUST can automatically detect and report deadlocks, a large number of different messaging errors, and resource leaks. For parallel debugging we present DDT, which proved to scale up to 220,000 tasks while offering an intuitive and easy to use user interface. The verification tool ISP achieves guaranteed coverage of non-deterministic matches by enforcing relevant interleavings. After the demonstration of these tools, we will provide hands-on exercises.
Matthias S. Mueller - Technische Universitaet Dresden
Ganesh Gopalakrishnan - University of Utah
Bronis R. de Supinski - Lawrence Livermore National Laboratory