09-08-2016 | David Ozog: Lessons Learned Analyzing and Optimizing the Performance of Assorted Computational Science Codes

Title: Lessons Learned Analyzing and Optimizing the Performance of Assorted Computational Science Codes

Speaker: David Ozog, PhD Candidate, University of Oregon

Date: September 8, 2016

Time: 9:00am – 11:00am

Location: NASA/LaRC, B1268A, R2120

Host: Beth Lee-Rausch, NASA/LaRC

Abstract: This presentation describes past projects that successfully improved the parallel performance of computational science codes.  Informative performance measurement tools and techniques help us understand the behavior of scientific software applications and their constituent algorithms, which can expose crucial performance bottlenecks on current supercomputer architectures.  As case-studies, this talk considers load balancing strategies in quantum many-body calculations, performance analysis of vectorized algorithms in neutron transport, scientific workflows for molecular dynamics, and novel parallel programming models in computational chemistry.  The juxtaposition can be edifying: for example, performance analysis informs us that quantum chemistry codes are network communication bound due to the inherent load imbalance across their task bundles, whereas neutron transport physics codes are memory latency bound due to the sheer number of non-cached local table lookups.  By examining various optimizations applied to these examples, we glean clues about the future hurdles that face computational scientists as they strive to effectively utilize computer resources with dauntingly high core counts and ever-deepening memory hierarchies.

Bio: David Ozog is currently a PhD student in computer science at the University of Oregon (UO).  He received a dual bachelor’s degree in applied mathematics and physics from Whitman College in 2007, and a master’s degree in chemistry from UO in 2009.  Excited by the interdisciplinary frontier between HPC and computational chemistry, he switched to the computer science program at UO in 2010.  While earning an MS in computer science, David worked in the Neuroinformatics Center at UO on the inverse EEG localization problem, and on load balancing coupled cluster calculations in NWChem.  In 2013, David was awarded the Computational Science Graduate Fellowship, which supports his research in performance measurement of novel parallel algorithms and runtime systems applied to computational chemistry problems.