-
Notifications
You must be signed in to change notification settings - Fork 12
Energy
###Events###
This table describes the events that are measured in topaz. Finding a zero value for a specific event in simulation results can have two different meanings. In some routers (the less), event count is not fully implemented, we are actively working to complete event count for all routers and we would appreciate the report of any bug found in event count. Some events are associated to components not present in every router, being this the only reason to find a zero value in other cases.
Event | Description |
---|---|
Buffer Writes | A flit is stored in an input buffer |
Buffer Reads | A flit is read from the buffer where it was stored |
VC Arbitrations | Input port arbiter selects one flit among the Virtual channels of each physical port |
SW Arbitrations | Output port arbiter select a winner from the input ports requesting it |
SW Traversal | A flit traverses the crossbar |
Link Traversal | A flit traverses the link between two neighbor routers |
Router Bypass | Router traversals that do not require some actions ( such as buffer read/write) |
IS Traversal | a flit traverses Input Stage (Rotary router) |
OS Traversal | a flit traverses Output Stage (Rotary router) |
MP Traversal | a flit traverses a Multiport Buffer (Rotary router) |
###Process###
The typical process followed to extract energy numbers involves a few steps described here.
TOPAZ Configuration: Choose the router configuration desired through all the parameters in router.sgml.
Collect event results: After simulating a certain amount of cycles, your trace or an application through GEMS, collect the values obtained for every event.
ORION energy/event: Edit the SIM_port.h file in ORION and try to mimic the configuration simulated in TOPAZ. Choose the appropriate frequency and technology parameters for your case. A small correspondence between ORION and TOPAZ parameters to simulate similar structures is pending.
Total Energy: The total energy consumed by the network must be calculated "manually". Scripting languages can be useful to obtain final results here.