Software systems must face two challenges today: growing complexity and increasing parallelism in the underlying computational models. The problem of increased complexity is often...
— This paper is concerned with the analytical modeling of computer architectures to aid in the design of high-level language-directed computer architectures. High-level language-...
Writing concurrent programs is notoriously difficult, and is of increasing practical importance. A particular source of concern is n correctly-implemented concurrency abstraction...
Tim Harris, Simon Marlow, Simon L. Peyton Jones, M...
Transactional Memory is a concurrent programming API in which concurrent threads synchronize via transactions (instead of locks). Although this model has mostly been studied in the...
Locking and timestamping are two popular approaches to concurrency control in databases systems. Although more than a dozen analytic performance studies of locking techniques have...