| James O'Toole, Scott Nettles, and David Gi#ord. Concurrent compacting garbage collection of a persistent heap. In Proceedings of the 14th ACM Symposium on Operating Systems Principles, pages 161--174, Asheville, NC (USA), December 1993. 28 |
....implementation of this algorithm exists for the ResearchVM. Baker also proposed a variation on this algorithm, called the Treadmill [5] which removes the usually expensive two space requirement (but requires extra per object space) Another incremental algorithm is replicating garbage collection [24], proposed by O Toole and Nettles. This is a copying algorithm like Baker s, but where Baker s algorithm uses a read barrier to ensure that mutator threads observe only to space references, replicating collection has mutators observe only from space pointers during collection, and uses a write ....
James O'Toole, Scott Nettles, and David Gi#ord. Concurrent compacting garbage collection of a persistent heap. In Proceedings of the 14th ACM Symposium on Operating Systems Principles, pages 161--174, Asheville, NC (USA), December 1993. 28
....memory systems. In these systems, the heap resides on the disk because it is much larger than the main memory and must be recoverable after a crash. Applications access the objects through a memory cache and log updates for crash recovery. Schemes that trace the entire heap (e.g. Bak78, KW93, ONG93] do not scale to very large heaps because the non local nature of tracing would cause random disk accesses. Therefore, some systems partition the heap into independently collectible areas [Bis77, This research was supported in part by the Advanced Research Projects Agency of the Department of ....
....but incremental copying [KW93] Like other unpartitioned schemes, this collector must make random accesses in the old space. O Toole et al. proposed concurrent copying of a persistent heap by letting applications access the old space while the collector copies it to new space [NOPH92, ONG93] The collector picks up the modifications made by the applications by using an update log. The scheme was designed for an unpartitioned heap that fit in the main memory. Yong et al. compared unpartitioned incremental copying, reference counting, and partitioned collection in a client server ....
James W. O'Toole, Scott M. Nettles, and David Gifford. Concurrent compacting garbage collection of a persistent heap. In Proc. 14th SOSP, pages 161--174, 1993.
....black. Write Barrier A write barrier detects when the mutator tries to write a pointer into a black object; when that happens, the write is trapped or recorded [7, 20, 35, 40, 115, 131] We describe here an interesting copy collector using a write barrier; it is called replication based GC [91, 94]. The basic idea is the following. While the collector moves objects to to space, the mutator continues to access the from space versions of objects, rather than the replicas in to space. When every reachable object has been moved to to space, a flip is performed and the mutator then starts ....
....to a situation in which a long user transaction could prevent the collector from making progress. For these reasons the collector runs at a level below the transactions support as sketched above. CHAPTER 2. OVERVIEW OF GC ALGORITHMS 52 2.4. 4 Replicated Copy The replication based copy collector [94] (recall Section 2.2.3.1) is particularly well suited to mono site transactional systems. This is due to the fact that while the collector moves objects to to space, the mutator continues to access their from space replicas, rather than the replicas in to space. 3 When every reachable object has ....
James O'Toole, Scott Nettles, and David Gifford. Concurrent compacting garbage collection of a persistent heap. In Proceedings of the Fourteenth Symposium on Operating Systems Principles, Asheville, North Carolina (USA), December 1993. ACM Press. Published as Operating Systems Review 27(5).
....of this algorithm exists for the ResearchVM. Baker also proposed a variation on this algorithm, called the Treadmill [4] which removes the usually expensive two space requirement (but requires extra per object space) Another incremental algorithm is replicating garbage collection [22], proposed by O Toole and Nettles. This is a copying algorithm like Baker s, but where Baker s algorithm uses a read barrier to ensure that mutator threads observe only to space references, replicating collection has mutators observe only from space pointers during collection, and uses a write ....
James O'Toole, Scott Nettles, and David Gi#ord. Concurrent compacting garbage collection of a persistent heap. In Proceedings of the 14th ACM Symposium on Operating Systems Principles, pages 161--174, Asheville, NC (USA), December 1993.
....Yong et al. 21] measure the performance of several classical garbage collection schemes in the context of a persistent store. Hosking et al. 14] measure the performance of several implementation of write barriers. Concurrent GCs which use write barriers to collect persistent objects include [3, 18, 2, 15]. See also a barrier based GC by Doligez and Gonthier [10] RR n ffi 2681 4 Marcin Skubiszewski and Nicolas Porteix The notifications are used by the GC to build a list of objects which were reachable at some point during the garbage detection process, yet which might be improperly seen as ....
....(and thus no actual communication occurs) The latter fact is obvious in the implementations where user code is instrumented: whenever a pointer is modified, the instrumented code needs at least to check whether a GC is running. It is nonobvious, but still real, in the other implementations [3, 18]. These drawbacks lead us to consider a new principle for concurrent garbage collection. We build a static view of the system which contains no false garbage: an object is seen as garbage in the view only if it remains constantly garbage in the real system. The GC examines the view instead of ....
[Article contains additional citation context not shown here]
James O'Toole, Scott Nettles, and David Gifford. Concurrent compacting garbage collection of a persistent heap. In Proceedings of the 14th ACM Symposium on Operating Systems Principles, pages 161--174, Asheville, NC (USA), December 1993.
....there has been a growing research interest in applying garbage collection techniques to OODBMS [Butler 1987, Franklin 1989, 1 Also, garbage collection is specified in the ODMG object database standard Smalltalk binding [Cattell 1994] RR n2409 4 L. Amsaleg, M. Franklin, O. Gruber Kolodner 1989, O Toole 1993, Maheshwari 1994, Yong 1994] In general, however, many existing systems still require programmers to explicitly deallocate objects. Such systems therefore, typically provide off line utilities which must be run periodically in order to reclaim lost storage and detect dangling references. The ....
....data pages that reflect the updates. At the server, the incoming log records are RR n2409 16 L. Amsaleg, M. Franklin, O. Gruber examined, and those that represent the cutting of a reference will cause a PRT entry to be made. Note that unlike previous work that exploits logs (e.g. Kolodner 1993, O Toole 1993] this algorithm processes log records as they arrive from the server prior to their reaching stable storage. When a transaction terminates (commits or aborts) its entries in the PRT are flagged. These flagged entries are removed prior to the start of the next garbage collection (i.e. the ....
[Article contains additional citation context not shown here]
J. O'Toole, S. Nettles, and D. Gifford. Concurrent Compacting Garbage Collection of a Persistent Heap. In Proc. of the 14th SOSP, pages 161-- 174, Asheville, NC, December 1993. ACM Press.
....collection. Some recent results include Baker s Treadmill [3] which is fairly efficient, but has the drawback of causing unpredictable delays because, in some cases, a collection must be finished before accessing the data. O Toole at al. propose transactionbased collector for a persistent heap [15]. Our garbage reclamation algorithm is closely inspired by theirs. To improve performance, we replaced transaction locks by notifications, and implemented reclamation using secondary free lists. 7 Conclusion We presented the way we fitted an existing distributed garbage collector algorithm into a ....
James O'Toole, Scott Nettles, and David Gifford. Concurrent compacting garbage collection of a persistent heap. In Proceedings of the 14th ACM Symposium on Operating Systems Principles, pages 161--174, Asheville, NC (USA), December 1993.
....regions and to generate set range calls. The reliance of Birrell et al. s technique on full database checkpointing makes the technique practical only for Further evidence of the versatility of RVM is provided by applications which manage small amounts of recoverable the recent work of O Toole et al. [25]. In this work, RVM data and which have moderate update rates. The absence segments are used as the stable to space and from space of of support for multi item updates and for explicit abort the heap for a language that supports concurrent garbage further limits its domain of use. RVM is more ....
O'Toole, J., Nettles, S., Gifford, D. Concurrent Compacting Garbage Collection of a Persistent Heap. In Proceedings of the Fourteenth ACM Symposium on Operating System Principles. Asheville, NC, December, 1993.
....DSM recoverable. Other interesting examples exist as well: transactional memory can be used to implement non blocking synchronization [53] transaction logs can be used to maintain coherency of persistent data [40] and logging can be used to simplify concurrent compacting garbage collection [84]. Compacting garbage collection offers many benefits to a persistent store. It can be used to support implicit object deletion, to reduce fragmentation, to recluster objects, and to implement implicit persistence [7] Concurrency is important for the obvious reason that most applications will not ....
....[11] use another technique that checks page dirty bits to detect writes to objects that have yet to be copied; if such a write occurs, the entire page is rescanned. In a persistent heap, where transaction logs are being used for recoverability, a simpler and more efficient approach is possible [84, 83]. Transactions allow mutators to access and modify objects in from space; the flip to to space happens when collection is complete. From space updates are recorded in the transaction log and so can be easily reapplied to to space to bring it up to date with changes made during collection. This has ....
James O'Toole, Scott Nettles, and David Gifford. Concurrent compacting garbage collection of a persistent heap. In Proceedings of the 14th ACM Symposium on Operating Systems Principles, pages 161--174, December 1993.
....Lang Queinnec Piquer proposal since our groups are local. Furthermore our groups are not determined a priori but opportunistically. The concept of PBR was first proposed by Atkinson and Morrison [3, 17] in the early 1980 s. PBR related collection is considered for instance in O Toole and Nettles [18], where the collector scans a possibly old copy of the data. We have found two distributed shared memories with PBR in the literature. The specification of the Casper collector [13] is sketchy and seems incapable of collecting a persistent object that has become garbage. EOS [12] has a tracing and ....
James O'Toole, Scott Nettles, and David Gifford. Concurrent compacting garbage collection of a persistent heap. In Proceedings of the 14th ACM Symposium on Operating Systems Principles, pages 161--174, Asheville, NC (USA), December 1993.
....orthogonal to object type [ZM90] therefore, some database systems, such as GemStone [BOS91] and O2 [BDK91] directly implement persistence based on reachability. 1 In addition, there has been a growing research interest in applying garbage collection techniques to OODBMS [But87, FCW89, KLW89, ONG93, ML94, YNY94] In general, however, many existing systems still require programmers to explicitly deallocate objects. Such systems therefore, typically provide off line utilities which must be run periodically in order to reclaim lost storage and detect dangling references. The lack of acceptance ....
....will arrive at the server prior to the arrival of the data pages that reflect the updates. At the server, the incoming log records are examined, and those that represent the cutting of a reference will cause a PRT entry to be made. Note that unlike previous work that exploits logs (e.g. KW93, ONG93] this algorithm processes log records as they arrive from the server prior to their reaching stable storage. When a transaction terminates (commits or aborts) its entries in the PRT are flagged. These flagged entries are removed prior to the start of the next garbage collection (i.e. ....
[Article contains additional citation context not shown here]
J. O'Toole, S. Nettles, and D. Gifford. Concurrent Compacting Garbage Collection of a Persistent Heap. In Proc. of the 14th SOSP, pages 161--174, Asheville, NC, December 1993. ACM Press.
....in the runtime package. A call to this function indicates an intent to update a particular range of bytes. We expect that this range corresponds to an object, and that the call is made by code generated explicitly by the language compiler (such as the ML compiler that has been used with RVM [O Toole et al. 93] In contrast, most DSM systems use virtual page access faults to captue updates, though software based write detection is also used in Midway [Zekauskas et al. 94] This issue is discussed in more detail in Section 4. RVM coalesces modified ranges that are adjacent or overlapping in order to ....
....DSM implementations that use page access faults to capture updates. For log based coherency, updates are captured by calls to the RVM set range procedure. These calls are coded explicitly in our OO7 benchmarks, although other RVM applications have used compiler generated set range calls [O Toole et al. 93] In contrast, most DSM systems use page access faults to capture updates without involvement from the compiler or application. Early page locking DSM systems, such as Monads and IVY, use page access faults to grant a writer exclusive access to a page while updates are in progress, then transmit ....
[Article contains additional citation context not shown here]
O'Toole, J., Nettles, S., and Gifford, D. Concurrent compacting garbage collection of a persistent heap. In Proceedings of the Fourteenth ACM Symposium on Operating Systems Principles, pages 161-- 174, December 1993.
....field; let us cite Baker s Treadmill [Bak92] which is fairly efficient, but has the drawback of causing unpredictable delays because, in some cases, a collection must be finished before accessing the data. O Tooles, Nettles and Gifford proposed a transaction based collection of a persistent heap [ONG93] One can see our design is close to this idea, but we replaced the transaction by notification locks, which better fits our design and enables enhancements to improve performance, such as the Garbage Recycler. 6 Conclusion We presented the way we fitted an existing distributed garbage ....
James O'Toole, Scott Nettles, and David Gifford. Concurrent compacting garbage collection of a persistent heap. In 14th Symposium on Operating Systems Principles, pages 161--174, Asheville, NC (USA), December 1993.
....support transactions. A transaction is a sequence of operations that behaves atomically with respect to other transactions and crashes [Gra78] Partitioned garbage collection involves a wide range of other issues such as the choice of the tracing algorithm (marking, copying [Bak78] replicating [ONG93] etc. the selection of partitions to trace [CWZ94] the rate of starting traces [CKWZ96] handling transactional rollback [AGF95] etc. This thesis either does not cover the above issues or addresses them only marginally. These issues have been discussed by other researchers and most of their ....
....which can be scheduled occasionally. The significance of these techniques is evaluated in Section 3.5. New inter partition references are found lazily by scanning modified objects in the log. Other garbage collectors have used the log to process modified objects lazily for various purposes [ONG93] We refer to scanning objects for inter partition references as inter scanning to distinguish it from scanning objects as part of a trace. An object in the log must be inter scanned before it is installed, since information about the modification is lost at that point. Adding references to ....
J. W.O'Toole, S. M. Nettles, and D. Gifford. Concurrent compacting garbage collection of a persistent heap. In Proc. 14th SOSP, pages 161--174, 1993.
....concurrent collection, however, and can greatly reduces the cost of the read barrier. In the worst case, each pointer traversal may cause the scanning of a page of tospace until the whole garbage collection is complete. 22 3. 5 Replication Copying Collection Recently, Nettles et al. NOPH92, ONG93] have devised a new kind of incremental copying collection, replication copying, which is quite different from Baker s incremental copying scheme. Recall that in Baker s collector, garbage collection starts with a flip, which copies the immediately reachable data to tospace, and invalidates ....
....tolerate computer and network failures. In large persistent or distributed systems, data integrity is particularly important; garbage collection strategies must be coordinated with checkpointing and recovery, both for efficiency and to ensure that the collector itself does not fail [Kol90, Det91, ONG93] As high performance graphics and sound capabilities become more widely available and economical, computers are likely to be used in more graphical and interactive ways. Multimedia and virtual reality applications will require garbage collection techniques that do not impose large delays, making ....
James O'Toole, Scott Nettles, and David Gifford. Concurrent compacting garbage collection of a persistent heap. In Proceedings of the Fourteenth Symposium on Operating Systems Principles, Asheville, North Carolina, December 1993. ACM Press. Published as Operating Systems Review 27(5).
....information is regenerated by the BGC, how references are updated and how the from space is reused. Each of these issues is discussed in light of what is needed for the collector not to interfere with the DSM consistency protocol. 4.1 Outline The BGC is based on the algorithm by O Toole et. al [17] for three main reasons: i) the time to flip 1 is very small and therefore not disruptive to applications, ii) portability (no virtual memory manipulations) and (iii) objects are non destructively copied (suitable for recovery purposes) However, any other copying algorithm could be used. ....
....memory (RVM) techniques proposed by Satyanarayanan et al. 19] RVM provides simple recoverable transactions with no support for nesting, distribution, or concurrency control. Recovery in RVM is implemented with a disk based log. In our prototype we use the approach proposed by O Toole et al. [17], in which the from space and the to space are each supported by a file. Changes to mapped segments are atomically transferred to disk by RVM. As previously mentioned, inter bunch pointers are described by inter bunch SSPs that are automatically allocated whenever an inter bunch reference is ....
James O'Toole, Scott Nettles, and David Gifford. Concurrent compacting garbage collection of a persistent heap. In Proceedings of the 14th ACM Symposium on Operating Systems Principles, pages 161--174, Asheville, NC (USA), December 1993.
....shared memory systems. In these systems, the heap resides on the disk because it is much larger than the primary memory and must be recoverable after a crash. Applications access the objects through a memory cache and log updates for crash recovery. Schemes that trace the entire heap [Bak78, KW93, ONG93] do not scale to very large heaps because the nonlocal nature of tracing causes random disk accesses. Therefore, large systems partition the heap into independently collectible areas [Bis77, YNY94, AGF95, MMH96, CKWZ96] This is also the approach taken in many distributed systems [LQP92, LL92, ....
....inter partition references, as in some generational collectors. However, such mechanisms add substantial cost and complexity in a disk based heap. Tracing Scheme. Our approach can be used in combination with various concurrent collectors. For example, we could use a replicating collector [ONG93] Such a scheme requires little synchronization with applications, but needs space for two partitions in primary memory. A mark and sweep collector can be used as well, as in [AGF95] The sweep phase can compact one page at a time, either by locking the page from applications and sliding objects, ....
[Article contains additional citation context not shown here]
J. W. O'Toole, S. M. Nettles, and D. Gifford. Concurrent compacting garbage collection of a persistent heap. In Proc. 14th SOSP, pages 161--174, 1993.
....copies it from a from segment to a to segment, leaving a forwarding pointer to its new location. When a from segment has been entirely scanned, it contains only garbage, and is recycled; the to segment becomes a from segment. This transition is called a flip. In the replication based collector [22] that we use, flipping halts the mutator briefly, in order to patch mutator roots, and to scan objects being modified by the mutator. More on this in Section 6. with the old one (from before this scan) Stubs that did not previously exist indicate that a new cross bunch pointer has been created. ....
....acquire read, there is a propagate event at the coherence layer. 6.2 GC The local collector of Larchant BMX implements the algorithm specified in Sections 3.1, 3.2, 4.2 and 4.3. It is a copying collector, in order to improve locality. It uses the replication based algorithm of O Toole et al. [22]. Each bunch has its own from segments and to segments. The flip for some bunch replica B i is asynchronous with flips for other replicas. As soon as site i has received a move for all live objects in the from segment of B i , it can flip B locally. The move messages are sent in the background, ....
[Article contains additional citation context not shown here]
James O'Toole, Scott Nettles, and David Gifford. Concurrent compacting garbage collection of a persistent heap. In Proceedings of the 14th ACM Symposium on Operating Systems Principles, pages 161--174, Asheville, NC (USA), December 1993.
....collection. Some recent results include Baker s Treadmill [3] which is fairly efficient, but has the drawback of causing unpredictable delays because, in some cases, a collection must be finished before accessing the data. O Tooles at al. propose transactionbased collector for a persistent heap [15]. Our garbage reclamation algorithm is closely inspired by theirs. To improve performance, we replaced transaction locks by notifications, and implemented reclamation using secondary free lists. 7 Conclusion We presented the way we fitted an existing distributed garbage collector algorithm into a ....
James O'Toole, Scott Nettles, and David Gifford. Concurrent compacting garbage collection of a persistent heap. In Proceedings of the 14th ACM Symposium on Operating Systems Principles, pages 161--174, Asheville, NC (USA), December 1993.
....Lang Queinnec Piquer proposal since our groups are local. Furthermore our groups are not determined a priori but opportunistically. The concept of PBR was first proposed by Atkinson and Morrison [3, 16] in the early 1980 s. PBR related collection is considered for instance in O Toole and Nettles [17], where the collector scans a possibly old copy of the data. We have found two distributed shared memories with PBR in the literature. The specification of the Casper collector [12] is sketchy and seems incapable of collecting a persistent object that has become garbage. EOS [11] has a tracing ....
James O'Toole, Scott Nettles, and David Gifford. Concurrent compacting garbage collection of a persistent heap.In Proceedings of the 14th ACMSymposium onOperating Systems Principles, pages 161--174, Asheville, NC (USA), December 1993.
....For objects such as functions, continuations, and closures, creating an external representation is still possible, as we will see below. For languages without object serialization or reflection that use garbage collection, object serialization can be achieved by extending the garbage collector. In [14], this technique is used to provide persistence to ML. Since persistent data is placed in stable storage, this data is already serialized and compact after log truncation; it is just not directly accessible to the programmer. The approach of garbage collector extension is somewhat less attractive, ....
James O'Toole, Scott Nettles, and David Gifford. Concurrent compacting garbage collection of a persistent heap. In Proceedings of the Fourteenth ACM Symposium on Operating Systems Principles, pages 161--174, December 1993.
....of a write token for object x implies the invalidation of every readable x replica. See Bershad[3] for more details. We implemented two intra bunch algorithms: mark andsweep and copy. Both run concurrently w.r.t. mutators and are based on the replication based technique from O Toole et al. [11]. Obviously, both collectors can also run in non concurrent mode, i.e. the mutator is halted while the collector runs. In the rest of this section we focus on the asynchrony of the cross bunch collector w.r.t. mutators, and show some performance results of intra bunch collection. 7.1. ....
J. O'Toole, S. Nettles, and D. Gifford. Concurrent compacting garbage collection of a persistent heap. In Proceedings of the 14th ACM Symposium on Operating Systems Principles, pages 161--174, Asheville, NC (USA), Dec. 1993.
....level there is little similarity with Sidney. Finally, Sidney provides for concurrent collection of its persistent heap, which allows collections to be done in a manner that is non disruptive to the client. Sidney is the first implementation to provide this functionality for a transactional heap [7]. One previous concurrent mark and sweep collector for persistent data has been implemented by Almes for the Hydra system [1] Hydra did not support transactions or orthogonal persistence, and it is not clear exactly what guarantees it offered to the client about data consistency. The lack of ....
J. O'Toole, S. Nettles, and D. Gifford. Concurrent Compacting Garbage Collection of a Persistent Heap. In Proceedings of the 14th ACM Symposium on Operating Systems Principles. ACM, December 1993.
....persistence as part of a general purpose multithreaded transaction system. Copying garbage collectors use reachability criteria to decide which objects must be retained, and so it seems natural to reuse garbage collection techniques to implement orthogonal persistence. We have previously shown [10] that a new garbage collection technique, replicating collection, can be used to provide an efficient concurrent garbage collector for our persistent storage system. In that system, we found that the performance of transaction commit operations was poor if the transitory heap, which contains the ....
....maintain the orthogonal persistence property that all objects that have become reachable from the persistent root as a result of committed modifications must become persistent. Its implementation is the focus of the remainder of this section. For more details about our system see O Toole et al. [10] and Nettles [6] Transitory Heap Volatile Heap Image Stable Heap Image pointer forwarding pointer copied object object Persistent Heap Figure 2: A Committed State Figure 2 shows a detailed view of the key components of our system when it is in a committed state. Permanent objects ....
[Article contains additional citation context not shown here]
James W. O'Toole, Scott M. Nettles, and David K. Gifford. Concurrent Compacting Garbage Collection of a Persistent Heap. In Proceedings of the 14th ACM Symposium on Operating Systems Principles. ACM, SIGPLAN, December 1993.
....Mutation logging works best when mutations are infrequent or can be recorded without client cooperation. Mutation logging is also attractive whenever a log is already required for other reasons, such as in generational collectors, distributed applications, and transactional storage systems [11, 13]. 2.3 The Collector Invariant The invariant maintained by the collector is that the client can only access from space objects and that all to space replicas are up to date with respect to their original from space objects unless a corresponding mutation is described in the mutation log. 2.4 The ....
....real time collection [9, 10] by supporting concurrency among multiple clients and the garbage collector and by exploring the policy issues that are central to providing hard real time bounds. We are now using this concurrent collector in conjunction with a transaction manager for a persistent heap [13]. In that system the mutation log also serves as the transaction log. 6 Future Work We plan to make additional performance measurements and test various control policies for the concurrent collector (see Section 4.5) Another area that requires further study is how to schedule the work of the ....
James O'Toole, Scott Nettles, and David Gifford. Concurrent Compacting Garbage Collection of a Persistent Heap. In Proceedings of the 14th ACM Symposium on Operating Systems Principles. ACM, SIGOPS, December 1993.
....two obvious improvements are in the implementation of thread systems and garbage collectors, both of which impose significant overheads in current systems. We have significant experience in garbage collector performance and in building high performance runtime systems using concurrent collectors [14, 26]. Although we have not yet seriously pursued this idea, we believe that existing approaches designed for general purpose systems will prove fruitful in the area. Furthermore, we also believe that tailoring thread management and memory allocation and collection to the specific work loads found in ....
James W. O'Toole, Scott M. Nettles, and David Gifford. Concurrent compacting garbage collection of a persistent heap. In Proceedings of the Fourteenth Symposium on Operating Systems Principles, volume 27(5) of Operating Systems Review, pages 161--174, Asheville, North Carolina, December 1993. ACM.
....Mutation logging works best when mutations are infrequent or can be recorded without client cooperation. Mutation logging is also attractive whenever a log is already required for other reasons, such as in generational collectors, distributed applications, and transactional storage systems[14, 12]. 2.3 The Collector Invariant The invariant maintained by the collector is that the client can only access from space objects and that all to space replicas are up to date with respect to their original fromspace objects, unless a corresponding mutation is described in the mutation log. 2.4 The ....
.... multiple clients and the garbage collector and exploring the policy issues which are central to providing hard real time bounds, We also use this concurrent collector in conjunction with a transaction manager for a persistent heap, where the mutation log does double duty as the transaction log[14]. 6 Future Work and Conclusions We plan to do additional performance measurements and test various control policies for the concurrent collector (see section 4.5) Another area which requires further study is how to most opportunistically schedule the work of the concurrent gc thread so as to ....
James W. O'Toole, Scott M. Nettles, and David K. Gifford. Concurrent compacting garbage collection of a persistent heap. In Proceedings of the 14th ACM Symposium on Operating Systems Principles. ACM, SIGPLAN, December 1993. To appear.
....cash from an ATM machine) These issues have been thoroughly addressed by the database community. Finally, we have made significant progress in measuring and improving the performance of our system. Recently O Toole, Nettles, and Gifford added a concurrent garbage collector for the persistent heap [20]. They show that the performance of both the collector and the persistence subsystem is good comparable to a simpler system that supports neither orthogonal persistence nor garbage collection. Nettles is currently completing a more thorough performance evaluation that will allow us to improve ....
J.W. O'Toole, S.M. Nettles, and D.K.Gifford. Concurrent compacting garbage collection of a persistent heap. In Proceedings of the 14th ACM Symp. on Operating System Principles, December 1993.
....been thoroughly addressed by the database community. Also, we intentionally avoided the hard problems of undoing I O (as in undoing the dispensing of cash from an ATM machine [Pausch 1988] We have also made significant progress in measuring and improving the performance of our system. Recently O Toole, Nettles, and Gifford [1993] added a concurrent garbage collector for the persistent heap. They show that the performance of both the collector and the persistence subsystem is good comparable to a simpler system that supports neither orthogonal persistence nor garbage collection. Nettles [1994] is currently completing a ....
O'Toole, J., Nettles, S., and D.K.Gifford 1993. Concurrent compacting garbage collection of a persistent heap. In Proceedings of the 14th ACM Symp. on Operating System Principles.
....Mutation logging works best when mutations are infrequent or can be recorded without client cooperation. Mutation logging is also attractive whenever a log is already required for other reasons, such as in generational collectors, distributed applications, and transactional storage systems [12, 14]. 2.3 The Collector Invariant The invariant maintained by the collector is that the client can only access from space objects and that all to space replicas are up to date with respect to their original from space objects unless a corresponding mutation is described in the mutation log. 2.4 The ....
....our previous work on incremental and real time collection [10, 11] by supporting concurrency among multiple clients and the garbage collector. We use this concurrent collector together with a transaction manager for a persistent heap in which the mutation log also serves as the transaction log [14]. In that work [14] we used replicating garbage collection to demonstrate the first implementation of a concurrent compacting garbage collector for a persistent heap. We showed how to provide good performance for a transactional heap but discussed the concurrent garbage collection algorithm only ....
[Article contains additional citation context not shown here]
James O'Toole, Scott Nettles, and David Gifford. Concurrent Compacting Garbage Collection of a Persistent Heap. In Proceedings of the 14th ACM Symposium on Operating Systems Principles. ACM, SIGOPS, December 1993.
....level there is little similarity with Sidney. Finally, Sidney provides for concurrent collection of its persistent heap, which allows collections to be done in a manner that is non disruptive to the client. Sidney is the first implementation to provide this functionality for a transactional heap [7]. One previous concurrent mark and sweep collector for persistent data has been implemented by Almes for the Hydra system [1] Hydra did not support transactions or orthogonal persistence, and it is not clear exactly what guarantees it offered to the client about data consistency. The lack of ....
J. O'Toole, S. Nettles, and D. Gifford. Concurrent Compacting Garbage Collection of a Persistent Heap. In Proceedings of the 14th ACM Symposium on Operating Systems Principles. ACM, December 1993.
No context found.
James O'Toole, Scott Nettles, David Gifford: "Concurrent Compacting Garbage Collection of a Persistent Heap". Proc. of the Fourteenth ACM Symp. on Oper. Syst. Principles, Asheville, NC (USA). Oper. Syst. Review, Vol. 27, N ffi 5, pp 161--174. 5--8 Dec.1993.
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC