Thèse soutenue

Profilage mémoire d’applications OCaml

FR  |  
EN
Auteur / Autrice : Çağdaş Bozman
Direction : Michel Mauny
Type : Thèse de doctorat
Discipline(s) : Informatique
Date : Soutenance en 2014
Etablissement(s) : Palaiseau, Ecole polytechnique

Mots clés

FR

Mots clés contrôlés

Résumé

FR  |  
EN

La récupération automatique de la mémoire est une caractéristique commune des langages de programmation. Elle offre certes au programmeur des garanties de fiabilité, mais, en éloignant ce dernier des détails de la gestion de la mémoire, elle rend plus difficile la compréhension et, a fortiori, la maîtrise des allocations de mémoire. OCaml, langage multi-paradigme statiquement typé développé à l'INRIA. Utilise un ramasse-miettes (GC) en charge du recyclage automatique de la mémoire et ses utilisateurs réclament des outils d'analyse du comportement mémoire de leurs programmes. Dans le cadre de cette thèse, nous avons étudié d'une façon générale le problème de comportement mémoire des applications écrites en OCaml et plus précisément le cas des fuites mémoires, c'est-à-dire des blocs alloués et non recyclés bien qu'ils soient devenus inutiles au calcul. Cette thèse présente, après un rappel des méthodes connues d'analyse du comportement mémoire des applications, une méthode d'instrumentation de la chaîne de compilation et de la bibliothèque d'exécution des programmes. Cette instrumentation est à la base d'outils que nous avons conçus et mis en oeuvre, et qui permettent de catégoriser, visualiser et localiser les allocations de mémoire. Les résultats et outils présentés dans cette thèse ont été obtenus dans le cadre d'une collaboration entre l'ENSTA-ParisTech, l'INRIA et la société OCamlPro SAS, et ont été utilisés avec succès dans un contexte industriel.