PM3: An Orthogonal Persistent Systems Programming Language - Design, Implementation, Performance.
Antony L. Hosking, Jiawan Chen:
PM3: An Orthogonal Persistent Systems Programming Language - Design, Implementation, Performance.
VLDB 1999: 587-598@inproceedings{DBLP:conf/vldb/HoskingC99,
author = {Antony L. Hosking and
Jiawan Chen},
editor = {Malcolm P. Atkinson and
Maria E. Orlowska and
Patrick Valduriez and
Stanley B. Zdonik and
Michael L. Brodie},
title = {PM3: An Orthogonal Persistent Systems Programming Language -
Design, Implementation, Performance},
booktitle = {VLDB'99, Proceedings of 25th International Conference on Very
Large Data Bases, September 7-10, 1999, Edinburgh, Scotland,
UK},
publisher = {Morgan Kaufmann},
year = {1999},
isbn = {1-55860-615-7},
pages = {587-598},
ee = {db/conf/vldb/HoskingC99.html},
crossref = {DBLP:conf/vldb/99},
bibsource = {DBLP, http://dblp.uni-trier.de}
}
Abstract
PM3 is an orthogonally persistent extension of the Modula-3 systems programming
language, supporting persistence by reachability from named persistent roots.
We describe the design and implementation of the PM3 prototype, and show that its
performance is competitive with its non-orthogonal counterparts by direct comparison
with the SHORE/C++ language binding to the SHORE object store. Experimental results,
using the traversal portions of the OO7 benchmark, reveal that the overheads of
orthogonal persistence are not inherently more expensive than for non-orthogonal
persistence, and justify our claim that orthogonal persistence deserves a level of
acceptance similar to that now emerging for automatic memory management (i.e.,
"garbage collection"), even in performance-conscious settings. The consequence will
be safer and more flexible persistent systems that do not compromise performance.
Copyright © 1999 by the VLDB Endowment.
Permission to copy without fee all or part of this material is granted provided that the copies are not made or
distributed for direct commercial advantage, the VLDB
copyright notice and the title of the publication and
its date appear, and notice is given that copying
is by the permission of the Very Large Data Base
Endowment. To copy otherwise, or to republish, requires
a fee and/or special permission from the Endowment.
Online Paper
DVD Version: Load ACM SIGMOD Anthology DVD 1" and ...
Printed Edition
Malcolm P. Atkinson, Maria E. Orlowska, Patrick Valduriez, Stanley B. Zdonik, Michael L. Brodie (Eds.):
VLDB'99, Proceedings of 25th International Conference on Very Large Data Bases, September 7-10, 1999, Edinburgh, Scotland, UK.
Morgan Kaufmann 1999, ISBN 1-55860-615-7
Contents
References
- [Agrawal and Gehani 1989]
- Rakesh Agrawal, Narain H. Gehani:
ODE (Object Database and Environment): The Language and the Data Model.
SIGMOD Conference 1989: 36-45
- [Agrawal and Gehani 1990]
- Rakesh Agrawal, Narain H. Gehani:
Rationale for the Design of Persistence and Query Processing Facilities in the Database Programming Language O++.
DBPL 1989: 25-40
- [Algagic 1997]
- Suad Alagic:
The ODMG Object Model: Does it Make Sense?
OOPSLA 1997: 253-270
- [Appel and Li 1991]
- Andrew W. Appel, Kai Li:
Virtual Memory Primitives for User Programs.
ASPLOS 1991: 96-107
- [Atkinson et al. 1982]
- ...
- [Atkinson et al. 1983a]
- Malcolm P. Atkinson, Peter J. Bailey, Kenneth Chisholm, W. Paul Cockshott, Ronald Morrison:
An Approach to Persistent Programming.
Comput. J. 26(4): 360-365(1983)
- [Atkinson and Buneman 1987]
- Malcolm P. Atkinson, Peter Buneman:
Types and Persistence in Database Programming Languages.
ACM Comput. Surv. 19(2): 105-190(1987)
- [Atkinson et al. 1983b]
- Malcolm P. Atkinson, Kenneth Chisholm, W. Paul Cockshott, Richard Marshall:
Algorithms for a Persistent Heap.
Softw., Pract. Exper. 13(3): 259-271(1983)
- [Atkinson et al. 1996]
- Malcolm P. Atkinson, Laurent Daynès, Mick J. Jordan, Tony Printezis, Susan Spence:
An Orthogonally Persistent Java.
SIGMOD Record 25(4): 68-75(1996)
- [Atkinson et al. 1997]
- Malcolm P. Atkinson, Mick J. Jordan, Laurent Daynès, Susan Spence:
Design Issues for Persistent Java: A Type-Safe, Object-Oriented, Orthogonally Persistent System.
POS 1996: 33-47
- [Atkinson and Morrison 1995]
- Malcolm P. Atkinson, Ronald Morrison:
Orthogonally Persistent Object Systems.
VLDB J. 4(3): 319-401(1995)
- [Bartlett 1988]
- ...
- [Bartlett 1989]
- ...
- [Baumann 1997]
- ...
- [Brahnmath et al. 1998]
- Kumar Brahnmath, Nathaniel Nystrom, Antony L. Hosking, Quintin I. Cutts:
Swizzle Barrier Optimizations for Orthogonal Persistence in Java.
POS/PJW 1998: 268-278
- [Brahnmath 1988]
- ...
- [Cardelli et al. 1991]
- ...
- [Carey et al. 1994]
- Michael J. Carey, David J. DeWitt, Michael J. Franklin, Nancy E. Hall, Mark L. McAuliffe, Jeffrey F. Naughton, Daniel T. Schuh, Marvin H. Solomon, C. K. Tan, Odysseas G. Tsatalos, Seth J. White, Michael J. Zwilling:
Shoring Up Persistent Applications.
SIGMOD Conference 1994: 383-394
- [Carey et al. 1993a]
- Michael J. Carey, David J. DeWitt, Jeffrey F. Naughton:
The oo7 Benchmark.
SIGMOD Conference 1993: 12-21
- [Carey et al. 1994b]
- Michael J. Carey, Michael J. Franklin, Markos Zaharioudakis:
Fine-Grained Sharing in a Page Server OODBMS.
SIGMOD Conference 1994: 359-370
- [Cattell et al. 1997]
- R. G. G. Cattell (Ed.):
The Object Database Standard: ODMG 2.0.
Morgan Kaufmann 1997
- [Chase et al. 1994]
- Jeffrey S. Chase, Henry M. Levy, Michael J. Feeley, Edward D. Lazowska:
Sharing and Protection in a Single-Address-Space Operating System.
ACM Trans. Comput. Syst. 12(4): 271-307(1994)
- [Chase et al. 1992]
- Jeffrey S. Chase, Henry M. Levy, Edward D. Lazowska, Miche Baker-Harvey:
Lightweight Shared Objects in a 64-Bit Operating System.
OOPSLA 1992: 397-413
- [Cheney 1970]
- C. J. Cheney:
A Nonrecursive List Compacting Algorithm.
Commun. ACM 13(11): 677-678(1970)
- [Connor and Nettles 1997]
- Richard C. H. Connor, Scott Nettles (Eds.):
Proceedings of the 7th Workshop on Persistent Object Systems, Cape May, New Jersey, USA, 1996.
Morgan Kaufmann 1997, ISBN 1-55860-447-2
Contents - [Cutts and Hosking 1997]
- ...
- [Dearle et al. 1990a]
- Alan Dearle, Richard C. H. Connor, Fred Brown, Ronald Morrison:
Napier88 - A Database Programming Language?
DBPL 1989: 179-195
- [Dearle et al. 1994]
- Alan Dearle, Rex di Bona, James Farrow, Frans A. Henskens, Anders Lindström, John Rosenberg, Francis Vaughan:
Grasshopper: An Orthogonally Persistent Operating System.
Computing Systems 7(3): 289-312(1994)
- [Dearle et al. 1990b]
- Alan Dearle, Gail M. Shaw, Stanley B. Zdonik (Eds.):
Implementing Persistent Object Bases, Principles and Practice, Proceedings of the Fourth International Workshop on Persistent Objects, 23-27 September 1990, Martha's Vineyard, MA, USA.
Morgan Kaufmann 1990, ISBN 1-55860-168-6
Contents - [Elphinstone et al. 1997]
- Kevin Elphinstone, Stephen Russell, Gernot Heiser, Jochen Liedtke:
Supporting Persistent Object Systems in a Single Address Space.
POS 1996: 111-119
- [Haines et al. 1994]
- Nicholas Haines, Darrell Kindred, J. Gregory Morrisett, Scott Nettles, Jeannette M. Wing:
Composing First-Class Transactions.
ACM Trans. Program. Lang. Syst. 16(6): 1719-1736(1994)
- [Heiser et al. 1998]
- Gernot Heiser, Kevin Elphinstone, Jerry Vochteloo, Stephen Russell, Jochen Liedtke:
The Mungi Single-Address-Space Operating System.
Softw., Pract. Exper. 28(9): 901-928(1998)
- [Hosking 1995]
- ...
- [Hosking 1997]
- Antony L. Hosking:
Residency Check Elimination for Object-Oriented Persistent Language.
POS 1996: 174-183
- [Hosking and Chen 1999]
- ...
- [Hosking and Moss 1990]
- Antony L. Hosking, J. Eliot B. Moss:
Towards Compile-Time Optimizations for Persistence.
POS 1990: 17-27
- [Hosking and Moss 1991]
- ...
- [Hosking and Moss 1993]
- Antony L. Hosking, J. Eliot B. Moss:
Protection Traps and Alternatives for Memory Management of an Object-Oriented Language.
SOSP 1993: 106-119
- [Hosking and Novianto 1997]
- ...
- [Hosking et al. 1999]
- Antony L. Hosking, Nathaniel Nystrom, Quintin I. Cutts, Kumar Brahnmath:
Optimizing the Read and Write Barriers for Orthogonal Persistence.
POS/PJW 1998: 149-159
- [Hull et al. 1990]
- Richard Hull, Ronald Morrison, David W. Stemple (Eds.):
Proceedings of the Second International Workshop on Database Programming Languages, 4-8 June, 1989, Salishan Lodge, Gleneden Beach, Oregon.
Morgan Kaufmann 1990, ISBN 1-55860-072-8
Contents - [ISMM 1998]
- ...
- [Jones 1996]
- Richard E. Jones, Rafael Dueire Lins:
Garbage Collection: Algorithms for Automatic Dynamic Memory Management.
John Wiley 1996, ISBN 0-471-94148-4
- [Kaehler 1986]
- Ted Kaehler:
Virtual Memory on a Narrow Machine for an Object-Oriented Language.
OOPSLA 1986: 87-106
- [Kaehler et al. 1983]
- ...
- [Kakkad et al. 1998]
- Sheetal V. Kakkad, Mark S. Johnstone, Paul R. Wilson:
Portable Run-Time Type Description for Conventional Compilers.
ISMM 1998: 146-153
- [Kiesel et al. 1995]
- Norbert Kiesel, Andy Schürr, Bernhard Westfechtel:
GRAS, a Graph-Oriented (Software) Engineering Database System.
Inf. Syst. 20(1): 21-51(1995)
- [Lamb et al. 1991]
- Charles Lamb, Gordon Landis, Jack A. Orenstein, Daniel Weinreb:
The ObjectStore Database System.
Commun. ACM 34(10): 50-63(1991)
- [Matthes and Schmidt 1994]
- Florian Matthes, Joachim W. Schmidt:
Persistent Threads.
VLDB 1994: 403-414
- [Morrison et al. 1990]
- Ronald Morrison, Alfred L. Brown, Raymund Carrick, Richard C. H. Connor, Alan Dearle, Malcolm P. Atkinson:
The Napier Type System.
POS 1989: 3-18
- [Moss 1992]
- J. Eliot B. Moss:
Working with Persistent Objects: To Swizzle or Not to Swizzle.
IEEE Trans. Software Eng. 18(8): 657-673(1992)
- [Moss and Hosking 1995]
- J. Eliot B. Moss, Antony L. Hosking:
Expressing Object Residency Optimizations Using Pointer Type Annotations.
POS 1994: 3-15
- [Nystrom et al. 1998]
- ...
- [Nystrom 1998]
- ...
- [Richardson 1990]
- Joel E. Richardson:
Compiled Item Faulting: A New Technique for Managing I/O in a Persistent Language.
POS 1990: 3-16
- [Richardson and Carey 1987]
- Joel E. Richardson, Michael J. Carey:
Programming Constructs for Database System Implementation in EXODUS.
SIGMOD Conference 1987: 208-219
- [Richardson and Carey 1990]
- Joel E. Richardson, Michael J. Carey:
Persistence in the E Language: Issues and Implementation.
Softw., Pract. Exper. 19(12): 1115-1150(1989)
- [Rosenberg et al. 1996]
- John Rosenberg, Alan Dearle, David Hulse, Anders Lindström, Stephen Norris:
Operating System Support for Persistant and Recoverable Computations: Guaranteeing data recovery and consistency, the authors' experimental Grasshopper persistent operating system simplifies application development and encourages construction of integrated systems.
Commun. ACM 39(9): 62-69(1996)
- [Schkolnick 1977]
- Mario Schkolnick:
A Clustering Algorithm for Hierarchical Structures.
ACM Trans. Database Syst. 2(1): 27-44(1977)
- [Sigmod 1994]
- Richard T. Snodgrass, Marianne Winslett (Eds.):
Proceedings of the 1994 ACM SIGMOD International Conference on Management of Data, Minneapolis, Minnesota, May 24-27, 1994.
ACM Press 1994
Contents - [Singhal et al. 1992]
- Vivek Singhal, Sheetal V. Kakkad, Paul R. Wilson:
Texas: An Efficient, Portable Persistent Store.
POS 1992: 11-33
- [Straw et al. 1989]
- Andrew Straw, Fred Mellender, Steve Riegel:
Object Management in a Persistent Smalltalk System.
Softw., Pract. Exper. 19(8): 719-737(1989)
- [White and DeWitt 1994]
- Seth J. White, David J. DeWitt:
QuickStore: A High Performance Mapped Object Store.
SIGMOD Conference 1994: 395-406
- [Wilson and Kakkad 1992]
- ...
Copyright © Tue Mar 16 02:22:08 2010
by Michael Ley (ley@uni-trier.de)