The GC bibliography

The bibliography is available in BibTeX format (including abstracts for many entries), or as PDF or in a series of web pages

I would be most grateful to receive additions, corrections and URLs of electronically available papers.

Last updated 7 March 2024.


T


[tadm78] M. Tadman. Fast-fit: A new hierarchical dynamic storage allocation technique. Master's thesis, University of California, Irvine, 1978.

[taka00] Koichi Takahashi and Masami Hagiya. Abstraction of link structures by regular expressions and abstract model checking of concurrent garbage collection. In Asian Symposium on Programming Languages and Systems (APLAS'00), pages 1-8, 2000.

[take91] Tomohiro Takeda, Toshiyuki Kamada, Norihisa Doi, and Yasushi Kodama. A Garbage Collecting Method for Object-Oriented Concurrent Languages, pages 51-64. Springer-Verlag, 1991. Available here.

[take90] Tomohiro Takeda. A garbage collecting method for object-oriented concurrent languages. In Jul and Juul [OOPSLA90-gc], 1990. Available here.

[tane88] Andrew S. Tanenbaum. Computer Networks. Prentice-Hall, second edition, 1988.

[tang08] Yan Tang, Qi Gao, and Feng Qin. LeakSurvivor: Towards safely tolerating memory leaks for garbage-collected languages. In USENIX Annual Technical Conference, pages 307-320. USENIX Association, 2008. Available here.

[tang12a] Cheng-Hsien Tang, Ting-Yuan Song, Meng-Feng Tsai, and Wei-Jen Wang. Collecting mobile-agent garbage using actor-based weighted reference counting. Advanced Science Letters, 9(1):157-161, April 2012.

[tang12] Daniel Tang, Ales Plsek, and Jan Vitek. Memory safety for safety critical Java. In Distributed, Embedded and Real-time Java Systems, chapter 10, pages 235-264. Springer, 2012. Available here.

[tara92] Paul Tarau. Ecological memory management in a continuation passing Prolog engine. In Bekkers and Cohen [IWMM92], 1992, pages 344-356. Available here.

[tara11] Paul Tarau. Integrated symbol table, engine and heap memory management in multi-engine Prolog. In Boehm and Bacon [ISMM11], 2011, pages 129-138. Available here.

[tard93] David Tarditi and Amer Diwan. The full cost of a generational copying garbage collection implementation. In Moss et al. [OOPSLA93-gc], 1993. Available here.

[tard94] David Tarditi and Amer Diwan. Measuring the cost of storage management. Technical Report CMU-CS-94-201, Carnegie Mellon University, 1994. Accepted for publication in Lisp and Symbolic Computation. Available here.

[tard96] David Tarditi and Amer Diwan. Measuring the cost of storage management. Lisp and Symbolic Computation, 9(4), 1996.

[tard00] David Tarditi. Compact garbage collection tables. In Chambers and Hosking [ISMM2000], 2000, pages 50-58. Available here.

[tarj72] R. Tarjan. Depth-first search and linear graph algorithms. SIAM Journal of Computing, 1(2), 1992.

[tasn19] Kashif Tasneem, Ayesha Siddiqui, and Anum Liaquat. Android memory optimization. International Journal of Computer Applications, 182(41):36-43, February 2019. Available here.

[taso20] Alexandros Tasos, Juliana Franco, Sophia Drossopoulou, Tobias Wrigstad, and Susan Eisenbach. Reshape your layouts, not your programs: A safe language extension for better cache locality. SCP, 197:1-57, May 2020. Available here.

[taur97] Kenjiro Taura and Akinori Yonezawa. An effective garbage collection strategy for parallel programming. In PPOPP 1997 [PPoPP97], 1997, pages 264-275. Available here.

[taur97a] Kenjiro Taura and Akinori Yonezawa. Efficient and Reusable Implementation of Fine-Grain Multithreading and Garbage Collection on Distributed-Memory Parallel Computers. PhD thesis, University of Tokyo, 1997. Available here.

[tava23] Sanaz Tavakolisomeh, Marina Shimchenko, Erik Österlund, Rodrigo Bruno, Paulo Ferreira, and Tobias Wrigstad. Heap size adjustment with CPU control. In Moss [MPLR23], 2023.

[tay13] Y.C. Tay, Xuanran Zong, and Xi He. An equation-based heap sizing rule. Performance Evaluation, 70(11):948-964, 2013. Available here.

[tayl86] George S. Taylor, Paul N. Hilfinger, James R. Larus, David A. Patterson, and Benjamin G. Zorn. Evaluation of the SPUR Lisp architecture. In ISCA 1986 [ISCA86], 1986.

[tayl89] S. Taylor. Parallel Logic Programming Techniques. Prentice-Hall, 1989.

[tel87] Gerard Tel, Richard B. Tan, and Jan van Leeuwen. The derivation of on-the-fly garbage collection algorithms from distributed termination detection protocols. Lecture Notes in Computer Science, 247:445-455, 1987.

[tel88] Gerard Tel, Richard B. Tan, and Jan van Leeuwen. The derivation of graph marking algorithms from distributed termination detection protocols. Science Of Computer Programming, 10(2):107-137, 1988.

[tel91] Gerard Tel and Friedmann Mattern. The derivation of distributed termination detection algorithms from garbage collection schemes. In Aarts et al. [PARLE91], 1991, pages 137-149. Available here.

[tel93] Gerard Tel and Friedmann Mattern. The derivation of distributed termination detection algorithms from garbage collection schemes. ACM Transactions on Programming Languages and Systems, 15(1), January 1993.

[tel91a] Gerard Tel. Topics in Distributed Algorithms, volume 1 of Cambridge international series on parallel computation. Cambridge University Press, New York, 1991.

[tel94] Gerard Tel. Introduction to Distributed Algorithms. Cambridge University Press, 1994.

[temp91] Josef Templ. Garbage collection on open arrays. In Cuno Pfister, Beat Heeb, and Josef Templ, editors, Oberon Technical Notes, pages 51-57. ETH Eidgenössische Technische Hochschule Zürich, March 1991. ETHZ Technical Report 156.

[tene11] Gil Tene, Balaji Iyengar, and Michael Wolf. C4: The continuously concurrent compacting collector. In Boehm and Bacon [ISMM11], 2011, pages 79-88. Available here.

[tera78] Motoaki Terashima and Eiichi Goto. Genetic order and compactifying garbage collectors. Information Processing Letters, 7(1):27-32, January 1978. Available here.

[tera04] T. Terauchi and Alex Aiken. Memory management with use-counted regions. Technical report, University of California, Berkeley, March 2004.

[tere14] David Terei, Alex Aiken, and Jan Vitek. M³: High-performance memory management from off-the-shelf components. In Guyer and Grove [ISMM14], 2014, pages 2-13. Available here.

[tere15] David Terei and Amit Levy. Blade: A data center garbage collector. http://arxiv.org/pdf/1504.02578v1.pdf, April 2015. Available here.

[terr88] Douglas B. Terry and Daniel C. Swinehart. Managing stored voice in the etherphone system. ACM Transactions on Computer Systems, 6(1):3-27, February 1988.

[thac87] Charles P. Thacker and Lawrence C. Stewart. Firefly: A multiprocessor workstation. In ASPLOS 1987 [ASPLOS87], 1987, pages 164-172. Also DEC SRC Research report 23, December 1987. Available here.

[thaz87] M.J. Thazhuthaveetil and A.R. Pleszkun. On the structural locality of reference in Lisp list access streams. Information Processing Letters, 26(2):105-110, 1987.

[thes77] Arne Thesen and Tad Pinkerton. Predicting the availability of contiguous memory. International Journal of Computer and Information Sciences, 6(4), December 1977.

[thie92] Dominique Thiebaut, Joel L. Wolf, and Harold S. Stone. Synthetic traces for trace-driven simulation of cache memories. IEEE Transactions on Computers, 41(4):388-410, April 1992.

[thie89] Dominique Thiebaut. The fractal dimension of computer programs and its application to the prediction of the cache miss ratio. IEEE Transactions on Computers, pages 1012-1026, July 1989.

[thom98] S.P. Thomas, W.T. Charnell, S. Darnell, B.A.A. Dias, P.J. Guthrie, J.P. Kramskoy, J.J. Sexton, M.J. Wynn, K. Rautenbach, and W. Plummer. Low-contention grey object sets for concurrent, marking garbage collection. United States Patent 6925637, 1998.

[thom13] J.R. Thomas, M. Cantu, and A. Bauer. Reference counting and object harvesting in Delphi. Dr. Dobb's Journal, May 2013. Available here.

[thom94] Stephen P. Thomas and Richard E. Jones. Garbage collection for shared environment closure reducers. Technical Report 31-94, University of Kent and University of Nottingham, December 1994. Available here.

[thom81] R.E. Thomas. A dataflow computer with improved asymptotic performance. Technical Report MIT/LCS/TR-265, MIT Laboratory for Computer Science, 1981.

[thom93] Stephen P. Thomas. The Pragmatics of Closure Reduction. PhD thesis, The Computing Laboratory, University of Kent at Canterbury, October 1993.

[thom95a] Stephen P. Thomas. Garbage collection in shared-environment closure reducers: Space-efficient depth first copying using a tailored approach. Information Processing Letters, 56(1):1-7, October 1995. Available here.

[thom95] Stephen P. Thomas. Having your cake and eating it: Recursive depth-first copying garbage collection with no extra stack. Personal communication, May 1995.

[thom96] Clark D. Thomborson. When virtual memory isn't enough. Technical Report 136, University of Auckland, November 1996. Available here.

[thom88] Simon J. Thompson and Rafael D. Lins. Cyclic reference counting: A correction to Brownbridge's algorithm. Unpublished notes, 1988.

[thom87] James G. Thompson. Efficient Analysis of Caching Systems. PhD thesis, University of California, Berkeley, October 1987. Also technical report UCB/CSD 87/374.

[thor72] Lars-Erik Thorelli. Marking algorithms. BIT, 12(4):555-568, 1972.

[thor76] Lars-Erik Thorelli. A fast compactifying garbage collector. BIT, 16(4):426-441, 1976.

[tick88] E. Tick. Memory performance of Prolog Architectures. Kluwer, 1988.

[tiki05] Mustafa M. Tikir and Jeffery K. Hollingsworth. NUMA-aware Java heaps for server applications. In 19th IEEE International Parallel and Distributed Processing Symposium (IPDPS), page 108.2, Denver, CO, 2005. IEEE Computer Society Press. Available here.

[ting75] D.W. Ting. Some results of the space requirements of dynamic memory allocation algorithms. Technical Report 75-229, Cornell University, February 1975.

[bail75] Norman T.J.Bailey. The Mathematical Theory of Infectious Diseases and its Applications. Griffin, 2nd edition, 1975.

[TLDI03] Zhong Shao and Peter Lee, editors. ACM SIGPLAN International Workshop on Types in Language Design and Implementation, ACM SIGPLAN Notices 38(3), New Orleans, LA, January 2003. ACM Press.

[toft97a] Mads Tofte, Lars Birkedal, Martin Elsman, Niels Hallenberg, Tommy Højfeld Olesen, Peter Sestoft, and Peter Bertelsen. Programming with Regions in the ML Kit. Technical Report DIKU-TR-97/12, Department of Computer Science (DIKU), University of Copenhagen, April 1997. Available here.

[toft01] Mads Tofte, Lars Birkedal, Martin Elsman, Niels Hallenberg, Tommy Højfeld Olesen, and Peter Sestoft. Programming with Regions in the ML Kit, version 4. Technical report, IT University of Copenhagen, October 2001. There are later versions, e.g. https://elsman.com/pdf/mlkit-4.6.0.pdf, December 2021. Available here.

[toft04] Mads Tofte, Lars Birkedal, Martin Elsman, and Niels Hallenberg. A retrospective on region-based memory management. Higher-Order and Symbolic Computation, 17(3):245-265, September 2004. Available here.

[toft98a] Mads Tofte and Lars Birkedal. A region inference algorithm. ACM Transactions on Programming Languages and Systems, 20(4):734-767, July 1998.

[toft01a] Mads Tofte and Niels Hallenberg. Region-based memory management in perspective. In SPACE 2001 [SPACE01], 2001. Invited talk. Available here.

[toft94] Mads Tofte and Jean-Pierre Talpin. A theory of stack allocation in polymorphically typed languages. Technical Report Computer Science 93/15, University of Copenhagen, July 1993.

[toft94a] Mads Tofte and Jean-Pierre Talpin. Implementation of the typed call-by-value lambda-calculus using a stack of regions. In POPL 1994 [POPL94], 1994, pages 188-201. Available here.

[toft97] Mads Tofte and Jean-Pierre Talpin. Region-based memory management. Information and Computation, 132(2):109-176, February 1997. An earlier version of this was presented at [POPL94]. Available here.

[toft98] Mads Tofte. A brief introduction to Regions. In Peyton~Jones and Jones [ISMM98], 1998, pages 186-195. Available here.

[tolm94] Andrew Tolmach. Tag-free garbage collection using explicit type parameters. In PLDI 1994 [PLDI94], 1994, pages 1-11. Available here.

[tong10] Liangliang Tong and Francis C.M. Lau. Exploiting memory usage patterns to improve garbage collections in Java. In PPPJ 2010 [PPPJ10], 2010.

[tong10a] Liangliang Tong and Francis C.M. Lau. Index-compact garbage collection. In Proceedings of the Eighth Asian Symposium on Programming Languages and Systems (APLAS'10), number 6461 in Lecture Notes in Computer Science, pages 271-286, Shanghai, China, 2010.

[tong13] Liangliang Tong and Francis C.M. Lau. Skew-space garbage collection. Science of Computer Programming, May 2013. Available here.

[tong01] Guanshan Tong and Michael J. O'Donnell. Leveled garbage collection. The Journal of Functional and Logic Programming, July 2001. Available here.

[tong97] Guanshan Tong. Leveled Garbage Collection For Automatic Memory Management. PhD thesis, University of Chicago, November 1997. Available here.

[topo79] R. Topor. The correctness of the Schorr-Waite list marking algorithm. Acta Informatica, 11(3), 1979.

[torp08] Noah Torp-Smith, Lars Birkedal, and John C. Reynolds. Local reasoning about a copying garbage collector. ACM Transactions on Programming Languages and Systems, 30(4), July 2008. Available here.

[toua88a] Hervé Touati and Toshiyuki Hama. A light-weight Prolog garbage collector. In International Conference on Fifth Generation Computer Systems, pages 922-930, Tokyo, 1988.

[toua88] Hervé Touati. A prolog garbage collector for Aquarius. Technical Report UCB//CSD-88-443, University of California, Berkeley, August 1988.

[tour88] Touraïvane. La Récupération de Mémoire dans les Machines Non-Déterministes. PhD thesis, Université d'Aix-Marseille, 1988.

[trai23] Luca Traini, Vittorio Cortellessa, Daniele Di Pompeo, and Michele Tucci. Towards effective assessment of steady state performance in Java software: Are we there yet?. Empirical Software Engineering, 28(1), January 2023. Available here.

[tran08] Baltasar Trancon y Widemann. A reference counting garbage collection algorithm for cyclical functional programming. In Jones and Blackburn [ISMM08], 2008, pages 71-80. Available here.

[TRANSACT11] 6th ACM SIGPLAN Workshop on Transactional Computing, San Jose, CA, June 2011.

[TRANSACT15] 10th ACM SIGPLAN Workshop on Transactional Computing, Portland, OR, June 2015.

[TRANSACT17] 12th ACM SIGPLAN Workshop on Transactional Computing, Austin, TX, June 2017.

[trip18] Charles Tripp, David Hyde, and Benjamin Grossman-Ponemon. FRC: A high-performance concurrent parallel deferred reference counter for C++. In Payer and Sartor [ISMM18], 2018, pages 14-28. Available here.

[tsai18] Po-An Tsai, Yee Ling Gan, and Daniel Sanchez. Rethinking the memory hierarchy for modern languages. In 51st Annual IEEE/ACM International Symposium on Microarchitecture (MICRO), Fukuoka, Japan, October 2018. IEEE Press. Available here.

[tull93] Dean M. Tullsen and Susan J. Eggers. Limitations of cache prefetching on a bus-based multiprocessor. In ISCA 1993 [ISCA93], 1993, pages 278-288.

[turb08] Franklyn Turbak, David Gifford, and Mark A. Sheldon. Garbage Collection, chapter 18. MIT Press, 2008.

[turn79] David A. Turner. A new implementation technique for applicative languages. Software: Practice and Experience, 9:31-49, January 1979. Available here.

[turn81] David A. Turner. Recursion equations as a programming language. In John Darlington, Peter Henderson, and David Turner, editors, Functional Programming and its Applications, pages 1-28. Cambridge University Press, January 1981.

[turn85] David A. Turner. Miranda - a non-strict functional language with polymorphic types. In Jouannaud [FPCA85], 1985, pages 1-16. Available here.