hls4ml.model package

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)

Bases: hls4ml.model.hls_layers.GarNet

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.HLSType(name, precision, **kwargs)

Bases: object

definition_cpp()
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()

hls4ml.model.profiling module

Module contents