GCASR 2016‎ > ‎Presentations‎ > ‎

Lather, Rinse, Repeat: Opportunities in High Performance Software Development

Lather, Rinse, Repeat:   Opportunities in High Performance Software Development        
Paul Petersen (Intel)
Software development is cyclic in nature often known as the “Edit, Compile, Debug/Profile” cycle.   If your goal is just correct code, this cycle may quickly converge since you are only repairing mistakes in your initial implementation.  However, like in the old joke about “Lather, Rinse, Repeat”, when tuning for high performance it may feel like an infinite loop.    This talk will discuss several of the analysis tools we develop in our team that are useful in this cycle to gather more information about your application, assisting you to make informed decisions about which bottlenecks in your code are reducing its potential performance.
Paul Petersen is a Sr. Principal Engineer in the Software and Solutions Group (SSG) at Intel leading a team in defining next generation features for parallel runtimes and software analysis tools.   He received a Ph.D. degree in Computer Science from the University of Illinois in 1993.   After UIUC, he was employed at Kuck and Associates, Inc. (KAI) working on auto-parallelizing compiler (KAP), and was involved in the early definition and implementations of OpenMP.   While at KAI, he developed the Assure line of parallelization/correctness products, for Fortran, C++ and Java.   In 2000, Intel Corporation acquired KAI, and he joined the software tools group creating the Thread Checker products, which evolved into the Inspector and Advisor components of the Intel® Parallel Studio.  Inspector uses dynamic binary instrumentation to detect memory and concurrency bugs, and Advisor uses similar techniques along with performance measurement and modeling to assist developers in transforming existing serial applications to be ready for parallel execution.