Project Details
Description
Replication is a key ingredient in achieving scalability and high availability of computer systems. This is evident for globally distributed databases, but it is also increasingly true for individual computers, smartphones and even watches, with multiple layers of cache coordinating communication between multiple processor cores. Where there is replication, consistency is necessarily at conflict with performance and availability. Strong notions of consistency allow simpler application development and debugging, at the cost of performance. This project explores weaker notions of consistency, investigating the extent to which performance gains can be achieved while maintaining a relatively simple programming model.
This project investigates abstraction, and under what circumstances can a client programmer safely reason about a data structure using its sequential specification. The project develops a common foundational framework that unites the areas of distributed data structures, relaxed memory models and concurrent data structures. The project explores foundations for languages and tools for shared-memory multi-core programming. By improving the programming model, the project encourages better use of the resources available in current and future hardware.
| Status | Finished |
|---|---|
| Effective start/end date | 7/15/16 → 6/30/21 |
Funding
- National Science Foundation: $499,577.00
ASJC Scopus Subject Areas
- Computer Science(all)
- Computer Networks and Communications
- Engineering(all)
- Electrical and Electronic Engineering
- Communication