|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object avrora.sim.util.ProgramTimeProfiler
The ProgramProfiler
class implements a probe that can be used to profile pieces of the program
or the whole program. It maintains a simple array of long
that stores the cumulative cycles
consumed for each instruction in the program.
Counter
Nested Class Summary |
Nested classes inherited from class avrora.sim.Simulator.Probe |
Simulator.Probe.Empty |
Field Summary | |
long[] |
itime
The itime field stores the cumulative number of cycles consumed for each instruction in
the program. |
Program |
program
The program field stores a reference to the program being profiled. |
protected long |
timeBegan
|
Constructor Summary | |
ProgramTimeProfiler(Program p)
The constructor for the program profiler constructs the required internal state to store the cycle counts of each instruction. |
Method Summary | |
void |
fireAfter(State state,
int pc)
The fireAfter() method is called after the probed instruction executes. |
void |
fireBefore(State state,
int pc)
The fireBefore() method is called before the probed instruction executes. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
public final Program program
program
field stores a reference to the program being profiled.
public final long[] itime
itime
field stores the cumulative number of cycles consumed for each instruction in
the program. It is indexed by byte addresses. Thus itime[addr]
corresponds to the time for
the instruction at program.getInstr(addr)
.
protected long timeBegan
Constructor Detail |
public ProgramTimeProfiler(Program p)
p
- the program to profileMethod Detail |
public void fireBefore(State state, int pc)
fireBefore()
method is called before the probed instruction executes. In the
implementation of the program profiler, it simply remembers the timestamp at the beginning of the
instruction.
fireBefore
in interface Simulator.Probe
state
- the state of the simulationpc
- the address at which this instruction residespublic void fireAfter(State state, int pc)
fireAfter()
method is called after the probed instruction executes. In the
implementation of the profiler, it counts the number of cycles consumed in executing this instruction
and adds it to the count for this instruction.
fireAfter
in interface Simulator.Probe
state
- the state of the simulationpc
- the address at which this instruction resides
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |