Computer Sciences Colloquium: Improving parallel systems with architectural insights
Adam Morrison
Abstract:
Developers and researchers design parallel systems and concurrent algorithms using models---both formal and mental---that abstract away details of the underlying hardware. In practice, however, these hidden hardware/software interactions often have a dominating impact on performance. In this talk, I will show how understanding the interplay between hardware and software can lead to more efficient program execution and better algorithms, which are achieved through more precise models and architectural changes: (1) I will show how understanding the implementation of the x86 processors' total store ordering (TSO) memory model enables designing a fence-free work stealing algorithm, which was thought to be impossible. (2) I will describe how insights on the way software uses atomic memory operations lead to a novel hardware architecture design, which parallelizes the execution of certain atomic synchronization instructions instead of serializing them. BIO: Adam Morrison is a Post Doctoral Fellow at the Technion---Israel Institute of Technology. His research focuses on building efficient infrastructure for multicore architectures. He completed a PhD in CS at Tel Aviv University, during which he was awarded an IBM PhD Fellowship as well as Intel and Deutsch prizes.