Simulation Results

NeuraSim performance metrics

Performance Metric

Value

Description

Experiment Name Name of the experiment
Compute Units Number of NeuraCores and NeuraMems in each row and column of the mesh
Frequency Operating frequency of the NeuraChip
Peak Performance Peak FLOPs
SpGEMM Performance Sparse Matrix Multiplication average performance
On Chip Memory On chip memory size
Off Chip Memory HBM size
Technology Synthesizing technology
Chip Area Total chip area of NeuraChip
Area Efficiency Area efficiency of NeuraChip accelerator

Simulation Results

NeuraSim performance metrics

Performance Metric

Value

Description

Total Cycles Total number of cycles in the experiment
Execution Time Time taken by accelerator to complete the workload
Simulator Wall Time Total wall time required to complete the simulation
Average Simulation Speed (MCPS) Mean cycles per second in the simulation
Total Memory Requests Total memory requests made
Total Memory Responses Total memory responses received
Total Hash Requests Total hash requests made
Total Hash Responses Total hash responses received

NeuraCore Busy Cycles

Percentage of total cycles that the NeuraCore spent computing (Not Stalled).

Click here to enlarge plot

NeuraMem Busy Cycles

Percentage of total cycles that the NeuraMem spent computing (Not Stalled). This includes TAG comparisons in HashPad memory as well as DATA accumulations.

Click here to enlarge plot

Register File Cycles Spent Histogram

A higher value indicates instructions are not being computed in NeuraCore as they await accumulation in NeuraMem units

Click here to enlarge plot

NeuraRouter Busy Cycles

Percentage of total cycles that the NeuraRouter spent computing (Transferring data from one port to another).

Click here to enlarge plot

Memory Controller Access Profile

Y axis represents the memory address of read and write transaction, X axis is the cycle number at which the transaction was made.

Yellow = Write transactions, Blue = Read transactions.

Click here to enlarge plot

Connections Busy Cycles

Percentage of total cycles that the connection (link between NeuraCore/NeuraMem and NeuraRouter) spent computing (Transferring data from one Core to Router or Memory to Router).

Click here to enlarge plot

Writer Busy Cycles

Percentage of total cycles that the Writer spent computing (Transferring data from NeuraMem HashPads to DRAM memory banks).

Click here to enlarge plot

Memory Controller Stall Profile

Total cycles that the Memory Controller Channels and Writers were stalled, awaiting a READ or WRITE memory transaction.

Click here to enlarge plot

Writer Iterative Profile (Writer Pressure)

This is a continuous interval plot, where X axis represents the cycle number and Y axis represents the percentage of cycles the Writer was busy. Over 100% value indicates the writer buffers are overflowing.

Click here to enlarge plot

Average In Flight Memory Transactions per Cycle (Memory Pressure)

This is a continuous interval plot, where X axis represents the cycle number and Y axis represents the average number of memory transactions in flight. This metric is a good indicator of memory pressure.

Click here to enlarge plot

NeuraCore Iterative Profile (Individual NeuraCore Pressure)

This is a continuous interval plot, where X axis represents the cycle number and Y axis represents the percentage of cycles the NeuraCore was busy. Over 100% value indicates the NeuraCore buffers are overflowing.

Click here to enlarge plot

NeuraMem Iterative Profile (Individual NeuraMem Pressure)

This is a continuous interval plot, where X axis represents the cycle number and Y axis represents the percentage of cycles the NeuraMem was busy. Over 100% value indicates the NeuraMem buffers are overflowing.

Click here to enlarge plot

NeuraRouter Iterative Profile (Individual NeuraRouter Pressure)

This is a continuous interval plot, where X axis represents the cycle number and Y axis represents the percentage of cycles the NeuraRouter was busy. Over 100% value indicates the NeuraRouter buffers are overflowing.

Click here to enlarge plot

Memory Controller Iterative Profile (Individual Memory Controller Pressure)

This is a continuous interval plot, where X axis represents the cycle number and Y axis represents the percentage of cycles the Memory Controller was busy. Over 100% value indicates the Memory Controller buffers are overflowing.

Click here to enlarge plot

Made with by Kaustubh Shivdikar Patent Pending