hxtorch.spiking

Modules

hxtorch.spiking.backend

hxtorch.spiking.calibrated_params

Generic parameter object holding hardware configurable neuron parameters.

hxtorch.spiking.datasets

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.run(experiment, runtime)

Execute the given experiment.

hxtorch.spiking.transforms

hxtorch.spiking.utils

Classes

BatchDropout(size, dropout, experiment, …)

Batch dropout layer

CalibratedParams(leak, reset, threshold, …)

Parameters for any (of currently available) forward and backward path.

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

Experiment(mock, dt[, hw_routing_func])

Experiment class for describing experiments on hardware

HXBaseExperimentModule(experiment)

HXModule(experiment, func, …)

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

HXModuleWrapper(experiment, modules, func)

Class to wrap HXModules

IAFNeuron(size, experiment, func, …[, …])

Integrate-and-fire neuron Caveat: For execution on hardware, this module can only be used in conjunction with a preceding Synapse module.

InputNeuron(size, experiment, execution_instance)

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

Neuron(size, experiment, func, …[, leak, …])

Neuron layer

NeuronHandle(spikes, v_cadc, current, v_madc)

Specialization for HX neuron observables

ReadoutNeuron(size, experiment, func, …)

Readout neuron layer

ReadoutNeuronHandle(v_cadc, current, v_madc)

Specialization for HX neuron observables

SparseSynapse(connections, experiment, func, …)

Sparse synapse layer

Synapse(in_features, out_features, …)

Synapse layer

SynapseHandle(graded_spikes)

Specialization for HX synapses

TensorHandle()

Base class for HX tensor handles.

Functions

hxtorch.spiking.run(experiment: hxtorch.spiking.experiment.Experiment, runtime: Optional[int])Optional[_pygrenade_vx_signal_flow.ExecutionTimeInfo]

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.