Chapter 32

runtime/step — step mesh

github.com/openfluke/welvet/runtime/step


Why it exists

Spatial feedback (remote links) needs a discrete-time mesh where every cell updates from a double buffer — different from a decoder wavefront.

What it is

State[T], StepForward/StepBackward/StepApplyTween across the grid for all wired Ops × dtype × quant × CPU/SIMD.

Go example

examples/32-step/main.go

Run:cd welvet/examples/32-step && source ../env.sh && go run .
package main

import (
	"fmt"

	"github.com/openfluke/welvet/architecture"
	"github.com/openfluke/welvet/core"
	"github.com/openfluke/welvet/layers/dense"
	"github.com/openfluke/welvet/runtime/step"
)

func main() {
	g := architecture.NewGrid(1, 1, 1, 1)
	l, _ := dense.New(4, 4, core.ActivationLinear, core.DTypeFloat32)
	_ = dense.Place(g, 0, 0, 0, 0, l)
	st := step.New[float32](g)
	_, err := step.StepForward(g, st, false)
	fmt.Println(err)
}

Output

exit 0 · last run via go run .

<nil>