Ouvrir l'outil Mémoire
L'outil Mémoire n'est pas activé par défaut. Pour l'activer, il faut ouvrir et cocher la case "Mémoire" dans la catégorie "Outils de développement pas défaut" :
Capturer un instantané
Pour capturer un instantané de la heap il faut cliquer sur le bouton "Capturer un instantané" ou sur l'icône en forme d'appareil photo, en haut à gauche :
L'instantané, occupera une large partie du panneau de droite. Sur la gauche, il y aura une liste des instantanés capturée. Ce panneau inclu le timestamp, la taille et les actions supprimer/enregistrer :
Supprimer un instantané
Pour supprimer un instantané, il suffit de cliquer sur l'icône "X" :
Sauvegarder et charger des instantanés
Fermer l'outil, supprimera tout les instantanés non sauvegardés. Pour sauvegarder un instantané, il suffit de cliquer sur "Enregistrer" :
Il vous sera ensuite demandé un nom et un emplacement.
Pour charger un instantané, il suffit de cliquer sur "Importer..." :
Il suffit ensuite de sélectionner un instantané précédemment enregistré sur votre disque.
Comparer des instantanés
À partir de Firefox 45, il est possible de comparer deux instantanés. Le diff affiche les endroits ou de la mémoire a été allouée, et où de la mémoire a été libéré entre les deux instantanés.
Pour créer une diff, il faut cliquer sur l'icône en forme de diagramme de Venn en haut à gauche (note: avant Firefox 47, l'icône ressemblait à un "+/-") :
Il faut ensuite sélectionner l'instantané qui sert de base de comparaison puis l'instantané à comparer. L'outil affiche alors les différences entre les deux instantanés :
Lorsque d'une comparaison, il n'est pas possible d'utiliser la vue "Dominants" ou la vue "Carte proportionnelle.
Enregistrer les allocations stacks
L'outil Mémoire permet de savoir exactement ou dans le code la mémoire est allouée. Cependant, enregistrer ces informations ont un cout en performances. Il faut donc activer manuellement l'enregistrement avant de faire les allocations mémoires. Pour cela, il suffit de cocher la case "Enregistrer les pilles d'allocations" :