ExploreTrendingAnalytics
Nostr Archives
ExploreTrendingAnalytics
nextwave20d ago
Here's a benchmark for the final set of optimizations on commodity hardware. Very reasonable performance.
💬 6 replies

Replies (6)

mleku20d ago
those 64kb ones are blazing fast... this is literally 1000x my implementation in indra.
0000 sats
nextwave20d ago
Yea, there's plenty of headroom on them all right. You could probably serve content addressable storage over this link no problem.
0000 sats
nextwave20d ago
I think this is where the channel multiplexing will really shine. You could serve large content over one or more channels simultaneously without blocking other channels specifically for messaging/events.
0000 sats
nextwave20d ago
Though one tradeoff I had to decide on was around latency vs throughput over the link. I ended up adding event coalescing as default the protocol. So there's an extra 100 microseconds of latency for significantly better performance on throughput. It can be turned off completely in the dialer options though. So yea, less targeted at gaming or trading.
0000 sats
mleku20d ago
i probably could help design a scheduler that dynamically tunes according to workload type, using a PID controller to balance the schedule towards throughput vs latency according to the coalescing and the ratio of small frequent packets versus large blobs. more large blobs more often, tune for throughput, more small intermittent messages, tune for latency
0000 sats
mleku20d ago
a simpler strategy that might work is just shuffling the head of the dispatch queue so little messages packets get spliced finely among the continuous large blobs
0000 sats