Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .zenodo.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
"affiliation": "Independent researcher"
}
],
"description": "<p><strong>webgpu-fly</strong> runs a whole-animal <em>Drosophila</em> nervous system inside a web browser with no installation and no server. The FlyWire FAFB whole-brain connectome (139,255 neurons, ~15 million synaptic connections) and the Janelia MANC ventral-nerve-cord connectome (23,188 neurons, 5.2 million connections) are each simulated as leaky integrate-and-fire (LIF) networks in fused WebGPU compute kernels &mdash; gather, integrate, threshold and reset in a single kernel, with presynaptic-neurotransmitter signs pre-baked into the connection weights so the inner loop never branches on excitatory/inhibitory type.</p><p>The brain's descending command neurons drive the spinal cord by cell-type name match (the same named cell on both sides of the brain&ndash;VNC boundary), and the spine's motor neurons actuate a physically simulated 67-body, 111-actuator <strong>TuragaLab flybody</strong> model running in MuJoCo compiled to WebAssembly. A 64&times;16 retina rendered each frame from the fly's own head pose is fed back into the brain's optic neurons, closing a sensorimotor loop. An optional trained reinforcement-learning walking policy (Vaxenburg et al. 2025) runs as a pure-TypeScript forward pass verified element-wise against the published SavedModel checkpoint.</p><p>The deployment is a game: the player fires real descending neurons with keypresses to steer the fly to a target, and a winning run produces a deterministic, shareable replay URL that re-executes the identical neuron cascade against the same connectome &mdash; a brain trace, not a video. Performance is reported honestly: the brain LIF kernel is memory-bandwidth-bound and runs at ~0.25 kHz of biological time on an Apple M2 Pro, benchmarked on the same machine against NEST 3.10 (0.67 kHz) and a hand-written multicore Rust port (0.45 kHz). The original 1 kHz target was unreachable for any of the three on that hardware; the contribution is reachability &mdash; a real connectome simulation behind a single URL &mdash; not raw throughput. Known limitations (RL-walker speed gap, closed-loop visual-reflex approximation, kinematic-assist options) are enumerated in LIMITATIONS.md.",
"description": "<p><strong>webgpu-fly</strong> runs a whole-animal <em>Drosophila</em> nervous system inside a web browser with no installation and no server. The FlyWire FAFB whole-brain connectome (139,255 neurons, ~15 million synaptic connections) and the Janelia MANC ventral-nerve-cord connectome (23,188 neurons, 5.2 million connections) are each simulated as leaky integrate-and-fire (LIF) networks in fused WebGPU compute kernels &mdash; gather, integrate, threshold and reset in a single kernel, with presynaptic-neurotransmitter signs pre-baked into the connection weights so the inner loop never branches on excitatory/inhibitory type.</p><p>The brain's descending command neurons drive the spinal cord by cell-type name match (the same named cell on both sides of the brain&ndash;VNC boundary), and the spine's 369 leg motor neurons are averaged into a walking magnitude and a turn bias that scale a hand-written tripod gait, which in turn actuates a physically simulated 67-body, 111-actuator <strong>TuragaLab flybody</strong> model running in MuJoCo compiled to WebAssembly. The connectome scales that gait; it does not generate the stepping rhythm, which is an analytic sinusoid of simulation time. A 64&times;16 retina rendered each frame from the fly's own head pose is fed back into the brain's optic neurons, closing a sensorimotor loop. An optional trained reinforcement-learning walking policy (Vaxenburg et al. 2025) runs as a pure-TypeScript forward pass checked element-wise against an independent NumPy re-run of the same extracted weights; that check validates the port's arithmetic, not the assumed layer architecture against the original SavedModel.</p><p>The deployment is a game: the player fires real descending neurons with keypresses to steer the fly to a target, and a winning run produces a deterministic, shareable replay URL that re-executes the identical neuron cascade against the same connectome &mdash; a brain trace, not a video. Performance is reported honestly: the brain LIF kernel is memory-bandwidth-bound and runs at ~0.25 kHz of biological time on an Apple M2 Pro, benchmarked on the same machine against NEST 3.10 (0.67 kHz) and a hand-written multicore Rust port (0.45 kHz). The original 1 kHz target was unreachable for any of the three on that hardware; the contribution is reachability &mdash; a real connectome simulation behind a single URL &mdash; not raw throughput. Known limitations (RL-walker speed gap, closed-loop visual-reflex approximation, kinematic-assist options) are enumerated in LIMITATIONS.md.",
"keywords": [
"WebGPU",
"WebAssembly",
Expand Down
15 changes: 10 additions & 5 deletions CITATION.cff
Original file line number Diff line number Diff line change
Expand Up @@ -33,13 +33,18 @@ abstract: >-
leaky integrate-and-fire networks in fused WebGPU compute kernels, with
presynaptic-neurotransmitter signs baked into the weights so the inner
loop never branches on excitatory/inhibitory type. Brain command
neurons drive the spine by cell-type name match; the spine's motor
neurons drive a physically simulated 67-body, 111-actuator TuragaLab
flybody model running in MuJoCo compiled to WebAssembly. A 64x16 retina
neurons drive the spine by cell-type name match; the spine's 369 leg
motor neurons are averaged into a walking magnitude and a turn bias that
scale a hand-written tripod gait, which actuates a physically simulated
67-body, 111-actuator TuragaLab flybody model running in MuJoCo
compiled to WebAssembly — the connectome scales that gait but does not
generate its stepping rhythm. A 64x16 retina
rendered from the fly's head pose feeds back into the brain's optic
neurons. An optional trained reinforcement-learning walking policy
(Vaxenburg et al. 2025) runs as a pure-TypeScript forward pass verified
element-wise against the published checkpoint. The project is a game
(Vaxenburg et al. 2025) runs as a pure-TypeScript forward pass checked
element-wise against an independent NumPy re-run of the same extracted
weights, which validates the port's arithmetic but not the assumed
layer architecture against the original SavedModel. The project is a game
with shareable, deterministic replay URLs: a shared link re-executes
the identical neuron cascade against the same connectome. The brain LIF
kernel is memory-bandwidth-bound and runs at ~0.25 kHz biological time
Expand Down
Loading
Loading