Bio and Research Summary

Michael L. Scott.  b. 1959.  Ph.D. (1985) University of Wisconsin–Madison.  Assistant Professor (1985–91), Associate Professor (1991–97), Department Chair (1996–99, 2007, 2017, 2020–present), Full Professor (1997–present), University of Rochester.  Arthur Gould Yates Professor of Engineering (2016–present).  Senior Scientist, Laboratory for Laser Energetics (2001–2004); Visiting Professor, Department of Computer Sciences, University of Wisconsin—Madison, and Visiting Scientist, Google Madison (2014–2015).  IBM Faculty Development Award (1986–88).  Edsger W. Dijkstra Prize in Distributed Computing, 2006 (with John M. Mellor-Crummey).  ACM Fellow (2006).  IEEE Fellow (2010).  UR Goergen Award for Distinguished Achievement and Artistry in Undergraduate Teaching, 2001.  UR Riker Award for Excellence in Graduate Teaching, 2020.  Hajim School Lifetime Achievement Award, 2018.  General Chair, SOSP 2003.  Program Chair, TRANSACT 2007, PPoPP 2008, ASPLOS 2012.  Author of Programming Language Pragmatics, a leading text in programming language design and implementation, and of Shared-Memory Synchronization, a comprehensive tour of the field. 

Prof. Scott’s research has primarily addressed the design and implementation of systems software for parallel and distributed computing.  He is best known for work in synchronization mechanisms for multithreaded systems, including persistence, transactional memory (TM), concurrency pedagogy, and deterministic parallelism. 

The persistence work began with student Joe Izraelevitz (now at CU Boulder) and is continuing with current students Haosen Wen, Alan Beadle, Wentao Cai, Louis Jenkins, and Mingzhe Du.  It addreses memory models and correctness criteria, persistent data structures, memory management, lock-based and transactional systems for failure atomicity, and systems support for persistent segments.  Rochester’s definition of durable linearizability, introduced at DISC 2016, has become the standard correctness criterion for persistent data structures.  The Ralloc persistent memory allocator is available for open-source download.  In related work, the Hodor system facilitates safe, protected sharing of memory-mapped resources (including persistent memory) among mutually untrusting applications with independent failure modes.  Hodor, too, is available for open-source download

The TM work is joint with former students Bill Scherer (now at HP Houston), Virendra Marathe (now at Oracle Labs), Mike Spear (now at Lehigh University), Luke Dalessandro (now at the University of Washington), Lingxiang Xiang (now at Intel Labs), and Ryan Yates (now at Houghton College); and with Sandhya Dwarkadas and her student Arrvindh Shriraman (now at Simon Fraser University).  It has addressed a wide variety of topics, including metadata organization, buffering and eagerness, contention management, inevitability, high-level semantics, nonblocking implementations, retry mechanisms, validation and consistency, privatization, compiler optimizations, and hardware support (US patents numbers 8,180,971 and 8,661,204).  The RSTM package, available for open-source download, supports experimentation with a large number of TM implementations behind a single API; it has been adopted for use in labs around the world.  Work with a large number of colleagues, at multiple institutions, has led to the ISO technical specification for transactional memory in C++ and the forthcoming specification for TM Lite

Work begun with Rochester alumnus John Mellor-Crummey (now on the faculty of Rice University), and continued with multiple students, has addressed the design of fast, contention-free synchronization algorithms and concurrent data structures.  The MCS queue-based spin lock, co-designed with Mellor-Crummey and the subject of the Dijkstra Prize, appears in a wide variety of commercial and academic systems.  The M&S lock-free queue, co-designed with former student Maged Michael (now at Facebook), is part of the Java standard library.  Lock-free Exchanger and SynchronousQueue algorithms, co-designed with Doug Lea and Bill Scherer, were adopted for inclusion in Java 6.  Other projects have included scheduler-conscious synchronization, timeout-capable locks (Best Paper Award at HiPC 2005; US patent #6,965,961), nonblocking concurrent objects (Best Student Paper award at PPoPP 2006, CACM 2009 Research Highlight), dual data structures (combining conditional waiting with nonblocking progress), and software transactional memory. 

Work on Deterministic Parallel Ruby, begun with former student Li Lu (now at Xunjing Technology), harnesses the computing power of multicore machines without sacrificing the simplicity and ease of programming that is the hallmark of scripting.  It incorporates a novel determinism checker based on fast on-line logging of memory activity.  Work with Rochester colleague Kai Shen and former student Kostas Menychtas (both now at Google), and continuing with current student Mohammad Hedayati-Goudarzi) has developed operating system techniques for fair, protected access to fast devices and accelerators. 

The Cashmere project, begun with former students Bill Bolosky (now at Microsoft Research) and Leonidas Kontothanassis (now at Facebook), and continuing with Robert Stets (also at Google), exploited multiprocessor clusters and low-latency system area networks for high-performance, software distributed shared memory.  The Cashmere coherence protocol and its two-way diffing mechanism are the subject of US patent #6,341,339.  The InterWeave project (Best Paper award at ICPP 2002) was a follow-on to Cashmere.  It extended the convenience of persistent, type-safe shared state to independently constructed programs running on heterogeneous, geographically distributed machines.  InterWeave was designed to interoperate with industry-standard mechanisms for remote procedure call and remote method invocation.  Implementations were constructed for a wide variety of languages, operating systems, and hardware platforms. 

The Coign project, developed by former student Galen Hunt (now the head of Microsoft Azure Sphere), developed an automatic distributed partitioning system (ADPS) capable of distributing shrink-wrapped component-based software across the nodes of a distributed system in order to minimize communication costs.

In the area of low-power processor design, Scott has collaborated with David Albonesi, Chen Ding, Sandhya Dwarkadas, and Eby Friedman on complexity-adaptive processors (Top Picks choice, IEEE MICRO 2003; US patent #7,089,443), which dynamically vary the tradeoffs among clock speed and circuit complexity to customize performance and energy consumption to the needs of particular appliation phases.  Work with former student Athanasios Papathanasiou (now at Amazon Web Services) addressed complementary techniques at the operating system level, with a particular emphasis on the power-efficient management of hard disks (Best Paper award, USENIX 2004). 

Other past projects include the Lynx distributed programming language, the Charlotte and Psyche parallel operating systems, the Bridge parallel file system (a precursor to active disks), the Hemlock system for cross-application memory sharing, and the Penguin user-interface dialogue manager.  More general interests include compiler technology, parallel algorithms, memory and processor architecture, and program development environments and tools. 

back button Back to Scott’s home page                
Last Change: 01 April 2021 / Michael Scott's email address