Reconciling Buffer Management with Persistence Optimisations

Quintin Cutts, S. Lennon, Antony L. Hosking

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

The so-called 'read' and 'write' barriers present an obstacle to the efficient
execution of persistent programs that use a volatile object buffer, nonvolatile object store memory model. The barriers, implemented as checks
added to the code, are required to ensure that objects are moved from store to
buffer before being used and, if updated in the buffer, that they are written
back on periodic checkpoints.
Static read and write barrier optimisations are identified that require runtime guarantees on certain objects' remaining resident in the buffer. These
objects are said to be 'pinned'. Object pinning conflicts with the buffer
manager's freedom to evict objects from the buffer when it is full . A contract
between the buffer manager and the code optimiser guarantees a minimum
level of pinning for each thread. Beyond this guarantee, heuristics added to
the buffer manager allow adjustment of the level of pinning for each thread
according to the prevailing collection and individual states of threads, to
minimise pinning vs object management conflicts. Optimisation of the
write barrier additionally requires the buffer manager to uphold certain
guarantees across checkpoint operations.
This paper presents the design of buffer management mechanisms to
uphold the pinning and update guarantees and identifies the heuristics used to
adjust the level of pinning allocated to each thread. Details of the
mechanisms' implementation in the PJama system are given. Measurements
show that the additional functionality does not represent a significant
overhead to the operation of the system, when running the OO7 benchmark.
Original languageEnglish
Title of host publicationAdvances in Persistent Object Systems
Subtitle of host publicationPOS-8 and PJAVA-3
EditorsRon Morrison, Mick Jordan, Malcolm Atkinson
PublisherMorgan Kauffman Publishers
Pages51-63
ISBN (Print)1-55860-585-1
Publication statusPublished - 1998
Externally publishedYes

Fingerprint

Dive into the research topics of 'Reconciling Buffer Management with Persistence Optimisations'. Together they form a unique fingerprint.

Cite this