Kathryn S. McKinley is a Senior Research Scientist at Google (2017-present) and an Adjunct Faculty at the University of Texas at Austin (2013-present). She received her BA, MS, and PhD from Rice University. Her research interests span programming language design and implementation, runtimes, architecture, performance, and tools. She and her collaborators have produced software systems widely used in industry and academia: the DaCapo Java Benchmarks (31,800+ downloads in June 2015), the TRIPS Compiler, the Hoard memory manager (the memory manager in OS X), the MMTk memory management toolkit, the Immix garbage collector (used by Jikes RVM, Haxe, and Rubinius), and the SHIM profiler. 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. Her research has garnered best paper awards, Test-of-Time awards, IEEE Top Picks awards, SIGPLAN Research Highlights, and CACM Research Highlights. She is an IEEE and ACM Fellow.
Kathryn S. McKinley is a Senior Research Scientist at Google (2017-present) and an Adjunct Faculty at the University of Texas at Austin (2013-present). She was previously a Principal Researcher at Microsoft (2011-2017), an Endowed Professor of Computer Science at The University of Texas at Austin (2001-2013), and an Associate Professor at the University of Massachusetts (1993-2001). 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 software systems widely used in academia and industry, including the DaCapo Java Benchmarks (31,800+ downloads in June 2015), the TRIPS Compiler, the Hoard memory manager (the memory manager in OS X), the MMTk memory management toolkit, the Immix garbage collector (used by Jikes RVM, Haxe, and Rubinius), and the SHIM profiler. At Microsoft, her research was currently deployed in products such as the Bing Search engine, the Band, 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, and IBM.
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 collector is 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 11 best paper and test of time awards from ASPLOS, OOPSLA, ICS, SIGMETRICS, IEEE MICRO 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, IBM Faculty Fellowships, and an NSF Career award. She served as program chair for ASPLOS, PACT, PLDI, ISMM, and CGO; as a DARPA ISAT member; as SIGPLAN Treasurer and Secretary; 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, on the ACM Prize selection committee, 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.