|
ZigZag - Deep Learning Hardware Design Space Exploration
This repository presents the novel version of our tried-and-tested hardware Architecture-Mapping Design Space Exploration (DSE) Framework for Deep Learning (DL) accelerators. ZigZag bridges the gap between algorithmic DL decisions and their acceleration cost on specialized accelerators through a fast and accurate hardware cost estimation.
|
Functions | |
| def | shorten_onnx_layer_name (str name) |
| Names generated in the ONNX format are quite long (e.g. More... | |
| def | get_mem_energy_single_op (CostModelEvaluation cme, LayerOperand op, int mem_level) |
| def | get_energy_array (list[CostModelEvaluation] cmes, list[LayerOperand] all_ops, list[MemoryInstance] all_mems) |
| Convert the given list of cmes to a numpy array with the energy per layer, memory level, operand and data direction. More... | |
| def | get_latency_array (list[CostModelEvaluation] cmes) |
| def | bar_plot_cost_model_evaluations_breakdown (list[CostModelEvaluationABC] cmes, str save_path) |
Variables | |
| int | SMALLEST_SIZE = 10 |
| int | SMALLER_SIZE = 12 |
| int | SMALL_SIZE = 14 |
| int | MEDIUM_SIZE = 16 |
| int | BIG_SIZE = 18 |
| int | BIGGER_SIZE = 20 |
| size | |
| titlesize | |
| labelsize | |
| fontsize | |
| int | BAR_WIDTH = 1 |
| int | BAR_SPACING = 0 |
| int | GROUP_SPACING = 1 |
| def zigzag.visualization.results.plot_cme.bar_plot_cost_model_evaluations_breakdown | ( | list[CostModelEvaluationABC] | cmes, |
| str | save_path | ||
| ) |


| def zigzag.visualization.results.plot_cme.get_energy_array | ( | list[CostModelEvaluation] | cmes, |
| list[LayerOperand] | all_ops, | ||
| list[MemoryInstance] | all_mems | ||
| ) |
Convert the given list of cmes to a numpy array with the energy per layer, memory level, operand and data direction.
Output shape: (cmes, all_mems, all_ops, data_directions)

| def zigzag.visualization.results.plot_cme.get_latency_array | ( | list[CostModelEvaluation] | cmes | ) |

| def zigzag.visualization.results.plot_cme.get_mem_energy_single_op | ( | CostModelEvaluation | cme, |
| LayerOperand | op, | ||
| int | mem_level | ||
| ) |
| def zigzag.visualization.results.plot_cme.shorten_onnx_layer_name | ( | str | name | ) |
Names generated in the ONNX format are quite long (e.g.
layer1/layer1.0/conv2/Conv). This function extracts the most informative part (conv2/Conv in this case)
| int BAR_SPACING = 0 |
| int BAR_WIDTH = 1 |
| int BIG_SIZE = 18 |
| int BIGGER_SIZE = 20 |
| fontsize |
| int GROUP_SPACING = 1 |
| labelsize |
| int MEDIUM_SIZE = 16 |
| size |
| int SMALL_SIZE = 14 |
| int SMALLER_SIZE = 12 |
| int SMALLEST_SIZE = 10 |
| titlesize |