Scalable Synchronization

Principles and techniques for developing concurrent programs that are scalable, efficient, and correct.

Project Details

Scalable Synchronization

Scalable Synchronization

Principles and techniques for developing concurrent programs that are scalable, efficient, and correct.

Project Overview

The Scalable Synchronization Research Group (SSRG) is focused on principles and techniques for developing concurrent programs that are scalable, efficient, and correct.

We refer to scalability broadly, applying our expertise to a wide range of performance problems across various environments, from user and OS kernel code running on large multi-sockets machines with shared memory to distributed applications running on multiple computing nodes in the cloud. Our methods include novel (read-write, NUMA-aware, energy-efficient) lock implementations, efficient concurrent data structures, scalable memory allocation and management, etc. The results of our research have been published in premier conferences as well as got integrated into numerous Oracle products.

In addition, we are interested in exploring and understanding the fundamental ramifications of various hardware features (such as hardware transactional memory (HTM), non-volatile memory (NVM), remote direct memory access (RDMA) support, etc.) on the properties of synchronization algorithms and concurrent data structures. We also have strong expertise in the specification and verification of concurrent algorithms, which is important because the kinds of synchronization algorithms we use to improve the system performance are often intricate and subtle.

Principal Investigator

Mark Moir

Architect

Mark Moir is the Principal Investigator of the Scalable Synchronization Research Group at Oracle Labs. Moir joined Sun Labs in June of 2000. Prior to that, Moir was an assistant professor in the Department of Computer Science at the University of Pittsburgh from August 1996 until June 2000.

Moir's main research interests concern practical and theoretical aspects of concurrent, distributed, and real-time systems, particularly hardware and software support for programming constructs that facilitate scalable synchronization in shared memory multiprocessors.

Education:

* PhD Computer Science 1996, University of North Carolina at Chapel Hill

* BSc (Hons) Computer Science 1988, Victoria University of Wellington, New Zealand

Publications