Kathryn S. McKinley is a Research Scientist at Google (2017-present) and an Adjunct Faculty 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 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, Rubinius, and Scala), and the SHIM profiler.
Dr. McKinley is an IEEE Fellow and ACM Fellow. Her research has garnered Test-of-Time awards, best paper awards, IEEE MICRO Top Picks awards, SIGPLAN Research Highlights, and CACM Research Highlights. Dr. McKinley was honored to testify to the House Science Committee (Feb. 14, 2013). She served as CRA-W co-chair. She has graduated 22 PhD students. She and her husband have three sons.
Kathryn S. McKinley is a Research Scientist at Google (2017-present) and an Adjunct Faculty at the University of Texas at Austin. 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 aspires to make programming easy and the resulting programs correct and efficient. Her interests span performance, programming languages, compilers, runtime systems, architecture, and operating systems. 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, Rubinius, and Scala), and the SHIM profiler. At Microsoft, her research was deployed in products such as the Bing Search engine, the Band, and Azure cloud services. Her current research focuses on analysis and tools for optimizing the performance and energy efficiency of Google's cloud.
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 systems, 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 [OOPSLA 2006] and the widely used DaCapo Java Benchmark Suite with 31,800+ downloads (June 2015). The OOPSLA 2006 publication won the OOPSLA 2016 Test of Time award.
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 is the fastest garbage collector 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. They introduced 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.
Dr. McKinley, Dr. Todd Mytkowicz, and colleagues introduced 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 13 best paper and test of time awards from ASPLOS, ICS, Middlewear, OOPSLA, SIGMETRICS, IEEE MICRO Top Picks, SIGPLAN Research Highlights, and CACM Research Highlights. Her awards also include a Google Technical Innovation Award (2017), 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; on the SIGPLAN Executive Committee 1999-2001, 2015-present; on two National Academy Studies; and as the co-Editor-in-Chief of TOPLAS. Her service has also included two terms on the SIGPLAN EC. She currently serves as the chair of the ACM Prize selection committee (2018-2019), and on the CRA and CRA-W Boards. In 2008, she created the ACM/IEEE Ken Kennedy Award to honor the technical, policy, and mentoring contributions of her late advisor. Dr. McKinley was honored to testify to the House Science Committee (Feb. 14, 2013) on the ecosystem of government, academia, and industry in driving technology innovation and economic impact.
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 thousands of women and minority computer science undergraduates, graduate students, and PhD researchers.
McKinley has graduated twenty two PhD students. She is currently co-supervising three PhD students.
She and her husband have three sons.
"I have missed more than 9000 shots in my career. I have lost almost 300 games. On 26 occasions I have been entrusted to take the game winning shot... and missed. And I have failed over and over and over again in my life. And that is why I succeed." -- Michael Jordan