2017-02-28 2 views
0

J'ai essayé d'utiliser l'outil PIN pour capturer la trace mémoire. Mais, le site Web du PIN indique que les adresses incluent toutes les lectures et les écritures de la mémoire.Outil PIN de suivi de mémoire externe

Je voudrais capturer les adresses de mémoire externes générées par un programme. Ces adresses sont celles qui sont générées après les accès au cache et correspondent donc à l'adresse physique dans la DRAM.

Pouvez-vous me faire savoir si je peux capturer la trace d'adresse mémoire externe? Je voulais savoir si cela est déjà disponible et si oui, s'il vous plaît pointez-moi à la source.

je vis la question: Getting physical address in pin tool

Il dit à propos de la conversion du virtuel au physique. Mais, je veux obtenir la trace des adresses après l'accès au cache.

Répondre

1

La réponse courte est non. Tout comme n'importe quel autre logiciel, Pin ne peut pas dire si l'instruction load/store a frappé/manqué dans le cache ou non. Le meilleur que vous pouvez faire avec Pin Je pense est d'écrire un simulateur de cache (vous pouvez jeter un oeil à celui qui vient avec Pin - pin-x.y/source/tools/SimpleExamples/dcache.cpp) et enregistrer les accès (ie, les adresses) qui ont manqué dans le cache simulé . Cela ne sera pas exact pour plusieurs raisons, mais cela peut être utile selon vos besoins.

Ce question et answer discutent un point similaire d'ailleurs.