What it means to compute on data while it crosses a link, what a photonic link module (arXiv:2608.21536) is reported to do, and the arithmetic that decides what fits: operations per byte at line rate, whether the transform is charged, precision, energy and placement. Five tests, applied to the data movements of LLM training and inference.
Concepts used here, and where they are explained. Every concept is in the series glossary; concepts the sister series already explain link to their glossaries.
LLM work moves large, regular blocks of data between devices. Two of them set the scale for this series: the gradient or pseudo-gradient sync in training, and the KV-cache hand-off in disaggregated inference.
| Movement | Size | NVLink 4 | IB NDR 400G | 100 GbE | 25 GbE |
|---|---|---|---|---|---|
| Llama-3-70B BF16 update | 141.10 GB | 313.6 ms | 2,822.1 ms | 11,288.4 ms | 45,153.5 ms |
| Llama-3-8B BF16 update | 16.06 GB | 35.7 ms | 321.2 ms | 1,284.8 ms | 5,139.2 ms |
| Llama-3-70B KV, 2,048 tokens | 671.1 MB | 1.50 ms | 13.43 ms | 53.71 ms | 214.77 ms |
| Llama-3-8B KV, 2,048 tokens | 268.4 MB | 0.60 ms | 5.38 ms | 21.49 ms | 85.92 ms |
Source: results.md, sections 3 and 4. Link rates and model shapes come from Disaggregated_Inference_Sim's presets.
Compute in transit is computation applied in the data path, on data that must move anyway. The data is not fetched to a processor and sent back; it is changed on the way past. Where the computation sits decides what it can see.
| Placement | Sees | Can do | Cannot do |
|---|---|---|---|
| Endpoint (GPU, NIC) | Its own data, before it leaves or after it lands | Anything the device's instruction set allows, at the cost of its own time and memory traffic | Combine with data it has not received; it is not “free”, since it competes with the device's main work |
| Link (pluggable transceiver module) | One flow, at line rate | Per-stream transforms: compress, re-encode, transform, score against a held vector | Combine two streams: a sum of gradients from two workers needs both at one point |
| Switch | Many flows | Combine flows: in-network aggregation (the sum in an all-reduce) | Much per-byte work: the same compute budget is shared by every port |
A photonic interconnect that only moves bytes is not compute in transit. The distinction in this series is whether the device changes the data (glossary).
The series starts from one published device. Kundu, Hammond, Todd, Goel, Simpson, Rajendra, Michel, Crawford, Bergamaschi, R. Todd and New describe it in “Programmable Compute-in-Transit using Integrated Photonics” (arXiv:2608.21536, submitted 21 August 2026).
A third-party review notes that the GFLOPs figure is asserted rather than measured (pith.science). The GOPS and pJ/bit figures are company estimates. This deck treats all three as claims and brackets “tens of GFLOPs” with 10 and 99 GFLOP/s, which is our reading, not a measurement.
Note: the paper facts on this slide were checked against its full text (four pages) on 9 October 2026.
The paper lists radix-4 FFT and NTT, addition and subtraction, multiplication, MAC, floating-point MAC and modular arithmetic (add, subtract, multiply, MAC, MSUB). Everything a candidate kernel does must be built from them, or it cannot run in the module.
| Operation | Listed? | What it gives an LLM kernel |
|---|---|---|
| FFT (1×N, radix-4) | yes | Frequency-domain compression along a sequence or within a chunk |
| NTT (1×N, radix-4) | yes | Exact transforms over integers mod q: FHE, not float traffic |
| Modular arithmetic | yes | Integer rescaling and encoding (runs in the host FPGA’s driver IP) |
| Addition, subtraction, multiplication | yes | Summing streams, scaling, element-wise products |
| MAC, floating-point MAC | yes | Dot products against a held vector, weighted sums |
| Comparison | not listed | Needed for absmax scaling, thresholds, max |
| Rounding to a narrower format | not listed | Needed to requantise BF16 to FP8 |
| Top-k selection | not listed | Needed by DeMo-style sparsification and KV block selection |
| Data-dependent control | not listed | Needed for any “if this value, then” logic |
“Not listed” means only that the public sources do not mention it; the module or its host FPGA may do more.
Kernels must be data-independent: the same arithmetic on every value, whatever its size. Keeping a fixed frequency band replaces top-k. On synthetic 64×64 chunks, keeping 1/16 of the DCT coefficients, the fixed band keeps 0.957 of a smooth signal's energy against top-k's 0.995, but only 0.062 of white noise against top-k's 0.325 (results.md, section 5, illustrative).
A lens performs a Fourier transform on a coherent light field as it propagates, and two lenses with a mask between them compute a convolution (the 4f system). The transform has no operation count, only the cost of getting data into and out of the light. The background is in Fourier Optics for Inference 01: the lens as a Fourier transformer and the 4f system.
So the native optical transform is small, and long transforms are built by recombination. How much of that recombination is digital, and whether it counts against the module's “tens of GFLOPs”, is not public. That question decides the budget (slide 07).
A module that applies C operations per second to a stream arriving at R bytes per second can afford C / R operations per byte. Anything more and the link slows to the module's pace.
| Link | Line rate (GB/s) | Claim | Operations per byte |
|---|---|---|---|
| QSFP56 200G | 25 | low (10 GFLOP/s) | 0.40 |
| QSFP56 200G | 25 | high (99 GFLOP/s) | 3.96 |
| 400G | 50 | low (10 GFLOP/s) | 0.20 |
| 400G | 50 | high (99 GFLOP/s) | 1.98 |
| 800G | 100 | low (10 GFLOP/s) | 0.10 |
| 800G | 100 | high (99 GFLOP/s) | 0.99 |
| Prototype optics (4 × 14 Gb/s NRZ) | 7 | low (10 GFLOP/s) | 1.43 |
| Prototype optics (4 × 14 Gb/s NRZ) | 7 | high (99 GFLOP/s) | 14.14 |
Source: results.md, section 1. 400G and 800G rows assume the same engine per link. The prototype-optics rate is our arithmetic from the paper, not a figure it states.
25 GB/s is the QSFP56 port's rate. In the prototype the port connects the module to its host FPGA, and the photonic devices run at 14 GBaud, with NRZ data into four modulators (Kundu et al., section II): about 7 GB/s, 28% of the port, by our arithmetic. At 7 GB/s the same claim gives 1.43 to 14.14 operations per byte, enough for a charged BF16 FFT of length 2,048 at the high end. That is more work per byte, but on a link the prototype could not fill: a module limited to its optics' rate would itself throttle a 200 Gb/s link. 25 GB/s is the rate a product would have to match.
Move the claim and the line rate below. Work per value uses the same conventions as cit_budget.py: FFT 2.5 log2 n per value; 2-D DCT of c×c chunks 2 × 2.5 log2 c; sum 1; dot product 2; FP8 requantisation about 2 (illustrative); top-k about 2 comparisons (illustrative).
| Kernel | Transform / byte | Other / byte | Counted / byte | In set | Fits |
|---|
The same ledger, in Python, is analysis/cit_budget.py. At 99 GFLOP/s on 25 GB/s with BF16 and the transform charged, the page reproduces results.md section 2: the longest FFT that fits is length 8.
There are two ways to account for the optical transform, and the answer to the whole question changes with the choice.
The “tens of GFLOPs” include the transform's FLOPs (or the digital recombination that builds long transforms from short ones). Every FFT costs 2.5 log2 n per value. At the low end no transform fits: even length 2 costs 1.25 per BF16 byte against a budget of 0.40. At the high end, 3.96 per byte, the longest BF16 FFT that fits is length 8.
The optics performs the transform by propagation, and the GFLOPs figure counts only the other arithmetic. Then every transform-based kernel fits, and the remaining arithmetic decides. A fixed-band selection is a gather with no arithmetic, so it fits even at the low end.
| Kernel | Transform / byte | Other / byte | In set | Low, charged | High, charged | Low, free |
|---|---|---|---|---|---|---|
| Sum two gradient streams | 0.00 | 0.50 | yes | no | yes | no |
| 1-D FFT, length 8, fixed band | 3.75 | 0.00 | yes | no | yes | yes |
| 1-D FFT, length 64, fixed band | 7.50 | 0.00 | yes | no | no | yes |
| 1-D FFT, length 1024, fixed band | 12.50 | 0.00 | yes | no | no | yes |
| 2-D DCT 16×16, fixed band | 10.00 | 0.00 | yes | no | no | yes |
| 2-D DCT 64×64, fixed band | 15.00 | 0.00 | yes | no | no | yes |
| 2-D DCT 64×64 + top-k (DeMo) | 15.00 | 1.00 | no | no | no | no |
| Requantise BF16 to FP8 | 0.00 | 1.00 | no | no | yes | no |
| Score a KV key (dot product, head dim 128) | 0.00 | 1.00 | yes | no | yes | no |
Source: results.md, section 2. Low = 0.40, high = 3.96 operations per byte (QSFP56). “Fits” is arithmetic only; “in set” is a separate test.
An optical transform is analogue. Its result carries noise from the light, the detectors and the converters. Whether that matters depends on the data.
Decomposition buys exactness with extra passes and digital work. Float traffic does not need it, so an LLM kernel could, in principle, run the optics at its native precision. The developer claims “Scalable accuracy e.g. FP4->FP64” and the paper projects FP4 MAC on a future link, but no ENOB or error figure is published; the driver IP includes a proprietary error-correction block. The FHE accelerator series works through the exact case (FHESim 04).
The module’s developer estimates 2.76 pJ/bit link energy on 45 nm silicon photonics, excluding the laser (the developer’s website). For scale, the link energy coefficients used in Brendan's Disaggregated_Inference_Sim:
| Link | pJ/bit | Status |
|---|---|---|
| Photonic compute-in-transit link | 2.76 | Company estimate, 45 nm, excluding laser |
| Co-packaged optics | 3 | Illustrative simulator coefficient |
| NVLink 4 | 5 | Illustrative simulator coefficient |
| InfiniBand NDR 400G | 15 | Illustrative simulator coefficient |
| 100 GbE | 15 | Illustrative simulator coefficient |
Simulator presets: disagg_sim/hardware.py, LINKS. They are first-order coefficients for the simulator's energy model, not measurements.
| # | Test | Question | Where it is decided |
|---|---|---|---|
| 1 | Bottleneck | Does this traffic bound the system's time or throughput? | Simulation of the whole system, not the link alone |
| 2 | Operations | Is the kernel built only from the listed operations (FFT, NTT, add, multiply, MAC, modular arithmetic)? | Slide 04 |
| 3 | Budget | Does its work per byte fit C / R, with the transform charged or free? | Slides 06 and 07 |
| 4 | Precision | Does it tolerate analogue noise, or can it be made exact? | Slide 08 |
| 5 | Placement | Does it need one flow (a pluggable) or many (a switch)? | Slide 02 |
Disaggregated_Inference_Sim compresses the KV hand-off either in transit or on the prefill GPU (FOptInf 03, slide 13). Compression helped only where the link bound the system: GQA KV over 25 GbE at 14 req/s, FP8 cut the hand-off p99 from 9,657.8 ms to 166.6 ms and lifted SLO attainment from 41.0% to 100.0%. The GPU did the same compression for the same 166.6 ms (simulator results.md, section 15; transit stage parameters illustrative).
Each data movement placed on two of the tests. The placement is a judgement from this deck's arithmetic, not a measurement; decks 02 and 03 test it.
Four answers would settle most of this deck's uncertainty. Each changes a verdict, not a detail.
| Question | Why it matters | If yes | If no |
|---|---|---|---|
| Is the optical transform charged against the “tens of GFLOPs”? | Decides whether any transform-based kernel fits | Only FFTs of length 8 or less fit at 3.96 ops/byte | Every fixed-band kernel fits; the remaining arithmetic decides |
| Can the module compare and round? | FP8 requantisation, absmax scaling and top-k need them | Requantisation joins the candidates | Kernels stay data-independent: fixed bands, fixed scales |
| What is the native transform size and precision? | Sets the recombination work and the noise floor (slide 05, 08) | A large native size with float-level ENOB suits LLM traffic | A small native transform at low ENOB pushes work into digital recombination |
| Is LLM traffic a target? | The stated targets include distributed and hyperscale AI; the published evaluation is FHE | LLM kernels may get dedicated support | This series is a feasibility study on a device built for cryptography |
A measured throughput figure, in place of the asserted one, would also replace this deck's 10 to 99 GFLOP/s bracket.