Abstract
jHISC is an object-oriented processor for embedded system aiming at accelerating Java execution by hardware approach. Garbage collection is one of the critical tasks in a Java Virtual Machine. In this paper, we have conduct a study of dynamic object allocation and garbage collection behavior of Java program based on SPECjvm 98 benchmark suite and MIDP applications for mobile phones. Life, size, and reference count distribution of Java objects are measured. We found most Java objects die very young, small in size and have small number reference counts. Reference counting object cache with hardware write barrier and object allocator is proposed to provide the hardware concurrent garbage collection for small size objects in jHISC. Hardware support on write barrier greatly reduces the overhead to perform the reference count update. The reference counting collector reclaims the memory occupied by object immediately after the object become garbage. The hardware allocator provides a constant time object allocation. From the investigation, over half of Java objects can be garbage collected by the object cache that makes it unnecessary for these objects to copy to the main memory.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Fong, A.S.: HISC: A High-level Instruction Set Computer. In: 7th European Simulation Symposium, October 1995, pp. 406–410. The Society for Computer Simulation (1995)
Lun, M.P., Li, R., Fong, A.: Method manipulation in an object-oriented processor. In: ACM SIGARCH Computer Architecture News archive, September 2003, vol. 31(4) (2003)
Chen, G., Kandemir, M., Vijaykrishnan, N., Irwin, M.J.: PennBench: A Benchmark Suite for Embedded Java. In: Proceedings of the 5th Workshop on Workload Characterization, Austin, TX (November 2002)
Wilson, P.R.: Uniprocessor Garbage Collection Techniques. In: International Workshop on Memory Management, St. Malo, France (September 1992)
Jones, R., Lins, R.: Garbage Collection Algorithms for Automatic Dynamic Memory Management. John Wiley & Sons, Chichester (1996)
Srisa-an, W., Lo, C.-T.D., Chang, J.M.: Active Memory Garbage Collector for Real-Time Java Embedded Deveices. IEEE Transactions on Mobile Computing 2(2), 89–101 (2003)
Cam, H., Abd-El-Barr, M., Sait, S.M.: A high-performance hardware-efficient memory allocation technique and design. In: International Conference on Computer Design (ICCD 1999), pp. 274–276. IEEE Computer Society Press, Los Alamitos (1999)
Blackburn, S., Kathryn, K.: Ulterior Reference Counting: Fast Garbage Collection without a Long Wait. In: OOPSLA 2003 ACM Conference on Object-Oriented Systems, Language and Applications, October 26-23 (2003)
Alpern, B., Attanasio, C.R., Cocchi, A., Lieber, D., Smith, S., Ngo, T., Barton, J.J., Hummel, S.F., Sheperd, J.C., Mergen, M.: Implementing Jalalpeo in Java. In: Processings of the 1999 ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages & Applications, OOPSLA 1999, ACM SIGPLAN Notices, Denver, Colorado, November 1-5, vol. 34(10), pp. 314–324. ACM Press, New York (1999)
Azatchi, H., Petrank, E.: Integration generations with advanced reference counting garbage collectors. In: International Conference on Compiler Construction, Warsaw, Poland (April 2003)
Bacon, D.F., Rajan, V.T.: Concurrent cycle collection in reference counted systems. In: Kuden Knudsen, J.L. (ed.) Proceedings of 15th European Conference on Object-Oriented Programming Languages, ACM SIGPLAN Notices, New Orleans, Louisiana, January 15-17, vol. 38(1). ACM Press, New York (2003)
Deutsch, L.P., Bobrow, D.G.: An efficient incremental automatic garbage collector. Communications of the ACM 19(9), 522–526 (1976)
Collins, G.E.: A method for overlapping and erasure of lists. Communications of the ACM 3(12), 655–657 (1960)
Goldberg, A., Robson, D.: Smalltalk-80: The Language and its Implementation. Addison-Wesley, Reading (1983)
Wall, L., Scheartz, R.L.: Programming Perl. O’Reilly and Associates, Inc., Sebastopol (1991)
Sun claims it’s winning developer space (May 2004), http://www.theinquirer.net
Lee, Y.-M., Tak, B.-C., Maeng, H.-S., Kim, S.-D.: Real-Time Java Machine for Information Appliances. IEEE Transactions 46(4), 949–957 (2000)
SPEC JVM98, http://www.specbench.org/osg/jvm98/
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Yau, C.H., Tan, Y.Y., Fong, A.S., Yu, W.S. (2005). Hardware Concurrent Garbage Collection for Short-Lived Objects in Mobile Java Devices. In: Yang, L.T., Amamiya, M., Liu, Z., Guo, M., Rammig, F.J. (eds) Embedded and Ubiquitous Computing – EUC 2005. EUC 2005. Lecture Notes in Computer Science, vol 3824. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11596356_8
Download citation
DOI: https://doi.org/10.1007/11596356_8
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-30807-2
Online ISBN: 978-3-540-32295-5
eBook Packages: Computer ScienceComputer Science (R0)