Technique de visualisation pour l’identification de l’usage excessif d’objets temporaires dans les traces d’exécution
Thèse ou mémoire
Résumé·s
De nos jours, les applications de grande taille sont développées à l’aide de nom-
breux cadres d’applications (frameworks) et intergiciels (middleware). L’utilisation ex-
cessive d’objets temporaires est un problème de performance commun à ces applications.
Ce problème est appelé “object churn”. Identifier et comprendre des sources d’“object
churn” est une tâche difficile et laborieuse, en dépit des récentes avancées dans les tech-
niques d’analyse automatiques.
Nous présentons une approche visuelle interactive conçue pour aider les développeurs
à explorer rapidement et intuitivement le comportement de leurs applications afin de
trouver les sources d’“object churn”. Nous avons implémenté cette technique dans Vasco,
une nouvelle plate-forme flexible. Vasco se concentre sur trois principaux axes de con-
ception. Premièrement, les données à visualiser sont récupérées dans les traces d’exécu-
tion et analysées afin de calculer et de garder seulement celles nécessaires à la recherche
des sources d’“object churn”. Ainsi, des programmes de grande taille peuvent être vi-
sualisés tout en gardant une représentation claire et compréhensible. Deuxièmement,
l’utilisation d’une représentation intuitive permet de minimiser l’effort cognitif requis
par la tâche de visualisation. Finalement, la fluidité des transitions et interactions permet
aux utilisateurs de garder des informations sur les actions accomplies. Nous démontrons
l’efficacité de l’approche par l’identification de sources d’“object churn” dans trois ap-
plications utilisant intensivement des cadres d’applications framework-intensive, inclu-
ant un système commercial. Nowadays, large framework-intensive programs are developed using many layers of
frameworks and middleware. Bloat, and particularly object churn, is a common per-
formance problem in framework-intensive applications. Object churn consists of an ex-
cessive use of temporary objects. Identifying and understanding sources of churn is a
difficult and labor-intensive task, despite recent advances in automated analysis tech-
niques.
We present an interactive visualization approach designed to help developers quickly
and intuitively explore the behavior of their application with respect to object churn. We
have implemented this technique in Vasco, a new flexible and scalable visualization
platform. Vasco follows three main design goals. Firstly, data is collected from execu-
tion traces. It is analyzed in order to calculate and keep only the data that is necessary
to locate sources of object churn. Therefore, large programs can be visualized while
keeping a clear and understandable view. Secondly, the use of an intuitive view allows
minimizing the cognitive effort required for the visualization task. Finally, the fluidity
of transitions and interactions allows users to mentally preserve the context throughout
their interactions. We demonstrate the effectiveness of the approach by identifying churn
in three framework-intensive applications, including a commercial system.
Ce document diffusé sur Papyrus est la propriété exclusive des titulaires des droits d'auteur et est protégé par la Loi sur le droit d'auteur (L.R.C. (1985), ch. C-42). Il peut être utilisé dans le cadre d'une utilisation équitable et non commerciale, à des fins d'étude privée ou de recherche, de critique ou de compte-rendu comme le prévoit la Loi. Pour toute autre utilisation, une autorisation écrite des titulaires des droits d'auteur sera nécessaire.