Kirshanthan “Krish” Sundararajah
Addressing the performance gap between software and hardware is one of the major challenges in computer science and engineering. Software stacks and optimization approaches have long been designed targeting regular programs—programs that operate over regular data structures such as arrays and matrices using loops, partly due to the abundance of regular programs in computer software. But irregular programs—programs that traverse over irregular or pointer-based data structures such as sparse matrices, trees, and graphs using a mix of recursion and loops—also appear in many essential applications such as simulation, data mining, graphics, etc. Loop transformation frameworks are good examples of performance-enhancing scheduling transformations for regular programs. Generally, these frameworks reason about transformations in a composable manner (i.e., reason about a sequence of transformations).
In the past, scheduling transformations for irregular programs were ad-hoc, and they were considered on the horizon by loop transformation frameworks. Even the few existing ones were applied in isolation, and the composability of these transformations was not studied extensively. In this talk, I will discuss a composable framework for verifying the correctness of scheduling transformations for irregular programs. We will explore the abstractions used in different parts of our framework, and I will show ways to extend these abstractions to capture a wide variety of scheduling transformations for irregular programs. Finally, I will discuss future directions on incorporating dependence analyses and data layout abstractions into this framework.
Kirshanthan (“Krish”) Sundararajah is a PhD candidate in the Elmore Family School of Electrical and Computer Engineering, advised by Milind Kulkarni. He earned his Bachelor's degree from the University of Moratuwa, Sri Lanka, and his Master’s degree from Purdue University. His research interests lie in the areas of compilers, programming languages, and high-performance computing. He is particularly interested in solving the performance challenges of irregular applications. He has published in top conferences such as ASPLOS, OOPSLA, and PLDI and is a recipient of the Bilsland Dissertation Fellowship.