TU Darmstadt / ULB / TUbiblio

new Scala() instance of Java: a Comparison of the Memory Behaviour of Java and Scala Programs

Sewe, Andreas and Mezini, Mira and Sarimbekov, Aibek and Ansaloni, Danilo and Binder, Walter and Ricci, Nathan and Guyer, Samuel Z. (2012):
new Scala() instance of Java: a Comparison of the Memory Behaviour of Java and Scala Programs.
In: Proceedings of the International Symposium on Memory Management, New York, NY, USA, ACM, In: International Symposium on Memory Management, Beijing, China, 15-16 Jun 2012, In: ISMM '12, [Conference or Workshop Item]

Abstract

While often designed with a single language in mind, managed runtimes like the Java virtual machine~(JVM) have become the target of not one but many languages, all of which benefit from the runtime's services. One of these services is automatic memory management. In this paper, we compare and contrast the memory behaviour of programs written in Java and Scala, respectively, two languages which both target the same platform: the JVM. We both analyze core object demographics like object lifetimes as well as secondary properties of objects like their associated monitors and identity hash-codes. We find that objects in Scala programs have lower survival rates and higher rates of immutability, which is only partly explained by the memory behaviour of objects representing closures or boxed primitives. Other metrics vary more by benchmark than language.

Item Type: Conference or Workshop Item
Erschienen: 2012
Creators: Sewe, Andreas and Mezini, Mira and Sarimbekov, Aibek and Ansaloni, Danilo and Binder, Walter and Ricci, Nathan and Guyer, Samuel Z.
Title: new Scala() instance of Java: a Comparison of the Memory Behaviour of Java and Scala Programs
Language: English
Abstract:

While often designed with a single language in mind, managed runtimes like the Java virtual machine~(JVM) have become the target of not one but many languages, all of which benefit from the runtime's services. One of these services is automatic memory management. In this paper, we compare and contrast the memory behaviour of programs written in Java and Scala, respectively, two languages which both target the same platform: the JVM. We both analyze core object demographics like object lifetimes as well as secondary properties of objects like their associated monitors and identity hash-codes. We find that objects in Scala programs have lower survival rates and higher rates of immutability, which is only partly explained by the memory behaviour of objects representing closures or boxed primitives. Other metrics vary more by benchmark than language.

Title of Book: Proceedings of the International Symposium on Memory Management
Series Name: ISMM '12
Place of Publication: New York, NY, USA
Publisher: ACM
Uncontrolled Keywords: Java, object demographics, Scala
Divisions: 20 Department of Computer Science > Software Technology
LOEWE > LOEWE-Zentren > CASED – Center for Advanced Security Research Darmstadt
20 Department of Computer Science
Zentrale Einrichtungen
LOEWE
LOEWE > LOEWE-Zentren
Event Title: International Symposium on Memory Management
Event Location: Beijing, China
Event Dates: 15-16 Jun 2012
Date Deposited: 17 Apr 2012 14:29
Identification Number: doi:10.1145/2258996.2259010
Related URLs:
Export:

Optionen (nur für Redakteure)

View Item View Item