hxtorch.spiking

Modules

hxtorch.spiking.backend

hxtorch.spiking.datasets

hxtorch.spiking.execution_info

hxtorch.spiking.execution_instance

Definition of ExecutionInstance, wrapping grenade.common.ExecutionInstanceID, and providing functionality for chip instance configuration

hxtorch.spiking.experiment

Defining basic types to create hw-executable instances

hxtorch.spiking.functional

hxtorch.spiking.handle

Defining tensor handles able to hold references to tensors for lazy assignment after hardware data acquisition

hxtorch.spiking.modules

hxtorch.spiking.morphology

User defined neuron morphologies.

hxtorch.spiking.neuron_placement

Defining neuron placement allocator

hxtorch.spiking.observables

Hardware observables object

hxtorch.spiking.parameter

Generic parameter object holding hardware configurable neuron parameters.

hxtorch.spiking.run(experiment, runtime)

Execute the given experiment.

hxtorch.spiking.transforms

hxtorch.spiking.utils

Classes

AELIF(size, experiment, leak, reset, …)

Layer of neurons with configurable dynamics up to adaptive exponential leaky integrate-and-fire complexity.

BatchDropout(size, dropout, experiment)

Batch dropout layer

ExecutionInstance(calib_path, str]] = None, …)

Experiment(mock, dt[, hw_routing_func])

Experiment class for describing experiments on hardware

HXBaseExperimentModule(experiment)

HXModule(experiment, execution_instance, …)

PyTorch module supplying basic functionality for elements of SNNs that do have a representation on hardware

HXModuleWrapper(experiment, **modules)

Class to wrap HXModules

HXParameter(value, float, int])

HXTransformedModelParameter(model_value, …)

Handle(*args, **kwargs)

Factory for classes which are to be used as custom handles for observable data, depending on the specific observables a module deals with.

InputNeuron(size, experiment, …)

Spike source generating spikes at the times [ms] given in the spike_times array.

LI(size, experiment, leak, tau_mem, tau_syn, …)

Layer of leaky integrator neurons

LIF(size, experiment, leak, reset, …)

Layer of leaky integrate-and-fire neurons.

LIFObservables

alias of types.Handle_current_membrane_cadc_membrane_madc_spikes

LIObservables

alias of types.Handle_current_membrane_cadc_membrane_madc

MixedHXModelParameter(model_value, float, …)

ModelParameter(model_value, float, int])

NeuronExp(size, experiment, leak, reset, …)

Neuron layer with exponential Euler intergration scheme.

ReadoutNeuronExp(size, experiment, leak, …)

Neuron layer with exponential Euler intergration scheme.

SparseSynapse(connections, experiment, …)

Sparse synapse layer

Synapse(in_features, out_features, …)

Synapse layer

SynapseHandle

alias of types.Handle_graded_spikes

TensorHandle

alias of types.Handle_tensor

Functions

hxtorch.spiking.run(experiment: hxtorch.spiking.experiment.Experiment, runtime: Optional[int, None])Optional[hxtorch.spiking.execution_info.ExecutionInfo, None]

Execute the given experiment.

TODO: Why is this a standalone function?

Parameters
  • experiment – The experiment representing the computational graph to be executed on hardware and/or in software.

  • runtime – Only relevant for hardware experiments. Indicates the runtime resolved with experiment.dt.