hls4ml.model package¶
Subpackages¶
- hls4ml.model.optimizer package
- Subpackages
- hls4ml.model.optimizer.passes package
- Submodules
- hls4ml.model.optimizer.passes.bn_fuse module
- hls4ml.model.optimizer.passes.bn_quant module
- hls4ml.model.optimizer.passes.clone module
- hls4ml.model.optimizer.passes.conv_same_pad module
- hls4ml.model.optimizer.passes.fuse_biasadd module
- hls4ml.model.optimizer.passes.nop module
- hls4ml.model.optimizer.passes.pointwise module
- hls4ml.model.optimizer.passes.qkeras module
- hls4ml.model.optimizer.passes.repack_stream module
- Module contents
- hls4ml.model.optimizer.passes package
- Submodules
- hls4ml.model.optimizer.optimizer module
- Module contents
- Subpackages
Submodules¶
hls4ml.model.hls_layers module¶
-
class
hls4ml.model.hls_layers.
Activation
(model, name, attributes, inputs, outputs=None)¶ Bases:
hls4ml.model.hls_layers.Layer
-
config_cpp
()¶
-
function_cpp
()¶
-
initialize
()¶
-
-
class
hls4ml.model.hls_layers.
ArrayVariable
(shape, dim_names, var_name='layer{index}', type_name='layer{index}_t', precision=None, pragma='partition', **kwargs)¶ Bases:
hls4ml.model.hls_layers.Variable
-
definition_cpp
()¶
-
get_shape
()¶
-
size
()¶
-
size_cpp
()¶
-
-
class
hls4ml.model.hls_layers.
BatchNormalization
(model, name, attributes, inputs, outputs=None)¶ Bases:
hls4ml.model.hls_layers.Layer
-
config_cpp
()¶
-
function_cpp
()¶
-
initialize
()¶
-
-
class
hls4ml.model.hls_layers.
BiasAdd
(model, name, attributes, inputs, outputs=None)¶ Bases:
hls4ml.model.hls_layers.Merge
-
config_cpp
()¶
-
function_cpp
()¶
-
initialize
()¶
-
-
class
hls4ml.model.hls_layers.
CompressedType
(name, precision, index_precision, **kwargs)¶ Bases:
hls4ml.model.hls_layers.HLSType
-
definition_cpp
()¶
-
-
class
hls4ml.model.hls_layers.
CompressedWeightVariable
(var_name, type_name, precision, data, reuse_factor, quantizer=None, **kwargs)¶ Bases:
hls4ml.model.hls_layers.WeightVariable
-
next
()¶
-
-
class
hls4ml.model.hls_layers.
Concatenate
(model, name, attributes, inputs, outputs=None)¶ Bases:
hls4ml.model.hls_layers.Merge
-
config_cpp
()¶
-
initialize
()¶
-
-
class
hls4ml.model.hls_layers.
Conv1D
(model, name, attributes, inputs, outputs=None)¶ Bases:
hls4ml.model.hls_layers.Layer
-
config_cpp
()¶
-
function_cpp
()¶
-
initialize
()¶
-
-
class
hls4ml.model.hls_layers.
Conv2D
(model, name, attributes, inputs, outputs=None)¶ Bases:
hls4ml.model.hls_layers.Layer
-
config_cpp
()¶
-
function_cpp
()¶
-
initialize
()¶
-
-
class
hls4ml.model.hls_layers.
Dense
(model, name, attributes, inputs, outputs=None)¶ Bases:
hls4ml.model.hls_layers.Layer
-
config_cpp
()¶
-
function_cpp
()¶
-
initialize
()¶
-
-
class
hls4ml.model.hls_layers.
DepthwiseConv2D
(model, name, attributes, inputs, outputs=None)¶ Bases:
hls4ml.model.hls_layers.Conv2D
-
initialize
()¶
-
-
class
hls4ml.model.hls_layers.
Dot
(model, name, attributes, inputs, outputs=None)¶ Bases:
hls4ml.model.hls_layers.Merge
-
config_cpp
()¶
-
initialize
()¶
-
-
class
hls4ml.model.hls_layers.
ExponentPrecisionType
(width=16, signed=True)¶ Bases:
hls4ml.model.hls_layers.IntegerPrecisionType
Convenience class to differentiate ‘regular’ integers from those which represent exponents, for QKeras po2 quantizers, for example.
-
class
hls4ml.model.hls_layers.
ExponentType
(name, precision, **kwargs)¶ Bases:
hls4ml.model.hls_layers.HLSType
-
definition_cpp
()¶
-
-
class
hls4ml.model.hls_layers.
ExponentWeightVariable
(var_name, type_name, precision, data, quantizer, **kwargs)¶ Bases:
hls4ml.model.hls_layers.WeightVariable
-
next
()¶
-
-
class
hls4ml.model.hls_layers.
FixedPrecisionType
(width=16, integer=6, signed=True, rounding_mode=None, saturation_mode=None, saturation_bits=None)¶ Bases:
object
-
class
hls4ml.model.hls_layers.
GarNet
(model, name, attributes, inputs, outputs=None)¶ Bases:
hls4ml.model.hls_layers.Layer
-
config_cpp
()¶
-
function_cpp
()¶
-
initialize
()¶
-
ref_impl
= False¶
-
-
class
hls4ml.model.hls_layers.
GarNetStack
(model, name, attributes, inputs, outputs=None)¶
-
class
hls4ml.model.hls_layers.
GlobalPooling1D
(model, name, attributes, inputs, outputs=None)¶ Bases:
hls4ml.model.hls_layers.Layer
-
config_cpp
()¶
-
function_cpp
()¶
-
initialize
()¶
-
-
class
hls4ml.model.hls_layers.
GlobalPooling2D
(model, name, attributes, inputs, outputs=None)¶ Bases:
hls4ml.model.hls_layers.Layer
-
config_cpp
()¶
-
function_cpp
()¶
-
initialize
()¶
-
-
class
hls4ml.model.hls_layers.
InplaceVariable
(shape, dim_names, proxy, **kwargs)¶ Bases:
object
-
definition_cpp
()¶
-
get_shape
()¶
-
size_cpp
()¶
-
-
class
hls4ml.model.hls_layers.
Input
(model, name, attributes, inputs, outputs=None)¶ Bases:
hls4ml.model.hls_layers.Layer
-
config_cpp
()¶
-
function_cpp
()¶
-
initialize
()¶
-
-
class
hls4ml.model.hls_layers.
IntegerPrecisionType
(width=16, signed=True)¶ Bases:
object
-
class
hls4ml.model.hls_layers.
Layer
(model, name, attributes, inputs, outputs=None)¶ Bases:
object
-
add_bias
(quantizer=None)¶
-
add_output_variable
(shape, dim_names, out_name=None, var_name='layer{index}_out', type_name='layer{index}_t', precision=None, pragma='auto')¶
-
add_weights
(quantizer=None, compression=False)¶
-
add_weights_variable
(name, var_name=None, type_name=None, precision=None, data=None, quantizer=None, compression=False)¶
-
config_cpp
()¶
-
function_cpp
()¶
-
get_attr
(key, default=None)¶
-
get_input_node
(input_name=None)¶
-
get_input_variable
(input_name=None)¶
-
get_layer_precision
()¶
-
get_numbers_cpp
()¶
-
get_output_nodes
(output_name=None)¶
-
get_output_variable
(output_name=None)¶
-
get_variables
()¶
-
get_weights
(var_name=None)¶
-
initialize
()¶
-
make_array_variable
(shape, dim_names, var_name='layer{index}_out', type_name='layer{index}_t', precision=None, pragma='auto')¶
-
make_stream_variable
(shape, dim_names, var_name='layer{index}_out', type_name='layer{index}_t', precision=None, depth=0)¶
-
precision_cpp
()¶
-
set_attr
(key, value)¶
-
-
class
hls4ml.model.hls_layers.
Merge
(model, name, attributes, inputs, outputs=None)¶ Bases:
hls4ml.model.hls_layers.Layer
-
config_cpp
()¶
-
function_cpp
()¶
-
initialize
()¶
-
-
class
hls4ml.model.hls_layers.
PReLU
(model, name, attributes, inputs, outputs=None)¶ Bases:
hls4ml.model.hls_layers.Activation
-
function_cpp
()¶
-
initialize
()¶
-
-
class
hls4ml.model.hls_layers.
PackedType
(name, precision, n_elem, n_pack, **kwargs)¶ Bases:
hls4ml.model.hls_layers.HLSType
-
definition_cpp
()¶
-
-
class
hls4ml.model.hls_layers.
ParametrizedActivation
(model, name, attributes, inputs, outputs=None)¶ Bases:
hls4ml.model.hls_layers.Activation
-
function_cpp
()¶
-
-
class
hls4ml.model.hls_layers.
Pooling1D
(model, name, attributes, inputs, outputs=None)¶ Bases:
hls4ml.model.hls_layers.Layer
-
config_cpp
()¶
-
function_cpp
()¶
-
initialize
()¶
-
-
class
hls4ml.model.hls_layers.
Pooling2D
(model, name, attributes, inputs, outputs=None)¶ Bases:
hls4ml.model.hls_layers.Layer
-
config_cpp
()¶
-
function_cpp
()¶
-
initialize
()¶
-
-
class
hls4ml.model.hls_layers.
Quantizer
(bits, hls_type)¶ Bases:
object
-
class
hls4ml.model.hls_layers.
Reshape
(model, name, attributes, inputs, outputs=None)¶ Bases:
hls4ml.model.hls_layers.Layer
-
config_cpp
()¶
-
function_cpp
()¶
-
initialize
()¶
-
-
class
hls4ml.model.hls_layers.
Resize
(model, name, attributes, inputs, outputs=None)¶ Bases:
hls4ml.model.hls_layers.Layer
-
config_cpp
()¶
-
function_cpp
()¶
-
initialize
()¶
-
-
class
hls4ml.model.hls_layers.
SeparableConv1D
(model, name, attributes, inputs, outputs=None)¶ Bases:
hls4ml.model.hls_layers.Layer
-
config_cpp
()¶
-
function_cpp
()¶
-
initialize
()¶
-
-
class
hls4ml.model.hls_layers.
SeparableConv2D
(model, name, attributes, inputs, outputs=None)¶ Bases:
hls4ml.model.hls_layers.Layer
-
config_cpp
()¶
-
function_cpp
()¶
-
initialize
()¶
-
-
class
hls4ml.model.hls_layers.
Softmax
(model, name, attributes, inputs, outputs=None)¶ Bases:
hls4ml.model.hls_layers.Activation
-
initialize
()¶
-
-
class
hls4ml.model.hls_layers.
StreamVariable
(shape, dim_names, var_name='layer{index}', type_name='layer{index}_t', precision=None, n_pack=1, depth=0, **kwargs)¶ Bases:
hls4ml.model.hls_layers.Variable
-
get_shape
()¶
-
size
()¶
-
size_cpp
()¶
-
-
class
hls4ml.model.hls_layers.
Transpose
(model, name, attributes, inputs, outputs=None)¶ Bases:
hls4ml.model.hls_layers.Layer
-
config_cpp
()¶
-
function_cpp
()¶
-
initialize
()¶
-
-
class
hls4ml.model.hls_layers.
Variable
(var_name, atype, **kwargs)¶ Bases:
object
-
class
hls4ml.model.hls_layers.
WeightVariable
(var_name, type_name, precision, data, quantizer=None, **kwargs)¶ Bases:
hls4ml.model.hls_layers.Variable
-
definition_cpp
()¶
-
next
()¶
-
update_precision
(new_precision)¶
-
-
class
hls4ml.model.hls_layers.
XnorPrecisionType
¶ Bases:
hls4ml.model.hls_layers.IntegerPrecisionType
Convenience class to differentiate ‘regular’ integers from BNN Xnor ones
-
class
hls4ml.model.hls_layers.
ZeroPadding1D
(model, name, attributes, inputs, outputs=None)¶ Bases:
hls4ml.model.hls_layers.Layer
-
config_cpp
()¶
-
function_cpp
()¶
-
initialize
()¶
-
-
class
hls4ml.model.hls_layers.
ZeroPadding2D
(model, name, attributes, inputs, outputs=None)¶ Bases:
hls4ml.model.hls_layers.Layer
-
config_cpp
()¶
-
function_cpp
()¶
-
initialize
()¶
-
-
hls4ml.model.hls_layers.
find_minimum_width
(data, signed=True)¶ Helper function to find the minimum integer width to express all entries in the data array without saturation / overflow
-
hls4ml.model.hls_layers.
register_layer
(name, clazz)¶
hls4ml.model.hls_model module¶
-
class
hls4ml.model.hls_model.
HLSConfig
(config)¶ Bases:
object
-
get_compression
(layer)¶
-
get_config_value
(key, default=None)¶
-
get_layer_config
(layer)¶
-
get_layer_config_value
(layer, key, default=None)¶
-
get_output_dir
()¶
-
get_precision
(layer, var='default')¶
-
get_project_name
()¶
-
get_reuse_factor
(layer)¶
-
get_strategy
(layer)¶
-
is_resource_strategy
(layer)¶
-
-
class
hls4ml.model.hls_model.
HLSModel
(config, data_reader, layer_list, inputs=None, outputs=None)¶ Bases:
object
-
build
(reset=False, csim=True, synth=True, cosim=False, validation=False, export=False, vsynth=False)¶
-
compile
()¶
-
get_input_variables
()¶
-
get_layer_output_variable
(output_name)¶
-
get_layers
()¶
-
get_output_variables
()¶
-
get_weights_data
(layer_name, var_name)¶
-
insert_node
(node)¶
-
make_node
(kind, name, attributes, inputs, outputs=None)¶
-
next_layer
()¶
-
predict
(x)¶
-
register_output_variable
(out_name, variable)¶
-
remove_node
(node, rewire=True)¶
-
replace_node
(old_node, new_node)¶
-
trace
(x)¶
-
write
()¶
-