SlideShare a Scribd company logo
International Research Journal of Engineering and Technology (IRJET) e-ISSN: 2395-0056
Volume: 07 Issue: 01 | Jan 2020 www.irjet.net p-ISSN: 2395-0072
© 2020, IRJET | Impact Factor value: 7.34 | ISO 9001:2008 Certified Journal | Page 1039
Performance Comparison of Real-Time Garbage Collection in the Sun
Java Real-Time Systems with Different Garbage Collection Techniques
Amandeep kaur1, Balpreet kaur2, Rupinder kaur3
1,2,3Assistant Professor, Dept. of CSE, BBSBEC, Fatehgarh Sahib
---------------------------------------------------------------------***----------------------------------------------------------------------
Abstract - Garbage collectionperformancesvarywhen we use
reference countingtechnique. Generational garbagecollection
worst case allocation characteristics are different from
reference counting. In this review paper, a performance
comparison has been made using the defaultandtheproposed
RTGC(Real time garbage collection) approach.
Key Words: Real time garbage collection, Reference
counting
1. INTRODUCTION
Sun Java Real-Time System (Java RTS) is Sun's commercial
implementation of the Real-Time Specification for Java
(RTSJ), or JSR 1.
Starting with Sun Java RTS 2.0, a new real-time garbage
collector (RTGC), based on Henriksson's algorithm, is
available. The garbage collector runs as one or more real-
time threads (RTTs). These run at a priority that is lower
than all instances of NoHeapRealtimeThread (NHRT) and
that may be lower than some RTTs as well, so that critical
threads may preempt the collector. In this way, critical
threads are shielded from the effects of GC.
By default, the garbage collector runs at its initial priority,
which is below that of the noncritical real-time threads. But
as memory grows short, the VM will boost or raise the
priority of the collector to the maximum configuredpriority.
1.1 Thread distinction in java
The important point about the RTGC provided with Java RTS
is that it is fully concurrent, and it can thus be preempted at
any time. There is no need to run the RTGC at the highest
priority, and there is no stop-the-world phase, during which
all the application's threads are suspended during GC.
RTGC starts executing at its initial priority and is preempted
by a high-priority thread. When that thread stops, the RTGC
runs again but is again preempted. Finally, if the running
threads are allocating memory and the remaining memory
becomes low enough, the RTGC is boosted to its maximum
priority, where it is preempted only by critical threads.
Fig -1: thread distinction in java
1.2 Default RTGC using one and two CPUs
On a multiprocessor, one CPU can be doing some GC work
while an application thread is making progress on another
CPU. In Figure 6, the critical NHRTs are running on a
separate CPU and therefore do not pre-empt the RTGC. The
RTGC runs to completion without its priority having to be
boosted.
Fig -2: default real time garbage collection in one CPU
The RTGC considers that the criticality of an application's
threads is based on the threads' respective priorities and
ensures hard-real-time behavior only for real-time threads
at the critical level, while trying to offer soft-real-time
behavior for real-time threads below the critical level.
This reduces the total overheadoftheRTGCandensuresthat
the determinism is not affected by the addition of new low-
priority application threads. This makes the configuration
easier because there is no need to study the allocation
International Research Journal of Engineering and Technology (IRJET) e-ISSN: 2395-0056
Volume: 07 Issue: 01 | Jan 2020 www.irjet.net p-ISSN: 2395-0072
© 2020, IRJET | Impact Factor value: 7.34 | ISO 9001:2008 Certified Journal | Page 1040
behavior of an application in its entirety in order to
configure the RTGC.
Fig -3: default real time garbage collection in two cpus
2. The proposed approach
Java possesses many advantages for embedded system
development, including fast productdeployment,portability,
security, and a small memory footprint. As Java makes
inroads into the marketforembeddedsystems,mucheffortis
being invested in designing real-timegarbage collectors.The
proposedgarbage-collectedmemorymodule,abitmap-based
processor withstandardDRAMcellsisintroducedtoimprove
the performance and predictability of dynamic memory
management functions that include allocation, reference
counting, and garbage collection. As a result, memory
allocation can be done in constant time and sweeping can be
performed in parallel by multiple modules. Thus, constant
timesweeping is also achieved regardlessofheapsize.Thisis
a major departure from the software counterparts where
sweeping time depends largely on the size of the heap. In
addition, the proposed design also supports limited-field
reference counting, which has the advantage of distributing
the processing cost throughout the execution.
3. Results: Performance comparison
By doing reference counting operation in a coprocessor, the
processing is done outside of the main processor. Moreover,
the hardware cost of the proposed design is very modest
(about 8,000 gates). Our studyhasshownthat3-bitreference
counting can eliminate the need to invoke the garbage
collector in all tested applications. Moreover, it also reduces
the amount of memory usage by 77 percent.
Fig -4: default real time garbage collection in two cpus
REFERENCES
1. D.F. Bacon, P. Cheng, and V.T. Rajan, “A Real-Time
Garbage Collector with Low Overhead and
Consistent Utilization,” In Proceedings of the ACM
Principles of Programming Languages (POPL 03),
pp. 285-298, 2003.
2. Roger Henriksson. “Schedulinggarbagecollectionin
embedded systems.” Phd thesis, Lund Institute of
Technology, 1998.
3. Scott Nettles and James O’Toole.”Real-Time
replication garbage collection. Pages 217-226.ACM
Press, 1993.
4. Fridtjof Siebert.” Real –Time garbage collection in
multi-threaded systems on a single processor”.
5. Fridtjof Siebert. Hard real-time garbage collection.
Phd thesis, Universitat Karsruhe, 2002.

More Related Content

PPTX
Вячеслав Блинов «Java Garbage Collection: A Performance Impact»
PDF
Expectations for optical network from the viewpoint of system software research
PDF
Virtual Network Functions as Real-Time Containers in Private Clouds
PDF
Exploring the Performance Impact of Virtualization on an HPC Cloud
PDF
Protecting Real-Time GPU Kernels in Integrated CPU-GPU SoC Platforms
PDF
State of Java Elasticity. Tuning Java Efficiency - GIDS.JAVA LIVE 2020
PDF
AIST Super Green Cloud: lessons learned from the operation and the performanc...
PDF
USENIX NSDI 2016 (Session: Resource Sharing)
Вячеслав Блинов «Java Garbage Collection: A Performance Impact»
Expectations for optical network from the viewpoint of system software research
Virtual Network Functions as Real-Time Containers in Private Clouds
Exploring the Performance Impact of Virtualization on an HPC Cloud
Protecting Real-Time GPU Kernels in Integrated CPU-GPU SoC Platforms
State of Java Elasticity. Tuning Java Efficiency - GIDS.JAVA LIVE 2020
AIST Super Green Cloud: lessons learned from the operation and the performanc...
USENIX NSDI 2016 (Session: Resource Sharing)

What's hot (18)

PDF
Java and Containers - Make it Awesome !
PPTX
Applying of the NVIDIA CUDA to the video processing in the task of the roundw...
PDF
From Rack scale computers to Warehouse scale computers
PDF
User-space Network Processing
PPTX
GPU Performance Prediction Using High-level Application Models
PDF
IEEE CloudCom 2014参加報告
PDF
Q2.12: Existing Linux Mechanisms to Support big.LITTLE
PPTX
Usage and Comparisons of Control Group in Android AOSP: Marshmallow and Before
PPTX
GPU Computing
PPTX
Tensor Processing Unit (TPU)
PDF
Slides for In-Datacenter Performance Analysis of a Tensor Processing Unit
PDF
Performance Optimization of HPC Applications: From Hardware to Source Code
PDF
GPU Programming
PDF
Tungsten University: Setup and Operate Tungsten Replicators
PPTX
Google TPU
PDF
HC-4012, Complex Network Clustering Using GPU-based Parallel Non-negative Mat...
PDF
Introduction to High-Performance Computing (HPC) Containers and Singularity*
PDF
Flow-centric Computing - A Datacenter Architecture in the Post Moore Era
Java and Containers - Make it Awesome !
Applying of the NVIDIA CUDA to the video processing in the task of the roundw...
From Rack scale computers to Warehouse scale computers
User-space Network Processing
GPU Performance Prediction Using High-level Application Models
IEEE CloudCom 2014参加報告
Q2.12: Existing Linux Mechanisms to Support big.LITTLE
Usage and Comparisons of Control Group in Android AOSP: Marshmallow and Before
GPU Computing
Tensor Processing Unit (TPU)
Slides for In-Datacenter Performance Analysis of a Tensor Processing Unit
Performance Optimization of HPC Applications: From Hardware to Source Code
GPU Programming
Tungsten University: Setup and Operate Tungsten Replicators
Google TPU
HC-4012, Complex Network Clustering Using GPU-based Parallel Non-negative Mat...
Introduction to High-Performance Computing (HPC) Containers and Singularity*
Flow-centric Computing - A Datacenter Architecture in the Post Moore Era
Ad

Similar to IRJET- Performance Comparison of Real-Time Garbage Collection in the Sun Java Real-Time Systems with Different Garbage Collection Techniques (20)

PPTX
Towards a garbage collector for distributed real-time Java
PDF
IRJET- Implementation of Garbage Collection Java Application on Sun Java ...
PPT
Real-time Programming in Java
PPT
Introduction to Real Time Java
PDF
Realtime Java Programming With Java Rts Bruno Eric J Bollella
PDF
High level programming of embedded hard real-time devices
PPTX
Memory Management in the Java Virtual Machine(Garbage collection)
PDF
Let's talk about Garbage Collection
PDF
Rethinking garbage collection
PDF
Rethinking garbage collection
PDF
BM Real-time Technologies for SUSE Linux Enterprise Real Time
PDF
Java Garbage Collection - How it works
PDF
Performance Tuning - Understanding Garbage Collection
PDF
Comparison of co processor and traditional processor in terms of time cycle
PDF
Bertrand Delsart Java R T S
ODP
Garbage collection
PDF
Clock Gating of Streaming Applications for Power Minimization on FPGA’s
PDF
Elastic JVM for Scalable Java EE Applications Running in Containers #Jakart...
PPT
An Introduction to JVM Internals and Garbage Collection in Java
Towards a garbage collector for distributed real-time Java
IRJET- Implementation of Garbage Collection Java Application on Sun Java ...
Real-time Programming in Java
Introduction to Real Time Java
Realtime Java Programming With Java Rts Bruno Eric J Bollella
High level programming of embedded hard real-time devices
Memory Management in the Java Virtual Machine(Garbage collection)
Let's talk about Garbage Collection
Rethinking garbage collection
Rethinking garbage collection
BM Real-time Technologies for SUSE Linux Enterprise Real Time
Java Garbage Collection - How it works
Performance Tuning - Understanding Garbage Collection
Comparison of co processor and traditional processor in terms of time cycle
Bertrand Delsart Java R T S
Garbage collection
Clock Gating of Streaming Applications for Power Minimization on FPGA’s
Elastic JVM for Scalable Java EE Applications Running in Containers #Jakart...
An Introduction to JVM Internals and Garbage Collection in Java
Ad

More from IRJET Journal (20)

PDF
Enhanced heart disease prediction using SKNDGR ensemble Machine Learning Model
PDF
Utilizing Biomedical Waste for Sustainable Brick Manufacturing: A Novel Appro...
PDF
Kiona – A Smart Society Automation Project
PDF
DESIGN AND DEVELOPMENT OF BATTERY THERMAL MANAGEMENT SYSTEM USING PHASE CHANG...
PDF
Invest in Innovation: Empowering Ideas through Blockchain Based Crowdfunding
PDF
SPACE WATCH YOUR REAL-TIME SPACE INFORMATION HUB
PDF
A Review on Influence of Fluid Viscous Damper on The Behaviour of Multi-store...
PDF
Wireless Arduino Control via Mobile: Eliminating the Need for a Dedicated Wir...
PDF
Explainable AI(XAI) using LIME and Disease Detection in Mango Leaf by Transfe...
PDF
BRAIN TUMOUR DETECTION AND CLASSIFICATION
PDF
The Project Manager as an ambassador of the contract. The case of NEC4 ECC co...
PDF
"Enhanced Heat Transfer Performance in Shell and Tube Heat Exchangers: A CFD ...
PDF
Advancements in CFD Analysis of Shell and Tube Heat Exchangers with Nanofluid...
PDF
Breast Cancer Detection using Computer Vision
PDF
Auto-Charging E-Vehicle with its battery Management.
PDF
Analysis of high energy charge particle in the Heliosphere
PDF
A Novel System for Recommending Agricultural Crops Using Machine Learning App...
PDF
Auto-Charging E-Vehicle with its battery Management.
PDF
Analysis of high energy charge particle in the Heliosphere
PDF
Wireless Arduino Control via Mobile: Eliminating the Need for a Dedicated Wir...
Enhanced heart disease prediction using SKNDGR ensemble Machine Learning Model
Utilizing Biomedical Waste for Sustainable Brick Manufacturing: A Novel Appro...
Kiona – A Smart Society Automation Project
DESIGN AND DEVELOPMENT OF BATTERY THERMAL MANAGEMENT SYSTEM USING PHASE CHANG...
Invest in Innovation: Empowering Ideas through Blockchain Based Crowdfunding
SPACE WATCH YOUR REAL-TIME SPACE INFORMATION HUB
A Review on Influence of Fluid Viscous Damper on The Behaviour of Multi-store...
Wireless Arduino Control via Mobile: Eliminating the Need for a Dedicated Wir...
Explainable AI(XAI) using LIME and Disease Detection in Mango Leaf by Transfe...
BRAIN TUMOUR DETECTION AND CLASSIFICATION
The Project Manager as an ambassador of the contract. The case of NEC4 ECC co...
"Enhanced Heat Transfer Performance in Shell and Tube Heat Exchangers: A CFD ...
Advancements in CFD Analysis of Shell and Tube Heat Exchangers with Nanofluid...
Breast Cancer Detection using Computer Vision
Auto-Charging E-Vehicle with its battery Management.
Analysis of high energy charge particle in the Heliosphere
A Novel System for Recommending Agricultural Crops Using Machine Learning App...
Auto-Charging E-Vehicle with its battery Management.
Analysis of high energy charge particle in the Heliosphere
Wireless Arduino Control via Mobile: Eliminating the Need for a Dedicated Wir...

Recently uploaded (20)

PDF
keyrequirementskkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
PDF
Evaluating the Democratization of the Turkish Armed Forces from a Normative P...
PPTX
Lecture Notes Electrical Wiring System Components
PDF
July 2025 - Top 10 Read Articles in International Journal of Software Enginee...
PPTX
CYBER-CRIMES AND SECURITY A guide to understanding
PPTX
UNIT-1 - COAL BASED THERMAL POWER PLANTS
PDF
Enhancing Cyber Defense Against Zero-Day Attacks using Ensemble Neural Networks
PDF
PRIZ Academy - 9 Windows Thinking Where to Invest Today to Win Tomorrow.pdf
PPTX
additive manufacturing of ss316l using mig welding
PDF
R24 SURVEYING LAB MANUAL for civil enggi
PDF
PPT on Performance Review to get promotions
PPTX
bas. eng. economics group 4 presentation 1.pptx
PDF
Unit I ESSENTIAL OF DIGITAL MARKETING.pdf
PPTX
Safety Seminar civil to be ensured for safe working.
PPTX
web development for engineering and engineering
PDF
Model Code of Practice - Construction Work - 21102022 .pdf
PDF
TFEC-4-2020-Design-Guide-for-Timber-Roof-Trusses.pdf
PPTX
UNIT 4 Total Quality Management .pptx
PDF
BMEC211 - INTRODUCTION TO MECHATRONICS-1.pdf
PPTX
Construction Project Organization Group 2.pptx
keyrequirementskkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
Evaluating the Democratization of the Turkish Armed Forces from a Normative P...
Lecture Notes Electrical Wiring System Components
July 2025 - Top 10 Read Articles in International Journal of Software Enginee...
CYBER-CRIMES AND SECURITY A guide to understanding
UNIT-1 - COAL BASED THERMAL POWER PLANTS
Enhancing Cyber Defense Against Zero-Day Attacks using Ensemble Neural Networks
PRIZ Academy - 9 Windows Thinking Where to Invest Today to Win Tomorrow.pdf
additive manufacturing of ss316l using mig welding
R24 SURVEYING LAB MANUAL for civil enggi
PPT on Performance Review to get promotions
bas. eng. economics group 4 presentation 1.pptx
Unit I ESSENTIAL OF DIGITAL MARKETING.pdf
Safety Seminar civil to be ensured for safe working.
web development for engineering and engineering
Model Code of Practice - Construction Work - 21102022 .pdf
TFEC-4-2020-Design-Guide-for-Timber-Roof-Trusses.pdf
UNIT 4 Total Quality Management .pptx
BMEC211 - INTRODUCTION TO MECHATRONICS-1.pdf
Construction Project Organization Group 2.pptx

IRJET- Performance Comparison of Real-Time Garbage Collection in the Sun Java Real-Time Systems with Different Garbage Collection Techniques

  • 1. International Research Journal of Engineering and Technology (IRJET) e-ISSN: 2395-0056 Volume: 07 Issue: 01 | Jan 2020 www.irjet.net p-ISSN: 2395-0072 © 2020, IRJET | Impact Factor value: 7.34 | ISO 9001:2008 Certified Journal | Page 1039 Performance Comparison of Real-Time Garbage Collection in the Sun Java Real-Time Systems with Different Garbage Collection Techniques Amandeep kaur1, Balpreet kaur2, Rupinder kaur3 1,2,3Assistant Professor, Dept. of CSE, BBSBEC, Fatehgarh Sahib ---------------------------------------------------------------------***---------------------------------------------------------------------- Abstract - Garbage collectionperformancesvarywhen we use reference countingtechnique. Generational garbagecollection worst case allocation characteristics are different from reference counting. In this review paper, a performance comparison has been made using the defaultandtheproposed RTGC(Real time garbage collection) approach. Key Words: Real time garbage collection, Reference counting 1. INTRODUCTION Sun Java Real-Time System (Java RTS) is Sun's commercial implementation of the Real-Time Specification for Java (RTSJ), or JSR 1. Starting with Sun Java RTS 2.0, a new real-time garbage collector (RTGC), based on Henriksson's algorithm, is available. The garbage collector runs as one or more real- time threads (RTTs). These run at a priority that is lower than all instances of NoHeapRealtimeThread (NHRT) and that may be lower than some RTTs as well, so that critical threads may preempt the collector. In this way, critical threads are shielded from the effects of GC. By default, the garbage collector runs at its initial priority, which is below that of the noncritical real-time threads. But as memory grows short, the VM will boost or raise the priority of the collector to the maximum configuredpriority. 1.1 Thread distinction in java The important point about the RTGC provided with Java RTS is that it is fully concurrent, and it can thus be preempted at any time. There is no need to run the RTGC at the highest priority, and there is no stop-the-world phase, during which all the application's threads are suspended during GC. RTGC starts executing at its initial priority and is preempted by a high-priority thread. When that thread stops, the RTGC runs again but is again preempted. Finally, if the running threads are allocating memory and the remaining memory becomes low enough, the RTGC is boosted to its maximum priority, where it is preempted only by critical threads. Fig -1: thread distinction in java 1.2 Default RTGC using one and two CPUs On a multiprocessor, one CPU can be doing some GC work while an application thread is making progress on another CPU. In Figure 6, the critical NHRTs are running on a separate CPU and therefore do not pre-empt the RTGC. The RTGC runs to completion without its priority having to be boosted. Fig -2: default real time garbage collection in one CPU The RTGC considers that the criticality of an application's threads is based on the threads' respective priorities and ensures hard-real-time behavior only for real-time threads at the critical level, while trying to offer soft-real-time behavior for real-time threads below the critical level. This reduces the total overheadoftheRTGCandensuresthat the determinism is not affected by the addition of new low- priority application threads. This makes the configuration easier because there is no need to study the allocation
  • 2. International Research Journal of Engineering and Technology (IRJET) e-ISSN: 2395-0056 Volume: 07 Issue: 01 | Jan 2020 www.irjet.net p-ISSN: 2395-0072 © 2020, IRJET | Impact Factor value: 7.34 | ISO 9001:2008 Certified Journal | Page 1040 behavior of an application in its entirety in order to configure the RTGC. Fig -3: default real time garbage collection in two cpus 2. The proposed approach Java possesses many advantages for embedded system development, including fast productdeployment,portability, security, and a small memory footprint. As Java makes inroads into the marketforembeddedsystems,mucheffortis being invested in designing real-timegarbage collectors.The proposedgarbage-collectedmemorymodule,abitmap-based processor withstandardDRAMcellsisintroducedtoimprove the performance and predictability of dynamic memory management functions that include allocation, reference counting, and garbage collection. As a result, memory allocation can be done in constant time and sweeping can be performed in parallel by multiple modules. Thus, constant timesweeping is also achieved regardlessofheapsize.Thisis a major departure from the software counterparts where sweeping time depends largely on the size of the heap. In addition, the proposed design also supports limited-field reference counting, which has the advantage of distributing the processing cost throughout the execution. 3. Results: Performance comparison By doing reference counting operation in a coprocessor, the processing is done outside of the main processor. Moreover, the hardware cost of the proposed design is very modest (about 8,000 gates). Our studyhasshownthat3-bitreference counting can eliminate the need to invoke the garbage collector in all tested applications. Moreover, it also reduces the amount of memory usage by 77 percent. Fig -4: default real time garbage collection in two cpus REFERENCES 1. D.F. Bacon, P. Cheng, and V.T. Rajan, “A Real-Time Garbage Collector with Low Overhead and Consistent Utilization,” In Proceedings of the ACM Principles of Programming Languages (POPL 03), pp. 285-298, 2003. 2. Roger Henriksson. “Schedulinggarbagecollectionin embedded systems.” Phd thesis, Lund Institute of Technology, 1998. 3. Scott Nettles and James O’Toole.”Real-Time replication garbage collection. Pages 217-226.ACM Press, 1993. 4. Fridtjof Siebert.” Real –Time garbage collection in multi-threaded systems on a single processor”. 5. Fridtjof Siebert. Hard real-time garbage collection. Phd thesis, Universitat Karsruhe, 2002.