How it reads
One input, four stages, three real synapse tables.
-
01. Project
512 features, a locality-sensitive linear projection, 54 channels.

-
Input layer
245 uniglomerular projection neurons; 1,210 of 22,586 raw rows dropped.

-
02. Expand
20,600 real PN to KC edges onto 4,064 Kenyon cells, 5.07 glomeruli each.

-
03. Sparsify
2 APL neurons, 4,693 and 4,633 real edges, about 11.6% active.

-
04. Read out
61,210 real KC to MBON edges, 97 MBONs, 16 signed compartments.

One read, start to finish
Input sentence to scalar, about 0.65 ms.

The loop holds the rate
Kenyon cells firing per read: CV 0.1110 real, 0.2177 flattened, 0.3577 fixed threshold.

One byte in, a little out
Near versus far separation at the tenth percentile of seeds.
What a read costs
3,000 reads after 200 warm-up reads, one thread.
- 0.648 msper read, pre-featurised
- 0.652 msfrom a string
- 1,542reads a second
A recorded read
Recorded at build time, checked on every rebuild.
$ scripts/valence read "the build failed and the oncall page fired"
compartment sign <- aversive appetitive -> z
a1 + │██▏ +0.57
b'1 + ▎│ -0.06
b'2 + ▎██│ -0.59
b1 + │██▎ +0.59
b2 + │████ +1.09
g3 + ▌████│ -1.20
g4 + ▉██│ -0.78
g5 + ██│ -0.54
CA 0 │█▋ +0.42
a'1 - █│ -0.29
a'2 - │█▉ +0.49
a'3 - ▋██│ -0.70
a2 - │█▊ +0.46
a3 - │██▎ +0.60
g1 - ▎█│ -0.32
g2 - ▍███│ -0.92
scalar ▉│ -0.0792 (appetitive - aversive)
KC sparsity: 446/4064 active = 10.97% APL iterations: 8
