Fabien Reumont-Locke, Naser Ezzati-Jivan et Michel Dagenais
Article de revue (2019)
Document en libre accès dans PolyPublie |
|
Libre accès au plein texte de ce document Version finale avant publication Conditions d'utilisation: Tous droits réservés Télécharger (939kB) |
Abstract
Tracing provides a low-impact, high-resolution way to observe the execution of a system. As the amount of parallelism in traced systems increases, so does the data generated by the trace. Most trace analysis tools work in a single thread, which hinders their performance as the scale of data increases. In this paper, we explore parallelization as an approach to speedup system trace analysis. We propose a solution which uses the inherent aspects of the CTF trace format to create balanced and parallelizable workloads. Our solution takes into account key factors of parallelization, such as good load balancing, low synchronization overhead and an efficient resolution of data dependencies. We also propose an algorithm to detect and resolve data dependencies during trace analysis, with minimal locking and synchronization. Using this approach, we implement three different trace analysis programs: event counting, CPU usage analysis and I/O usage analysis, to assess the scalability in terms of parallel efficiency. The parallel implementations achieve parallel efficiency above 56% with 32 cores, which translates to a speedup of 18 times the serial speed, when running the parallel trace analyses and using trace data stored on consumer-grade solid state storage devices. We also show the scalability and potential of our approach by measuring the effect of future improvements to trace decoding on parallel efficiency.
Mots clés
tracing; trace analysis; parallel computing
Sujet(s): |
2700 Technologie de l'information > 2700 Technologie de l'information 2700 Technologie de l'information > 2706 Génie logiciel 2700 Technologie de l'information > 2715 Optimisation |
---|---|
Département: | Département de génie informatique et génie logiciel |
Organismes subventionnaires: | CRSNG/NSERC |
Numéro de subvention: | CRDPJ468687-14 |
URL de PolyPublie: | https://publications.polymtl.ca/4212/ |
Titre de la revue: | International Journal of Parallel Programming (vol. 47, no 5-6) |
Maison d'édition: | Springer |
DOI: | 10.1007/s10766-019-00631-4 |
URL officielle: | https://doi.org/10.1007/s10766-019-00631-4 |
Date du dépôt: | 09 mars 2020 12:44 |
Dernière modification: | 26 sept. 2024 10:45 |
Citer en APA 7: | Reumont-Locke, F., Ezzati-Jivan, N., & Dagenais, M. (2019). Efficient methods for trace analysis parallelization. International Journal of Parallel Programming, 47(5-6), 951-972. https://doi.org/10.1007/s10766-019-00631-4 |
---|---|
Statistiques
Total des téléchargements à partir de PolyPublie
Téléchargements par année
Provenance des téléchargements
Dimensions