brainevent.binary_fcnmv_p#
- brainevent.binary_fcnmv_p = <brainevent.XLACustomKernel object>#
Low-level XLA custom-kernel primitive for
binary_fcnmv.This
XLACustomKernelinstance dispatches the binary (event-driven) fixed-connection matrix-vector multiplication operation to registered backends (numba,pallas,cuda_raw), using runtime shape/dtype metadata provided by the high-level wrapper.Fixed-connection format stores connectivity where each neuron has a fixed number of incoming or outgoing connections. The event-driven formulation only processes active (spiking) neurons, skipping zero entries for efficiency.
Beyond backend dispatch, the primitive stores JAX transformation bindings (JVP, transpose, batching, and call registration) so the operation integrates correctly with
jit,vmap, and autodiff.The primitive takes six positional arguments:
(weights, indices, spikes, col_weights, col_indices, col_indptr). The final three arguments hold the optional column-major mirror used only by the CUDAtranspose=Falsecolumn-scatter path.Available backends can be queried with
binary_fcnmv_p.available_backends(platform), and the default backend can be configured withbinary_fcnmv_p.set_default(platform, backend).See also
binary_fcnmvHigh-level user-facing function wrapper.