hls4ml.model.optimizer.passes package¶
Submodules¶
hls4ml.model.optimizer.passes.bn_fuse module¶
-
class
hls4ml.model.optimizer.passes.bn_fuse.FuseBatchNormalization¶ Bases:
hls4ml.model.optimizer.optimizer.OptimizerPass-
match(node)¶
-
transform(model, node)¶
-
hls4ml.model.optimizer.passes.bn_quant module¶
-
class
hls4ml.model.optimizer.passes.bn_quant.BatchNormalizationQuantizedTanh(model, name, attributes, inputs, outputs=None)¶ Bases:
hls4ml.model.hls_layers.LayerMerged Batch Normalization and quantized (binary or ternary) Tanh layer. The mean, variance, beta, gamma parameters are folded into the threshold(s) at which the sign of the input flips after the quantized (binary or ternary) Tanh activation.
-
config_cpp()¶
-
function_cpp()¶
-
initialize()¶
-
-
class
hls4ml.model.optimizer.passes.bn_quant.MergeBatchNormAndQuantizedTanh¶ Bases:
hls4ml.model.optimizer.optimizer.OptimizerPass-
match(node)¶
-
transform(model, node)¶
-
-
class
hls4ml.model.optimizer.passes.bn_quant.QuantizeDenseOutput¶ Bases:
hls4ml.model.optimizer.optimizer.OptimizerPass-
match(node)¶
-
transform(model, node)¶
-
hls4ml.model.optimizer.passes.clone module¶
-
class
hls4ml.model.optimizer.passes.clone.Clone(model, name, attributes, inputs, outputs=None)¶ Bases:
hls4ml.model.hls_layers.LayerInserted after the layer whose output is used more than once.
-
config_cpp()¶
-
function_cpp()¶
-
initialize()¶
-
-
class
hls4ml.model.optimizer.passes.clone.CloneOutput¶ Bases:
hls4ml.model.optimizer.optimizer.OptimizerPassClones streams that are used multiple times
-
match(node)¶
-
transform(model, node)¶
-
hls4ml.model.optimizer.passes.conv_same_pad module¶
-
class
hls4ml.model.optimizer.passes.conv_same_pad.InsertZeroPaddingBeforeConv1D¶ Bases:
hls4ml.model.optimizer.optimizer.OptimizerPass-
match(node)¶
-
transform(model, node)¶
-
-
class
hls4ml.model.optimizer.passes.conv_same_pad.InsertZeroPaddingBeforeConv2D¶ Bases:
hls4ml.model.optimizer.optimizer.OptimizerPass-
match(node)¶
-
transform(model, node)¶
-
hls4ml.model.optimizer.passes.fuse_biasadd module¶
-
class
hls4ml.model.optimizer.passes.fuse_biasadd.FuseBiasAdd¶ Bases:
hls4ml.model.optimizer.optimizer.OptimizerPassFuses BiasAdd into Dense/Conv2D layer (common in TF models).
-
match(node)¶
-
transform(model, node)¶
-
hls4ml.model.optimizer.passes.nop module¶
-
class
hls4ml.model.optimizer.passes.nop.EliminateLinearActivation¶ Bases:
hls4ml.model.optimizer.optimizer.OptimizerPass-
match(node)¶
-
transform(model, node)¶
-
hls4ml.model.optimizer.passes.pointwise module¶
-
class
hls4ml.model.optimizer.passes.pointwise.OptimizePointwiseConv¶ Bases:
hls4ml.model.optimizer.optimizer.OptimizerPass-
match(node)¶
-
transform(model, node)¶
-
-
class
hls4ml.model.optimizer.passes.pointwise.PointwiseConv1D(model, name, attributes, inputs, outputs=None)¶ Bases:
hls4ml.model.hls_layers.Conv1DOptimized Conv1D implementation for 1x1 kernels.
-
class
hls4ml.model.optimizer.passes.pointwise.PointwiseConv2D(model, name, attributes, inputs, outputs=None)¶ Bases:
hls4ml.model.hls_layers.Conv2DOptimized Conv2D implementation for 1x1 kernels.
hls4ml.model.optimizer.passes.qkeras module¶
hls4ml.model.optimizer.passes.repack_stream module¶
-
class
hls4ml.model.optimizer.passes.repack_stream.Repack(model, name, attributes, inputs, outputs=None)¶ Bases:
hls4ml.model.hls_layers.LayerInserted between layers with different packing factors.
-
config_cpp()¶
-
function_cpp()¶
-
initialize()¶
-
-
class
hls4ml.model.optimizer.passes.repack_stream.ReshapeStream¶ Bases:
hls4ml.model.optimizer.optimizer.OptimizerPassRepacks stream for Reshape layer
-
match(node)¶
-
transform(model, node)¶
-