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), 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.  General Chair, SOSP 2003.  Program Chair, TRANSACT 2007, PPoPP 2008, ASPLOS 2012.  Author of Programming Language Pragmatics, the #2-selling 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, with a recent emphasis on transactional memory (TM), concurrency pedagogy, and deterministic parallelism.  The TM work is joint with students Bill Scherer (now at HP Houston), Virendra Marathe (now at Oracle Labs), Mike Spear (now at Lehigh University), Luke Dalessandro (now at Indiana University), and Lingxiang Xiang (now at Intel Labs); with Sandhya Dwarkadas and her student Arrvindh Shriraman (now at Simon Fraser University); and with current students Ryan Yates and Joe Izraelevitz.  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 begun with Rochester alumnus John Mellor-Crummey (now on the faculty of Rice University) and continued with several students, has addressed the design of fast, contention-free synchronization algorithms based on simple, general-purpose read-modify-write instructions.  The key idea in these algorithms is for every process to spin on a separate, locally-accessible location, which is changed by means of a single remote operation when the process is able to continue.  Later work has addressed scheduling and 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.  The MCS queue-based spin lock, co-designed with Mellor-Crummey, 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 IBM Research), 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

Work on Deterministic Parallel Ruby, begun with former student Li Lu (now at Hortonworks), 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 computational accelerators and devices. 

The Cashmere project, begun with former students Bill Bolosky (now at Microsoft Research) and Leonidas Kontothanassis (now at Google), 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 at Microsoft Research), 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 Intel Corp.) 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: 15 August 2016 / Michael Scott's email address