| J. F. Bartlett. Compacting garbage collection with ambiguous roots. Technical Report 88/2, DEC Western Research Laboratory, February 1988. |
.... and acycli c di stri buted garbage, and synchroni sati on between mutators and collectors Network Objectsi s a di stri buted object li brary for Modula 3, a garbagecollected language [10] Our local collector i a sli htly modiDA ver si n of the SRC Modula 3i ncremental, mostly copyi ng collector [4]. Synchroni ti n between the mutator and the local collectori s provi ded by a page wi se read only barri er supported by the operatifi system [1] Network Objects uses referencelinc rather than counts: anycli( t process holds at most one surrog ate for any gi ven network, or concrete, object. ....
Joel F. Bartlett. Compacting garbage collection with ambiguous roots.L isp Pointers 1, 6 (April--June 1988), pp. 2--12. 277
....collection phases, thanks to a user typed malloc. At runtime, they sample the rst several objects allocated for each type and infer a type map. This extra information allows a more eOEcient marking of the memory and speeds up garbage collection in some cases. Bartlett s Mostly Copying collector [Bar88] is a hybrid conservative and copying collector. It assumes no knowledge of register or stack area layouts, but it does assume that all pointers in heapallocated data can be found accurately thanks to the registration of all internal roots [Bar90] by the developer. Other experiments around ....
Joel F. Bartlett. Compacting Garbage Collection with Ambiguous Roots. Technical report, DEC Western Research Laboratory. 88/2, 1988.
....tracked by the remembered set. The collector reassesses the popularity of objects periodically, allowing once popular objects to become movable and collectible again. So called conservative or ambiguous roots collectors also flag objects as nonmovable to avoid having to update references to them [2], and the use of the technique to control popular objects was suggested but not explored by Hudson and Moss [19] 7.8.2 The high level algorithm The algorithm uses reference counting on two levels to detect and manage the popular objects. When a generation is collected, reference counts that are ....
Joel F. Bartlett. Compacting Garbage Collection with Ambiguous Roots. WRL Research Report 88/2, Digital Equipment Corporation Western Research Laboratory, February 1988.
....unexplored combinations have significant potential for advancing On the Usefulness of Liveness for Garbage Collection and Leak Detection 5 Table 1. Some variations in the two dimensions of garbage collector accuracy Level of type accuracy Level of liveness accuracy None Partial Full None [6] [4,10] [3,18,28] Intraprocedural for local vars [1,2,12,27] Interprocedural for local and global vars (a) b) c) the state of the art in leak detection and garbage collection. For example, consider the combination of interprocedural liveness for local and global variables with the three ....
....in reclaiming objects depends on the architecture. In particular, type accuracy is more important for 32 bit architectures than for 64 bit architectures. Hirzel and Diwan investigate only one dimension of accuracy, namely type accuracy, and ignore liveness accuracy in their study. Bartlett [4], Zorn [32] Smith and Morrisett [24] and Agesen et al. 1] compare different garbage collection alternatives with respect to memory consumption. Bartlett [4] describes versions of his mostly copying garbage collector that differ in stack accuracy. Zorn [32] compares the Boehm Demers Weiser ....
[Article contains additional citation context not shown here]
Joel F. Bartlett. Compacting garbage collection with ambiguous roots. Technical Report 88/2, DEC Western Research Laboratory, Palo Alto, CA, February 1988. Also in Lisp Pointers 1(6):2-12, April-June 1988.
.... local and acyclic distributed garbage, and synchronisation between mutators and collectors Network Objects is a distributed object library for Modula 3, a garbagecollected language [10] Our local collector is a slightly modified version of the SRC Modula 3 incremental, mostly copying collector [4]. Synchronisation between the mutator and the local collector is provided by a page wise read only barrier supported by the operating system [1] Network Objects uses reference lists rather than counts: any client process holds at most one surrogate for any given network, or concrete, object. Our ....
Joel F. Bartlett. Compacting garbage collection with ambiguous roots. Lisp Pointers 1, 6 (April--June 1988), pp. 2--12.
....have received much attention. The motivation comes from a desire to use the full pointer addressability and native representation for scalars rather than a tagged representation, and to avoid the overhead of continuous tag maintenance. Some techniques, such as conservative garbage collection [Bar88, BW88] and compiler directed storage reclamation [HJ92, Hic93] do not use any run time type information. While, garbage collection based on type reconstruction [App89, Gol91, GG92] or explicit type propagation [Tol94] use source type information for identifying and traversing live heap objects. ....
....of actual pointer data. Since the guess is conservative, the garbage collector may assume some objects to be live when they are dead and fail to collect them. It may also be possible to compact or copy part of the live data that is definitely known to reside on the heap as shown by Bartlett [Bar88] The feasibility and efficiency of such schemes depend crucially on the object representation convention used within the run time system and the possibility of obscuring pointer non pointer information within the source language and the compiler. In another scheme proposed by Hicks [HJ92, ....
[Article contains additional citation context not shown here]
Joel F. Bartlett. Compacting Garbage Collection with Ambiguous Roots. Research Report 88/2, Western Research Laboratory, Digital Equipment Corporation, February 1988.
....test to work is to put NULL at the start of the class information structure. The idea of using a bidirectional object layout has been suggested[25, 28] as a mean to provide ecient access to instance data and dispatch information in languages supporting multiple inheritance (like C ) In [14], Bartlett proposed a garbage collector which requires grouping references at the head of objects. 6.2 Constant Time Interface Method Lookup Our next enhancement addresses a problem raised by multiple inheritance of interfaces in Java. The virtual machine instruction set contains an ....
Joel F. Bartlett. Compacting garbage collection with ambiguous roots. Technical Report 88.2, Digital { Western Research Laboratory, 1988.
....they are fully conservative, during a collection they must examine every word of the stack, of global data, and of every marked object. Bartlett has written the Mostly Copying Collector, a generational garbage collector for Scheme and C that uses both conservative and copying techniques [Bar89, Bar88] This collector divides the heap into logical pages, each of which has a space identifier. During a collection an object can be promoted from from space to to space in one of two ways: it can be physically copied to a to space page, or the spaceidentifier of its present page can be advanced. ....
Joel F. Bartlett. Compacting garbage collection with ambiguous roots. Technical Report 88/2, Digital Equipment Corporation, Western Research Laboratory, Palo Alto, California, February 1988.
....[44] or the compiler [22, 51, 103] to statically generate type information for each data type. Another alternative is to take advantage of some specific language features (e.g, smart pointers in C ) 36, 45] to generate the pointers locations. Another solution, called conservative GC [11, 21], relies on a conservative pointer finding approach, i.e. the collector treats anything that might be a pointer as a pointer. Thus, any properly aligned bit pattern that could be the address of an object is actually considered to be a pointer to that object. There are a few problems concerning ....
Joel F. Bartlett. Compacting garbage collection with ambiguous roots. Technical Report 88/2, Digital Equipment Corporation Western Research Laboratory, Palo Alto, California, February 1988.
....that disguise pointers. This may happen in spite of the fact that transformations performed by the C compiler are normally considered legal. The rest of this paper addresses solutions to the third problem for collectors that do not exhibit the other two. These include the collectors described in [Bartlett 88] BoehmWeiser 88] BoehmDemersShenker 91] and reference count collectors such as the one described in [Rovner 84] Those in [BoehmWeiser 88] and [BoehmDemersShenker 91] are suitable if interoperability with hand written C code is an issue. We now describe the problem of unsafe compiler ....
Bartlett, Joel F., Compacting Garbage Collection with Ambiguous Roots, DEC WRL Research report 88/2, Digital Equipment Corporation Western Research Laboratory, February, 1988.
....less disruption to a program than nonconcurrent collection. The collection algorithm presented in Part I is targeted towards languages not normally associated with garbage collection, particularly the widely used systems languages C and C . The algorithm borrows heavily from the work of Bartlett [Bartlett 88] and Ellis, Li, and Appel [Ellis et al. 88] Part II is Chapters 7 through 11. It builds on Part I by presenting a concurrent, atomic collection algorithm. An atomic collector is one that preserves the properties of transactions even if a crash occurs during collection. The main forerunner to ....
....for Pascal. Appel [Appel 89] recently evaluated this algorithm for use in other languages. While Britton s algorithm was not implemented for C or C , it is relevant because it contains techniques that are used in the C and C collectors described later, specifically Bartlett s algorithm [Bartlett 88] and the algorithms developed in this thesis. Britton s algorithm relies on perfect knowledge of each variable s type at each point in a program s execution. The strong type checking of Pascal makes it possible to maintain this level of knowledge. The compiler constructs data structures that ....
[Article contains additional citation context not shown here]
Bartlett, Joel F. Compacting Garbage Collection with Ambiguous Roots. Technical Report 88/2, DEC Western Research Laboratory, February, 1988.
....is that the collector does not invoke destructors on collected objects (property 5) and has insufficient information to do so. Another disadvantage is that every pointer aligned field is considered to be a pointer, which may hurt collector performance and retain too much storage. Bartlett [2] presents a mostly copying collector for C . In this scheme, stacks and registers are considered conservatively: in these areas, objects pointed to by bit patterns that might be pointers are retained but not copied. However, type information giving the offsets of pointers in heap objects ....
....object. Thus, we require that the existence of such an interior pointer on the stack suffices to prevent collection of the object into which it points. 5 A number of schemes have been proposed that allow interior pointers to be mapped into the addresses of containing objects; see, e.g. [5, 6, 2]. Independent of any concerns about the destruction of temporaries, it may be that some optimizing compilers will modify the pointers contained in smart pointer records in ways that violate the assumptions of the conservative scan [4] In this case, we could provide (at some cost) a completely ....
Joel F. Bartlett. Compacting garbage collection with ambiguous roots. Technical Report 88/2, Digital Equipment Corporation Western Research Laboratory, February 1988.
....a medium grain synchronization is established between the collector and the mutator at the virtual memory level. Bartlett invented mostly copying collection, which makes substantial memory compaction possible without having to know the actual set of root pointers at the start of the collection [Bartlett 88] The result is that a mostly copying collector can perform in an environment where stack and register allocation disciplines are not known. Additionally, Bartlett has incorporated generational collection into his mostly copying collector [Bartlett 89] and has shown that his strategy works well ....
....heap size must be a multiple of the protection unit, meaning that for the DECStation implementation the heap size is rounded to the nearest number of physical pages. To simplify the collector, the size of a protection unit must be evenly divisible by the size of a heap page. Bartlett has shown in [Bartlett 88] that configuring the collector to have smaller heap pages generally yields better performance. He chose 512 byte heap pages for the mostly copying collector and its generational version, for both Scheme and C . The incremental collector presented here also uses 512 byte heap pages, and the heap ....
Joel F. Bartlett. Compacting Garbage Collection with Ambiguous Roots. Technical Report 88/2, DEC Western Research Laboratory, February, 1988.
....much larger than it needs to be. This may lead to poor cache or even paging behavior. Also, the performance of the garbage collector depends on how many objects it has to scan, and a more accurate collector has to scan less objects. The paper describing Barlett s mostly copying garbage collector [4] compares di erent accuracy levels for the stack, and nds little di erence for the two measured benchmarks. Boehm and Weiser [9] state that conservativism had little e ect on the e ectiveness of an predecessor of BDW, but they do not compare it to an actual accurate garbage collector. We will ....
....our needs, and add some of our own. We will see details of this in section 6.2. Chapter 5 Benchmarks for the Experiments Table 5.1 lists the benchmarks used for the experiments. The two smallest programs, gctest and gctest3, are distributed along with Barlett s mostly copying garbage collector [4, 5]. Anagram, ks, ft, yacr 2, and bc are taken from Austin s pointer intensive benchmark suite. Bshift is an Ei el program compiled to C with SmallEi el. Gzip and sed are common GNU utilities (bc is also a common GNU utility, but we took the source code from Austin s benchmark suite) Two of the ....
[Article contains additional citation context not shown here]
Joel Barlett. Compacting garbage collection with ambiguous roots. Technical report, Western Research Laboratory, Digital Equipment Corporation, February 1988.
.... collection (GC) or automatic storage reclamation, has well known software engineering benefits [16] It is therefore no surprise that even though C and C do not mandate GC as part of the language definition, many C and C programmers are now using garbage collection to free dead objects [6, 3] or identify memory leaks in programs that use explicit deallocation [9, 7, 5, 1] In order for a garbage collector to be effective for these two uses, it must satisfy the following requirements. First, the garbage collector must be competitive with a careful programmer at collecting garbage. If ....
....little or no compiler or language support; indeed this is one of the main selling points of conservative garbage collection. Type accurate and conservative collectors are at two extremes of type accuracy; one can imagine collectors that fall in between the two. For instance, Bartlett s collector [3, 4] is type accurate for the heap but inaccurate for other areas of memory. Other collectors with intermediate accuracy, such as the ones that are type accurate just for the globals, are possible but, to our knowledge, have not been explored in literature. The main advantage of conservative garbage ....
[Article contains additional citation context not shown here]
Joel F. Bartlett. Compacting garbage collection with ambiguous roots. Technical Report Technical Report 88/2, DEC Western Research Laboratory, Palo Alto, CA, February 1988. Also in Lisp Pointers 1, 6 (April-June 1988), 2-12.
....consuming on some machines. This is the reason why the prototype parallel version for the Sun Sparc multiprocessor architecture gives no significant speedup [16] Therefore, it is planned to develop a parallel mostly copying algorithm. The mostly copying garbage collection developed by Bartlett [4, 5] (see also [1] is a variant of the classical stop and copy algorithm, where all accessible objects on the heap are copied into a new space. The advantages of this strategy are that it results in memory compaction and its running time is proportional to the amount of accessible memory. However, at ....
Bartlett, J. F. Compacting garbage collection with ambiguous roots. Tech. Rep. 88/2, DEC Western Research Laboratory, Palo Alto, CA, Feb. 1988.
....they are fully conservative, during a collection they must examine every word of the stack, of global data, and of every marked object. Bartlett has written the Mostly Copying Collector, a generational garbage collector for Scheme and C that uses both conservative and copying techniques [Bar89, Bar88] This collector divides the heap into logical pages, each of which has a space identifier. During a collection an object can be promoted from from space to to space in one of two ways: it can be physically copied to a to space page, or the spaceidentifier of its present page can be advanced. ....
Joel F. Bartlett. Compacting garbage collection with ambiguous roots. Technical Report 88/2, Digital Equipment Corporation, Western Research Laboratory, Palo Alto, California, February 1988.
....algorithms [ Boehm and Weiser 1988; Demers et al. 1990; Boehm et al. 1991 ] However, these collectors do not satisfy our requirements because they cannot compact the heap because of the constraint of conservative pointer finding. 4.2. 2 Partially Conservative Collector Mostly copying collector [ Bartlett 1988 ] is a compacting partially conservative collector. Partially conservative means that the collector scans the stack and registers 35 conservatively by using conservative pointer finding but the heap precisely, so object formats in the heap must be recognizable by the collector. In this ....
J. F. Bartlett: "Compacting Garbage Collection with Ambiguous Roots," WRL Research Report 88/2, Digital Equipment Corporation Western Research Laboratory, Palo Alto, February 1988.
....On the other hand, copying collectors do have problems of their own. For example, they can only use half of the heap at any given time, regularly copy all live data during each collection, and require that all references be precisely identified (there are ways to work around some of these problems [15, 4], but they add additional complexity to implementations) Thus many systems use mark and sweep garbage collection instead. This paper shows that mark and sweep garbage collection can also use time independent of the size of the heap using an algorithm which will be called selective sweeping. This ....
Joel F. Bartlett. Compacting garbage collection with ambiguous roots. Research Report 88/2, Compaq Western Research Laboratory, February 1988.
....and Mungi [34, 37] but the rudiments are there in other experimental operating systems such as Opal [24, 25] among others. Our interest here focuses on efficient support for orthogonal persistence on stock operating systems. 4 Mostly copying garbage collection Mostly copying garbage collection [12, 13] is a hybrid of conservative [16] and copying [35, 26] collection. It is suitable for use in environments lacking accurate information on the location of references from the register, static or stack areas; objects that appear to be referenced from these areas are treated conservatively and not ....
BARTLETT, J. F. Compacting garbage collection with ambiguous roots. Research Report 88/2, Western Research Laboratory, Digital Equipment Corporation, Feb. 1988.
No context found.
J. F. Bartlett. Compacting garbage collection with ambiguous roots. Technical Report 88/2, DEC Western Research Laboratory, February 1988.
No context found.
Joel F. Bartlett. Compacting Garbage Collection with Ambiguous Roots. Technical report, DEC Western Research Laboratory, Palo Alto, CA, February 1988.
No context found.
J. F. Bartlett. Compacting garbage collection with ambiguous roots. Technical Report 88/2, DEC Western Research Laboratory, February 1988.
No context found.
J. F. Bartlett, `Compacting garbage collection with ambiguous roots', DEC WRL Research Report 88/2, February 1988.
No context found.
J. F. Bartlett, `Compacting garbage collection with ambiguous roots', Tech. Rep. 88/2, Digital Equipment Corporation Western Research Laboratory, Palo Alto, CA, February 1988.
First 50 documents Next 50
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