Concurrent compacting garbage collection of a persistent heap
SOSP '93 Proceedings of the fourteenth ACM symposium on Operating systems principles
Performance of a hardware-assisted real-time garbage collector
ASPLOS VI Proceedings of the sixth international conference on Architectural support for programming languages and operating systems
Performance effects of architectural complexity in the Intel 432
ACM Transactions on Computer Systems (TOCS)
A High-Performance Memory Allocator for Object-Oriented Systems
IEEE Transactions on Computers
A Multithreaded Concurrent Garbage Collector Parallelizing the New Instruction in Java
IPDPS '02 Proceedings of the 16th International Parallel and Distributed Processing Symposium
Object-Oriented Architectural Support for a Java Processor
ECCOP '98 Proceedings of the 12th European Conference on Object-Oriented Programming
DMMX: dynamic memory management extensions
Journal of Systems and Software
Architecture of SOAR: Smalltalk on a RISC
ISCA '84 Proceedings of the 11th annual international symposium on Computer architecture
A High-Performance Hardware-Efficient Memory Allocation Technique and Design
ICCD '99 Proceedings of the 1999 IEEE International Conference on Computer Design
Architectural Support for Dynamic Memory Management
ICCD '00 Proceedings of the 2000 IEEE International Conference on Computer Design: VLSI in Computers & Processors
Active Memory Processor: A Hardware Garbage Collector for Real-Time Java Embedded Devices
IEEE Transactions on Mobile Computing
IEEE Transactions on Computers
Hardware concurrent garbage collection for short-lived objects in mobile java devices
EUC'05 Proceedings of the 2005 international conference on Embedded and Ubiquitous Computing
Modeling efficient XOR-Based hash functions for cache memories
ICCS'06 Proceedings of the 6th international conference on Computational Science - Volume Part I
Hi-index | 0.00 |
The memory intensive nature of object-oriented languages such as C++ and Java has created the need of a high-performance dynamic memory management (DMM); however, it is a challenging task to provide efficient reliable system without violating real time performance constraints. Hardware approach emerges as one of the candidate in improving the performance of DMM. This paper presents an efficient design for explicit dynamic memory management which exploits the high speed of a pure hardware implementation. Object allocation and deletion are strictly bounded in time. The whole heap space is divided into two semi-spaces, and a concurrent bidirectional memory compaction algorithm is proposed. So that memory compaction can be done while mutator process is running on the processor. A small built in object-based cache memory is available to avoid indirect object addressing inefficiencies. Experiments show that this hardware scheme can greatly improve the speed and predictability of DMM.