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.
|
Per LayerOperand, store the Relevant, Irrelevant LayerDims, and which LayerDims are Partially Relevant to each other. More...
Public Member Functions | |
def | __init__ (self) |
list[LayerDim] | get_r_layer_dims (self, LayerOperand layer_operand) |
list[LayerDim] | get_ir_layer_dims (self, LayerOperand layer_operand) |
PrLoop | get_pr_layer_dims (self, LayerOperand layer_operand) |
list[LayerDim] | get_r_or_pr_layer_dims (self, LayerOperand layer_operand) |
"LoopRelevancyInfo" | create_pr_decoupled_relevancy_info (self) |
remove the pr loop dict, and put the pr-related data dimension (e.g. More... | |
Static Public Member Functions | |
"LoopRelevancyInfo" | extract_relevancy_info (LayerEquation equation, LayerDimSizes layer_dim_sizes, PrLoop pr_loop, LoopList pr_loop_list) |
Public Attributes | |
orig_pr_loop | |
Per LayerOperand, store the Relevant, Irrelevant LayerDims, and which LayerDims are Partially Relevant to each other.
def __init__ | ( | self | ) |
"LoopRelevancyInfo" create_pr_decoupled_relevancy_info | ( | self | ) |
remove the pr loop dict, and put the pr-related data dimension (e.g.
IX and IY) to r and ir dict with "r" and "ir" tags
extract_relevancy_info
. Kind of messy
|
static |
list[LayerDim] get_ir_layer_dims | ( | self, | |
LayerOperand | layer_operand | ||
) |
PrLoop get_pr_layer_dims | ( | self, | |
LayerOperand | layer_operand | ||
) |
list[LayerDim] get_r_layer_dims | ( | self, | |
LayerOperand | layer_operand | ||
) |
list[LayerDim] get_r_or_pr_layer_dims | ( | self, | |
LayerOperand | layer_operand | ||
) |
orig_pr_loop |