Kathryn S. McKinley is a Principal Research at Microsoft. She was previously an Endowed Professor of Computer Science at The University of Texas at Austin. She received her BA, MS, and PhD from Rice University. Her research interests span programming language design and implementation, runtimes, architecture, performance, and energy efficiency for cloud and mobile. She and her collaborators have produced several tools widely used in industry and academia: the DaCapo Java Benchmarks (31,800+ downloads in June 2015), the TRIPS Compiler, the Hoard memory manager, the MMTk memory management toolkit, and the Immix garbage collector. Her current work focuses cloud systems and on Uncertain<T>, a programming language system for correct and efficient applications that sense and reason about the complexity of the world with estimates. She has graduated 22 PhD students. Dr. McKinley was honored to testify to the House Science Committee (Feb. 14, 2013). She served as CRA-W co-chair. She is an IEEE and ACM Fellow.
Professor McKinley is a Principal Researcher at Microsoft (2011-present). She previously held an Endowed Professorship in the Department of Computer Science at The University of Texas at Austin and was on the Faculty from 2001 to 2013. From 1993 to 2001, she was a Faculty member at the University of Massachusetts, Amherst. She received her BA, MS, and Ph.D. from Rice University, where her PhD advisor was Ken Kennedy. Her research interests span programming languages, compilers, runtime systems, architecture, performance, and energy. She and her collaborators have produced a number of tools widely used in academia and industry, including the DaCapo Java Benchmarks, the TRIPS Compiler, the Hoard memory manager, the MMTk memory management toolkit, and the Immix garbage collector. At Microsoft, her research is currently deployed in products such as the Band, Bing Search engine, and Azure cloud services.
Her early research focused on tools and automatic optimizations for parallel architectures. She introduced the first general purpose model for optimizing parallelism and locality together by reasoning about parallelism and the cache locality of dense matrix algorithms using loop permutation, loop reversal, fusion, and distribution. This work was selected in 2014 for the ICS 25th Anniversary Volume.
With her PhD student, Emery Berger, and collaborators, they introduced the first scalable memory manager that limited false sharing, synchronization, and fragmentation (provably), which remains widely used by a range of applications, Apple's OS X, IBM, and other OSes.
She was a leader of the NSF Large ITR DaCapo research project, that introduced dynamic optimizations for managed languages. Contributions included the introduction of now standard performance evaluation methodologies for dynamically optimized languages and the widely used DaCapo Java Benchmark Suite with 31,800+ downloads (June 2015).
Her contributions to the theory and practice of garbage collection (automatic memory management) include the first apples-to-apples algorithmic comparisons that showed free-list allocators give up substantial amounts of locality for smaller memory footprints compared to copying algorithms with contiguous allocation (with Cheng and Blackburn). This work won the SIGMETRICS 2014 Test of Time of Award, and inspired a new class of mark-region garbage collectors. Blackburn and McKinley's Immix mark-region collector manages memory hierarchically using fixed sized blocks consisting of lines, similar to pages and cache lines. Immix is the first collector to mix marking and object copying in a single pass. To date, Immix garbage collectors are the fastest in the literature.
In the Darpa funded TRIPS project at UT Austin, she collaborated with Professors Burger and Keckler to deliver technology-scalable, power efficient, high-performance EDGE (Explicit Data Graph Execution) architectures and their programming systems. By defining a hybrid execution model consisting of block-atomic execution of fixed-sized dataflow graphs, the TRIPS compiler was the first to compile conventional programming languages to extremely efficient dataflow execution. Their ASPLOS 2009 paper evaluated the TRIPS hardware (not simulated!) and software, winning Best Paper.
Her current research focuses on (1) performance and energy efficiency in cloud and mobile systems and (2) is developing the Uncertain<T>, programming language system to create correct and efficient applications that sense and reason about the complexity of the world with estimates. The ASPLOS 2014 paper that introduced Uncertain<T> was selected for IEEE MICRO Top Picks and SIGPLAN Research Highlights. Her research has received nine best paper and test of time awards from ASPLOS, OOPSLA, ICS, SIGMETRICS, IEEE Top Picks, SIGPLAN Research Highlights, and CACM Research Highlights. Her other awards include the ACM SIGPLAN Programming Languages Software Award, the ACM SIGPLAN Distinguished Service Award, and an NSF Career award. She served as program chair for ASPLOS, PACT, PLDI, ISMM, and CGO; as a DARPA ISAT member; as the SIGPLAN Treasurer; on two National Academy Studies; and as the co-Editor-in-Chief of TOPLAS. In 2008, she created the ACM/IEEE Ken Kennedy Award to honor her late advisor. Dr. McKinley was honored to testify to the House Science Committee (Feb. 14, 2013) on the role of government, academia, and industry in driving technology innovation and business. She currently serves as the SIGPLAN Secretary, and on the CRA and CRA-W Boards.
As co-chair of the CRA-W Board (2011-2014), she raised funding and oversaw programs to increase the diversity of computer science researchers, coordinating 100s of volunteers to positively impact the lives of 1000s of women and minority computer science undergraduates, graduate students, and PhD researchers.
McKinley has graduated twenty two PhD students and is currently supervising one PhD student. She and her husband have three sons.