scripts.estimate_energy.EstimateEnergy#

class EstimateEnergy(e_mac: float = 4.6, e_ac: float = 0.9, delta_time: int = 10, quiet=True)[source]#

Bases: object

Parameters:
  • e_mac (float, optional) – energy cost of MAC operation in pJ, defaults to 4.6

  • e_ac (float, optional) – energy cost of AC operation in pJ, defaults to 0.9

  • delta_time (int, optional) – The number of the last steps used to estimate energy consumption. This is necessary to account for the network’s operation only in its steady state. Defaults to 10

  • quiet (bool, optional) – Print detailed information for each example, defaults to false

Methods

compare(model: ModelGenerator, flops_list: List[float], activity_list: List[float], ann_encode: float)[source]#
compute_activity(spikes: Tensor)[source]#
compute_flops(tensor: Tensor, conv: Conv2d)[source]#
estimate_ann(model: ModelGenerator, data: Tensor)[source]#
estimate_snn(model: ModelGenerator, input: Tensor)[source]#
print_info(layers, ann_flops, snn_flops, snn_energy, ann_energy, activity)[source]#
process(det: Detector, batch: Tensor)[source]#