Title :
A reconfigurable memory management core for Java applications
Author :
Ejnioui, Abdel ; Rhiati, Abdelkader
Author_Institution :
Dept. of Electr. & Comput. Eng., Central Florida Univ., Orlando, FL, USA
Abstract :
Shortly after the introduction of Java technology, numerous research efforts went into overcoming the performance shortcomings of the Java Virtual Machine (JVM) by mapping it onto hardware. It seems that most works addressing the implementation of a JVM in hardware often excludes the mapping of compute-intensive tasks such as memory allocation, garbage collection, and exception handling. In this paper, we propose a hardware architecture to support dynamic memory allocation and de-allocation operations in a JVM. Such hardware architectures are becoming attractive alternatives when compared to their software implementation counterparts. This architecture, called Memory Management Core (MMC): (i) supports a memory map that is independent of the physical memory size; (ii) allocates blocks with exact size to minimize fragmentation; (iii) performs in-place coalescing and splitting of the memory blocks; (iv) services concurrent multiple allocation and de-allocation requests to achieve maximum performance; and (v) attempts to achieve a high utilization of all its hardware components. A prototype of this architecture is implemented and mapped on a suitable FPGA device to analyze its performance. The obtained results show that the FPGA implementation of this architecture can service memory allocation and de-allocation of many order of magnitude faster than software implementations for memory-intensive applications.
Keywords :
Java; field programmable gate arrays; memory architecture; reconfigurable architectures; storage allocation; storage management; FPGA; JVM; Java virtual machine; MMC; hardware architecture; memory allocation; memory deallocation; memory management core; memory map; memory-intensive applications; minimize fragmentation; physical memory size; prototype; software implementation; Computer architecture; Field programmable gate arrays; Hardware; Java; Memory architecture; Memory management; Performance analysis; Prototypes; Software prototyping; Virtual machining;
Conference_Titel :
VLSI, 2004. Proceedings. IEEE Computer society Annual Symposium on
Print_ISBN :
0-7695-2097-9
DOI :
10.1109/ISVLSI.2004.1339568