Methods, systems, and articles of manufacture consistent with the present
invention assist a programmer in the optimization of an application
program by displaying information about memory use in a manner useful to
the programmer. A programmer selects an application program that he wishes
to optimize. The application program is submitted to an instrumentation
process that inserts additional instructions into the code of the
application program so that, when executed, the instrumented code produces
an output file, called a trace output file. The trace output file contains
information about memory accesses. The trace output file is then submitted
to a second program, or visualizer, that visually displays the memory
accesses using a different visual effect for each type of memory access
operation. The visualizer may be run at different speeds, forwards or
backwards, paused, or may step through the memory accesses frame-by-frame.
This visual representation of memory accesses allows programmers to
recognize patterns of memory use that can be used to optimize the
application program.
De methodes, de systemen, en artikelen van vervaardiging de verenigbaar met de onderhavige uitvinding staan een programmeur in de optimalisering van een toepassingsprogramma door bij informatie over geheugengebruik op een manier te tonen nuttig aan de programmeur. Een programmeur selecteert een toepassingsprogramma dat hij wenst om te optimaliseren. Het toepassingsprogramma wordt voorgelegd aan een instrumentatieproces dat extra instructies in de code van het toepassingsprogramma zodat, wanneer uitgevoerd, de van instrumenten voorzien code een outputdossier uitvaardigt opneemt, genoemd een dossier van de spooroutput. Het dossier van de spooroutput bevat informatie over geheugentoegangen. Het dossier van de spooroutput wordt dan voorgelegd aan een tweede programma, of beeldscherm, dat visueel de geheugentoegangen gebruikend een verschillend visueel effect voor elk type van de verrichting van de geheugentoegang tonen. Het beeldscherm kan bij verschillende snelheden worden in werking gesteld, voorwaarts of achteruit, pauzeerde, of kan door het kader-door-kader van geheugentoegangen stappen. Deze visuele vertegenwoordiging van geheugentoegangen staat programmeurs toe om patronen van geheugengebruik te erkennen die kunnen worden gebruikt om het toepassingsprogramma te optimaliseren.