Measuring and improving the performance of a latency-sensitive Java real-time system
Loading...
URL
Journal Title
Journal ISSN
Volume Title
School of Science |
Master's thesis
Unless otherwise stated, all rights belong to the author. You may download, display and print this publication for Your own personal use. Commercial use is prohibited.
Authors
Date
2024-09-30
Department
Major/Subject
Security and Cloud Computing
Mcode
Degree programme
Master's Programme in Security and Cloud Computing
Language
en
Pages
84
Series
Abstract
This thesis investigates the performance challenges of Java-based real-time systems, with a specific focus on latency-sensitive environments such as game servers. Java, widely recognized for its portability and safety, presents unique challenges when used in real-time applications due to the inherent unpredictability introduced by its platform. Key features of the JVM, such as just-in-time compilation and garbage collection, can cause significant variability in execution times, making it difficult to meet the strict timing requirements essential for real-time performance. The study examines the impact of Java features on system latency and predictability through a combination of profiling tools, real-time monitoring, and controlled load testing. It also evaluates several optimization techniques, including garbage collection tuning, platform configuration adjustments, and programming techniques to ease just-in-time compilation. The findings reveal that while these optimizations can reduce latency and improve predictability to some extent, they do not fully eliminate the unpredictability associated with Java. The research highlights that particular care should be taken when implementing features that might conflict with the inner workings of the Java platform. The broader implications of this study indicate that for applications where real-time performance is critical, further refinement of platform configurations is almost a necessity, although the performance advantages are worth the effort.Description
Supervisor
Hellas, ArtoThesis advisor
Appuswamy, RajaAalto, Markus
Keywords
real-time, Java, JVM, GC, JIT, game server, tickrate, predictability