32 citations found. Retrieving documents...
R. Courts. Improving locality of reference in a garbage-collecting memory management-system. Communications of the ACM, 31(9):1128--1138, 1988.

 Home/Search   Document Not in Database   Summary   ACM   TOC   Related Articles   Check  

This paper is cited in the following contexts:

First 50 documents

Beltway: Getting Around Garbage Collection Gridlock - Blackburn, Jones, McKinley.. (2002)   (11 citations)  (Correct)

....immortal, or immutable objects) 8, 14] although we do not explore this type of segregation in this paper. Any references into an increment must be tracked if that increment is to be collected independently. Pointer tracking may use remembered sets [34] card marking [39] hardware support [4, 9, 16, 26], or a combination of techniques. Card tables [39] are a common alternative to the remsets we use in Beltway. Card tables trade a fast write barrier (typically two or three machine instructions) for increased work scanning at collection time. A marked entry in the card table means that one or more ....

Robert Courts. Improving locality of reference in a garbage-collecting memory management-system. Communications of the ACM, 31(9):1128--1138, 1988.


Automatic Pool Allocation for Disjoint Data Structures - Lattner, Adve (2002)   (1 citation)  (Correct)

....but have generally neglected to take a more macroscopic approach that analyzes and transforms entire logical data structures. High level optimizations have generally been limited to runtime techniques such as clustering, profile driven layout optimization, and cache conscious garbage collectors [9, 31, 7, 23, 6]. We have developed a macroscopic approach to optimizing linked data structures that can enable sophisticated compile time transformations of entire data structures, even for unsafe languages like C. This work is sponsored by an NSF CAREER award, grant number EIA 0093426, and supported in part ....

....to free objects in the pool, but also release all memory for a pool back to the system when when the data structure is unreachable. There is a broad class of conservative program transformations that attempt to give better locality to programs by changing the placement of allocations in memory [9, 15, 2, 7, 23]. In contrast to these techniques, our approach uses an exact assignment of allocated objects to pools. While approximate assignment algorithms do provide the locality properties we are seeking, the lack of exact assignment makes them unsuitable to host more aggressive transformations, such as ....

R. Courts. Improving locality of reference in a garbage-collecting memory management system. Communications of the ACM, 31(9):1128--1138, 1988.


Locality of Reference, Patterns in Program Behavior, Memory.. - Wilson   (Correct)

....is too little, too late to avoid the major problem of failing to reuse memory promptly [Wil] Generational garbage collectors can greatly reduce this problem [ however, and the dynamic reorganization principle is applicable to incremental generational copying collectors. Courts [Cou88] applied this principle to the generational collector of the Texas Instruments Explorer (a Lisp Machine) with good results. The difficulty with this incremental copying scheme is that the cost of the read barrier may be prohibitive on standard hardware, slowing program execution by several ....

Robert Courts. Improving locality of reference in a garbage-collecting memory management system. Communications of the ACM, 31(9):1128--1138, September 1988.


Non-stop Haskell - Cheadle, Field, Marlow, Jones, While (2000)   (3 citations)  (Correct)

....Again a trap to the runtime system occurs when the mutator trips over the barrier. Typical overheads with this approach are 9 11 [22] although in all but a few customized hardware systems the option is simply not available. A read barrier implementation o ers a potential advantage to the system [7, 13]. With a read barrier, objects are traced by two di erent mechanisms during a garbage collection. Active objects are traced by the mutator when it attempts to access them and trips over the barrier: passive (though of course live) objects are traced by the garbage collector itself when it is ....

R. Courts. Improving locality of reference in a garbagecollecting memory management system. In CACM 31(9), pages 1128-38, 1988.


Efficient Shared-Memory Support for Parallel Graph Reduction - Bennett, Kelly (1996)   (Correct)

....of useful data; see, for example, 46] More awkwardly, garbage collection changes the way data is laid out in memory, and therefore influences spatial locality. Copying collectors are widely used, and these tend to improve spatial locality by copying in a depth first fashion (see for example [12]) Arguably, our results form part of an argument in favour of writing programs in a functional, 22 single assignment style for performance reasons. Avoiding mutable objects allows updates and invalidations to be eliminated, so avoiding false sharing. The garbage collection involved would be an ....

Robert Courts. Improving locality of reference in a garbage-collecting memory management system. Communications of the ACM, 31(9):1128--1138, September 1988.


Non-stop Haskell - Cheadle, Field, Marlow, Jones, While (2000)   (3 citations)  (Correct)

....a trap to the runtime system occurs when the mutator trips over the barrier. Typical overheads with this approach are 9 11 [21] although in all but a few customized hardware systems the option is simply not available. A read barrier implementation o ers an interesting advantage to the system [6, 12]. With a read barrier, objects are traced by two di erent mechanisms during a garbage collection. Active objects are traced by the mutator when it attempts to access them and trips over the barrier: passive (though of course live) objects are traced by the garbage collector itself when it is ....

R. Courts. Improving locality of reference in a garbagecollecting memory management system. In CACM 31(9), pages 1128-38, 1988.


On Bounding Time and Space for Multiprocessor Garbage.. - Guy Blelloch Perry (1999)   (1 citation)  (Correct)

....testing is based on the object not the location. We found it very hard to maintain this property when using Cheney collection along with parallelism and incremental copying of large objects. Another possible reason for using a stack instead of a queue is that it might lead to better locality [24, 7]. In our block allocation scheme along with our use of a local stack, however, we would expect to get this benefit independent of how the global set of frontier nodes are stored. The copy write synchronization. We tried several ways to remove the copy write synchronization, but could not find a ....

R. Courts. Improving locality of reference in a garbage-collecting memory management system. Communications of the ACM, 31(9):1128--1138, Sept. 1988.


Predicting References to Dynamically Allocated Objects - Seidl, Zorn (1997)   (8 citations)  (Correct)

....they had on cache locality [10] This previous work did not consider the more speculative issue of predicting reference locality as we do in this paper. There have also been a number of papers investigating the effect of heap organization on reference locality in garbage collected languages [6, 13, 19], including several recent papers that specifically consider the effect 2 of garbage collection on cache performance [7, 15, 20, 21] This work differs from ours in its focus. While much of the related garbage collection work has investigated how generational garbage collection interacts with ....

....its focus. While much of the related garbage collection work has investigated how generational garbage collection interacts with processor cache architecture, none of the previous work we are aware of has attempted to classify objects using profiles and segregate them as we do. The work of Courts [6], in which the working set for an entire Lisp system is obtained by performing a training of the system, is the closest in this group to our work. However, our focus is specifically on optimizing for cache locality while theirs was on VM performance, and our prediction techniques differ ....

Robert Courts. Improving locality of reference in a garbage-collecting memory management system. Communications of the ACM, 31(9):1128--1138, September 1988.


Improving Pointer-Based Codes Through Cache-Conscious Data.. - Chilimbi, Larus, Hill (1998)   (14 citations)  (Correct)

....a program s virtual memory performance. Appendix A shows that the spirit of database techniques carries over to in core data structures, but different costs lead to different design decisions. Clustering has also been used to improve virtual memory performance of Smalltalk and LISP systems [31, 47, 51, 24, 16] by reorganizing data structures during garbage collection. These studies focused on a program s paging behavior, not its cache behavior. Our work differs, not only because of the different cost for a cache miss and a page fault, but also because cache blocks are far smaller than memory pages. ....

R. Courts. "Improving locality of reference in a garbage-collecting memory management system." Communications of the ACM, 31(9):1128--1138, 1988.


Non-stop Haskell - While, Cheadle, Field, Marlow.. (2000)   (3 citations)  (Correct)

....the same view of memory as it would have if the entire garbage collection was performed in one go: the mutator essentially executes in to space, with from space pointers being nessed before they can be de referenced. A read barrier implementation also o ers a further advantage to the system [7, 11]. With a readbarrier, objects are traced by two di erent mechanisms during a garbage collection. Active objects are traced by the mutator when it attempts to access them and trips over the barrier: passive (though of course live) objects are traced by the garbage collector itself when it is ....

R. Courts, Improving Locality of Reference in a Garbage-collecting Memory Management System, CACM 31(9), pp. 1128-38, 1988.


Segregating Heap Objects by Reference Behavior and Lifetime - Seidl, Zorn (1998)   (24 citations)  (Correct)

....locality than the simple first fit algorithm. Their work did not consider the more speculative issue of predicting reference locality as we do in this paper. There have also been a number of papers investigating the e#ect of heap organization on reference locality in garbage collected languages [5, 14], including several recent papers that specifically consider the e#ect of garbage collection on cache performance [7, 21, 23] This work di#ers from ours in its focus. While much of the related garbage collection work has investigated how generational garbage collection interacts with processor ....

....its focus. While much of the related garbage collection work has investigated how generational garbage collection interacts with processor cache architecture, none of the previous work we are aware of has attempted to classify objects using profiles and segregate them as we do. The work of Courts [5], in which the working set for an entire High Density Medium Density Low Density Unallocated Unoptimized HR Other HR SL Optimized Figure 1: Illustration of our goal of memory segmentation Lisp system is obtained by performing a training of the system, is the closest in this group to our ....

Robert Courts. Improving locality of reference in a garbagecollecting memory management system. Communications of the ACM, 31(9):1128--1138, September 1988.


Comparing Two Garbage Collectors - Douglas Johnson Texas (1991)   (1 citation)  (Correct)

....is a VLSI CAD tool, Droid [Kollaritsch 89] It is doing synthesis and layout of a 10,000 transistor digital logic part. It is large (over 100 megabytes) long running (over 30 hours of CPU time) is batch, rather than interactive. The first garbage collector tested is the Explorer Temporal GC[Courts 88] with the Extended Address Space [Texas Instruments 87] feature enabled. This collector is a generational collector [Lieberman 83] with four generations. A Baker style incremental collector [Baker78] is used for each generation. The EAS feature can be thought of as a fifth generation that holds ....

H.R. Courts, "Improving Locality of Reference in a Garbage-Collecting Memory Management System." Communications of the ACM, September 1988.


Properties Of Age-Based Automatic Memory Reclamation Algorithms - Stefanovic (1999)   (8 citations)  (Correct)

....with a CPU overhead of not more than 20 , however [Zorn, 1990a] of the youngest generation, and thus most pauses are short. Numerous practical implementations and studies of predictive and adaptive management of generations have reported good performance [Caudill and Wirfs Brock, 1986; Courts, 1988; Shaw, 1988; Sobalvarro, 1988; Ungar and Jackson, 1988; Wilson, 1989; Wilson and Moher, 1989; Appel, 1989b; Wilson et al. 1991; Hudson et al. 1991; Stefanovic, 1993b; Stefanovic and Moss, 1994; Diwan et al. 1995; Barrett and Zorn, 1995] The performance of a collector is affected by a number ....

Robert Courts. Improving locality of reference in a garbage-collecting memory management system. Communications of the ACM, 31(9):1128--1138, September 1988.


Predicting References to Dynamically Allocated Objects - Seidl, Zorn (1997)   (8 citations)  (Correct)

....impact they had on cache locality [10] This previous work did not consider the more speculative issue of predicting reference locality as we do in this paper. There have also been a number of papers investigating the e#ect of heap organization on reference locality in garbage collected languages [6, 13, 19], including several recent papers that specifically consider the e#ect of garbage collection on cache performance [7, 15, 20, 21] This work di#ers from ours in its focus. While much of the related garbage collection work has investigated how generational garbage collection interacts with ....

....its focus. While much of the related garbage collection work has investigated how generational garbage collection interacts with processor cache architecture, none of the previous work we are aware of has attempted to classify objects using profiles and segregate them as we do. The work of Courts [6], in which the working set for an entire Lisp system is obtained by performing a training of the system, is the closest in this group to our work. However, our focus is specifically on optimizing for cache locality while theirs was on VM performance, and our prediction techniques di#er ....

Robert Courts. Improving locality of reference in a garbage-collecting memory management system. Communications of the ACM, 31(9):1128--1138, September 1988.


The Design of a Simulation System for Persistent Object.. - Cook, Wolf, Zorn (1993)   (1 citation)  (Correct)

....has been prototyping. In this section, we discuss these three approaches to the evaluation of persistent object storage management and consider related work in the area of main memory heap storage management. Prototype implementations are often used to evaluate the performance of both main memory [5, 11, 14] and persistent object storage management [6, 8] While this approach provides the most realistic performance estimates, it suffers in several ways. The most important drawback of prototype implementations is that they are time consuming to implement. Many reports of prototype implementations only ....

Robert Courts. Improving locality of reference in a garbage-collecting memory management system. Communications of the ACM, 31(9):1128--1138, September 1988.


Run-Time Support for Object Oriented Systems - Sousa (1991)   (Correct)

....advantage of this later technique is that memory compaction can be made during the copy. Mark and Sweep algorithms are based on the first technique, and scavenging (or copying) on the second. On Smalltalk or Lisp like environments, where objects mean dimension is very small, 50 [Ungar 84a] and 25 [Courts 88] bytes accordingly, and short lived, the second technique has a clear advantage over the first. 6.1.2.1 Mark and Sweep Mark and Sweep algorithms first scan all references marking all visited objects. In a per object scanning approach, references residing within visited objects are recursively ....

....grouping configurations, none of the three middle schemes seem to perform convincingly better than others. Although the depth first has some overall advantage, their relative efficiency depends mostly on the size of the primary memory. Similar results have been derived in Lisp systems [Moon 84, Courts 88] where they have shown that depth first can reduce 15 of swapping activity, because it tends to put objects together with the parent object. Dynamic grouping has proven to generate less paging than static grouping [Willians 87] Williams observed typical Smalltalk applications and then ....

Roberts Courts. Improving locality of reference in a garbage-collecting memory mamagement system. Communications of the ACM, 31(9):1128--1138, September 1988.


Age-Based Garbage Collection - Stefanovic, McKinley, Moss (1998)   (4 citations)  (Correct)

.... Hewitt, 1983; Moon, 1984; Ungar, 1984] although Bishop had considered dividing the heap [Bishop, 1977] Numerous practical implementations and studies of predictive and adaptive management of generations have achieved good performance for generational collectors [Caudill and Wirfs Brock, 1986; Courts, 1988; Shaw, 1988; Wilson, 1989; Wilson and Moher, 1989b; Appel, 1989; Wilson et al. 1991; Hudson et al. 1991; Barrett and Zorn, 1995] Aside from remarks in Wilson s survey [Wilson, 1992] and Jones and Lins book [Jones and Lins, 1996, p.151] which admit the possibility of collecting an older ....

Courts, R. (1988). Improving locality of reference in a garbagecollecting memory management system. Communications of the ACM, 31(9).


The Non-stop Spineless Tagless G-machine - While, Field (1996)   (Correct)

....the same view of memory as it would have if the entire garbage collection was performed in one go: the mutator essentially executes in to space, with from space pointers being finessed before they can be de referenced. A read barrier implementation also offers a further advantage to the system[7][9] With a readbarrier, objects are traced by two different mechanisms during a garbage collection. Active objects are traced by the mutator when it attempts to access them and trips over the barrier: passive (though of course live) objects are traced by the garbage collector itself when it is ....

....the execution time of a program: this figure is borne out by statistics from our partial implementation of the scheme on the STG machine. This cost may be more than compensated for by the other documented advantages of a read barrier implementation, for example its beneficial effect on paging costs[7][9] A previous application of this research to a modified version of the ; G machine[3] is described in [14] At first sight, the scheme appears to apply only to models that always employ a subroutine call when a closure is entered, irrespective of whether the closure has previously been ....

R. Courts, Improving Locality of Reference in a Garbage-collecting Memory Management System, CACM 31(9), pp. 1128-38, 1988.


Cache-Conscious Structure Layout - Chilimbi, al. (1999)   (67 citations)  (Correct)

....They designed specialized data structures, such as B trees [4, 13] to bridge this gap. In addition, databases use clustering [3, 48, 15, 5] and compression [13] to improve virtual memory performance. Clustering has also been used to improve virtual memory performance of Smalltalk and LISP systems [28, 46, 51, 21, 14] by reorganizing data structures during garbage collection. Seidl and Zorn [40] combined profiling with a variety of different information sources present at the time of object allocation to predict an object s reference frequency and lifetime. They showed that program references to heap objects ....

R. Courts. "Improving locality of reference in a garbage-collecting memory management system." Communications of the ACM, 31(9):1128--1138, 1988.


Garbage Collection Without Paging - Matthew Hertz Yi   (Correct)

No context found.

R. Courts. Improving locality of reference in a garbage-collecting memory management-system. Communications of the ACM, 31(9):1128--1138, 1988.


Garbage Collection without Paging - Hertz, Feng, Berger (2005)   (Correct)

No context found.

R. Courts. Improving locality of reference in a garbage-collecting memory management-system. Communications of the ACM, 31(9):1128--1138, 1988.


Page-Level Cooperative Garbage Collection - Matthew Hertz Yi (2004)   (Correct)

No context found.

R. Courts. Improving locality of reference in a garbage-collecting memory management system. Communications of the ACM, 31(9), Sept. 1988.


Creating and Preserving Locality of Java Applications - At Allocation And   (Correct)

No context found.

R. Courts. Improving locality of reference in a garbage-collecting memory management system. Communications of the ACM, 31(9):1128--1138, September 1988.


Page-Level Cooperative Garbage Collection - Matthew Hertz Yi (2004)   (Correct)

No context found.

R. Courts. Improving locality of reference in a garbage-collecting memory management system. Communications of the ACM, 31(9), Sept. 1988.


Collection Schemes For Distributed Garbage - Abdullahi, Miranda, Ringwoo (1992)   (7 citations)  (Correct)

No context found.

Courts R (1988) Improving locality of reference in a garbage-collecting memory management system, Comm. of the ACM 31(9) 1128-1138.

First 50 documents

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