Continuously Measuring Critical Section Pressure with the Free Lunch Profiler - Inria - Institut national de recherche en sciences et technologies du numérique Access content directly
Reports (Research Report) Year : 2014

Continuously Measuring Critical Section Pressure with the Free Lunch Profiler

Abstract

Today, Java is regularly used to implement large multi-threaded server-class ap- plications, whose scalability could be hampered by the execution of critical sections. Profiling is needed to identify critical sections that are problematic. However, profiling such applications is challenging, due to their long running times and the range of possible runtime conditions. We propose Free Lunch, a new profiler designed to identify locks and critical sections that hamper scalability. Free Lunch is designed around a new metric, critical section pressure, and can be used in-vivo, while the application is run by end-users. Using Free Lunch, we have identified a contention phase in the distributed Cassandra NoSQL database and in several applications from the DaCapo benchmark suite. On the latter, we were able to improve the performance of the Xalan benchmark by 15%. In an evaluation on over thirty applications, we found that the overhead of Free Lunch is never greater than 6%.
Aujourd'hui, Java est régulièrement utilisé pour implémenter des applications fortement multi-threadées de classe serveur dont le passage à l'échelle pourrait être freiné par l'exécution des sections critiques. Le profilage est nécessaire pour identifier les sections critiques qui posent problème. Cependant, le profilage de telles applications est difficile à cause de leur longue durée d'exécution et de l'étendue des conditions d'exécutions possibles. Nous présentons Free Lunch, un nouveau profileur conçu pour identifier les verrous et les sections critiques qui freinent le passage à l'échelle. Free Lunch est conçu autour d'une nouvelle métrique appelée critical section pressure et peut être utilisé in-vivo pendant que l'application est exécutée par les utilisateurs finaux. En utilisant Free Lunch, nous avons identifé une phase de contention dans la base de don- nées distribuée NoSQL Cassandra ainsi que dans plusieurs applications provenant de la suite d'applications DaCapo. Dans cette dernière, nous avons été capable d'améliorer les perfor- mances de l'application Xalan de 15%. Parmi une évaluation de plus de 30 applications, nous avons trouvé que le surcoût d'exécution de Free Lunch n'est jamais plus important que 6%.
Fichier principal
Vignette du fichier
RR-8486.pdf (673.39 Ko) Télécharger le fichier
Origin Files produced by the author(s)
Loading...

Dates and versions

hal-00957154 , version 1 (09-03-2014)

Identifiers

  • HAL Id : hal-00957154 , version 1

Cite

Florian David, Gaël Thomas, Julia Lawall, Gilles Muller. Continuously Measuring Critical Section Pressure with the Free Lunch Profiler. [Research Report] RR-8486, Inria Whisper; INRIA. 2014, pp.24. ⟨hal-00957154⟩
259 View
509 Download

Share

Gmail Mastodon Facebook X LinkedIn More