JSW 2016 Vol.11(3): 251-271 ISSN: 1796-217X
doi: 10.17706/jsw.11.3.251-271
doi: 10.17706/jsw.11.3.251-271
UPC: Large-Scale Memory Efficient Java Primitive Collections
Ray Hylock*
Department of Health Services and Information Management, East Carolina University, Greenville, North Carolina, USA.
Abstract—The Java programming language is versatile and robust, however, for large-scale applications with memory intensive processes, much is still to be desired. The public Java Development Kit (JDK) supports neither forcible object destruction nor large collection sizes (limited to 231-1) as found in choice computational languages such as Fortran and C/C++. Within Java’s Hotspot, however, the non-public sun.misc.Unsafe class allows such features through basic off-heap functionality. The submitted UPC collections are fully integrated with Unsafe to provide large (i.e., 263-1), destructible arrays, lists, hash sets, hash maps, and matrices, consistent with advanced computational needs. Additionally, a customized version of OpenJDK 1.9 with bulk-operation Unsafe support and companion collections are provided. These tools are compared to Java and extent third-party primitive collections. Testing indicates UPC performs in a consistent to superior manner compared to the state-of-the-art, with greater improvements realized by way of the modified virtual machine.
Index Terms—Destructible, java, long-indexed, OpenJDK enhancements, primitive collections.
Abstract—The Java programming language is versatile and robust, however, for large-scale applications with memory intensive processes, much is still to be desired. The public Java Development Kit (JDK) supports neither forcible object destruction nor large collection sizes (limited to 231-1) as found in choice computational languages such as Fortran and C/C++. Within Java’s Hotspot, however, the non-public sun.misc.Unsafe class allows such features through basic off-heap functionality. The submitted UPC collections are fully integrated with Unsafe to provide large (i.e., 263-1), destructible arrays, lists, hash sets, hash maps, and matrices, consistent with advanced computational needs. Additionally, a customized version of OpenJDK 1.9 with bulk-operation Unsafe support and companion collections are provided. These tools are compared to Java and extent third-party primitive collections. Testing indicates UPC performs in a consistent to superior manner compared to the state-of-the-art, with greater improvements realized by way of the modified virtual machine.
Index Terms—Destructible, java, long-indexed, OpenJDK enhancements, primitive collections.
Cite: Ray Hylock, "UPC: Large-Scale Memory Efficient Java Primitive Collections," Journal of Software vol. 11, no. 3, pp. 251-271, 2016.
General Information
ISSN: 1796-217X (Online)
Frequency: Quarterly
Editor-in-Chief: Prof. Antanas Verikas
Executive Editor: Ms. Yoyo Y. Zhou
Abstracting/ Indexing: DBLP, EBSCO, CNKI, Google Scholar, ProQuest, INSPEC(IET), ULRICH's Periodicals Directory, WorldCat, etc
E-mail: jsweditorialoffice@gmail.com
-
Mar 01, 2024 News!
Vol 19, No 1 has been published with online version [Click]
-
Apr 26, 2021 News!
Vol 14, No 4- Vol 14, No 12 has been indexed by IET-(Inspec) [Click]
-
Nov 18, 2021 News!
Papers published in JSW Vol 16, No 1- Vol 16, No 6 have been indexed by DBLP [Click]
-
Jan 04, 2024 News!
JSW will adopt Article-by-Article Work Flow
-
Nov 02, 2023 News!
Vol 18, No 4 has been published with online version [Click]