diff options
| author | eunhhu <[email protected]> | 2026-09-28 20:22:32 +0100 |
|---|---|---|
| committer | eunhhu <[email protected]> | 2026-09-28 20:22:32 +0100 |
| commit | a6d0dcdb6a378115ac03d40964d323e82475332a (patch) | |
| tree | 8ec64a9fb1aa575cbada60d1a2add8049c44888b /research/experiments/010-one-sync-commit/commits.c | |
| parent | e08987247a9abf5809064243732246b9a311f7bb (diff) | |
| download | pure-a6d0dcdb6a378115ac03d40964d323e82475332a.tar.gz pure-a6d0dcdb6a378115ac03d40964d323e82475332a.zip | |
Keep a link's queued records in one byte ring, taken back as they are stored
A queued record had an allocation of its own for its bytes and its
pieces' states, freed when the receiver stored it. Records come and go in
order, so their bytes now go one after another into a ring, never cut by
its end, and go back as the ring's head moves past the ones stored; a
ring too small grows to twice its size, the records moved into it in
order. A record of one piece keeps its piece's state in itself.
The transport alone drains 200,000 records of 61 bytes at 5.3 to 6.5
million a second; per record the link takes 0.137 us, the listener 0.14:
0.28 in all, against quinn's 0.26 a message over one stream.
Diffstat (limited to 'research/experiments/010-one-sync-commit/commits.c')
0 files changed, 0 insertions, 0 deletions
