smarm general benchmarks available parallelism: 1 threads ITERS=15 (+1 warmup, discarded) CHAIN_DEPTH=1000, YIELD_TASKS=200×1000, PRIME_N=400000/64 workers, PP_ROUNDS=1000 ================================================================================ chained_spawn: depth 1000 ================================================================================ runtime | result | median µs | min µs | max µs -------------------------------------------------------------------------------- smarm 1-thread | 1000 | 8720 | 8526 | 9319 smarm 1-thread | 1000 | 8662 | 8571 | 8991 tokio current_thread | 1000 | 123 | 123 | 152 tokio multi-thread | 1000 | 188 | 184 | 230 ================================================================================ yield_many: 200 tasks × 1000 yields ================================================================================ runtime | result | median µs | min µs | max µs -------------------------------------------------------------------------------- smarm 1-thread | 200000 | 41530 | 41242 | 43501 smarm 1-thread | 200000 | 41575 | 41187 | 43323 tokio current_thread | 200000 | 15098 | 15020 | 15348 tokio multi-thread | 200000 | 15900 | 15827 | 16012 ================================================================================ fan_out_compute: primes in [2, 400000) across 64 ================================================================================ runtime | result | median µs | min µs | max µs -------------------------------------------------------------------------------- smarm 1-thread | 33860 | 29573 | 29435 | 31647 smarm 1-thread | 33860 | 29521 | 29453 | 29847 tokio current_thread | 33860 | 28495 | 28441 | 30150 tokio multi-thread | 33860 | 34384 | 34297 | 34745 ================================================================================ ping_pong_oneshot: 1000 rounds ================================================================================ runtime | result | median µs | min µs | max µs -------------------------------------------------------------------------------- smarm 1-thread | 1000 | 17190 | 16994 | 17541 smarm 1-thread | 1000 | 17078 | 16916 | 19139 tokio current_thread | 1000 | 899 | 896 | 1000 tokio multi-thread | 1000 | 4198 | 4116 | 4573 smarm tokio-favored benchmarks available parallelism: 1 threads ITERS=15 (+1 warmup, discarded) STORM_BACKGROUND=8, STORM_SPAWN=10000, MPSC=32×10000, TIMER_ACTORS=10000 (1–10 ms), SCALING_N=400000/64 ================================================================================ spawn_storm_busy: 8 bg yielders + 10000 zero-work spawns ================================================================================ runtime | result | median µs | min µs | max µs -------------------------------------------------------------------------------- smarm 1-thread | 10000 | 138556 | 136165 | 140947 smarm 1-thread | 10000 | 140223 | 136325 | 146781 tokio current_thread | 10000 | 2671 | 2622 | 2913 tokio multi-thread | 10000 | 6004 | 4360 | 12576 ================================================================================ mpsc_contention: 32 producers × 10000 msgs → 1 consumer ================================================================================ runtime | result | median µs | min µs | max µs -------------------------------------------------------------------------------- smarm 1-thread | 320000 | 9051 | 8967 | 11152 smarm 1-thread | 320000 | 9058 | 9008 | 9998 tokio current_thread | 320000 | 17375 | 17131 | 18514 tokio multi-thread | 320000 | 17955 | 17452 | 18508 ================================================================================ many_timers: 10000 actors sleeping 1–10 ms ================================================================================ runtime | result | median µs | min µs | max µs -------------------------------------------------------------------------------- smarm 1-thread | 10000 | 156969 | 153124 | 167711 smarm 1-thread | 10000 | 150638 | 146070 | 168286 tokio current_thread | 10000 | 13823 | 13482 | 14796 tokio multi-thread | 10000 | 15034 | 14425 | 15320 ================================================================================ multi_thread_scaling: primes in [2, 400000) across 64 workers ================================================================================ runtime | result | median µs | min µs | max µs -------------------------------------------------------------------------------- smarm 1-thread | 33860 | 30075 | 29707 | 30720 tokio multi 1-thread | 33860 | 29060 | 28835 | 44378 smarm smarm-favored benchmarks available parallelism: 1 threads ITERS=15 (+1 warmup, discarded) RECURSE_DEPTH=500, HOT_YIELDS=500000×2, UNCONT_MSGS=1000000, PANIC_TASKS=10000 ================================================================================ deep_recursion: depth 500 ================================================================================ runtime | result | median µs | min µs | max µs -------------------------------------------------------------------------------- smarm 1-thread | 1 | 86 | 79 | 130 smarm 1-thread | 1 | 83 | 78 | 146 tokio current_thread | 1 | 25 | 25 | 31 tokio multi-thread | 1 | 49 | 46 | 85 ================================================================================ yield_in_hot_loop: 2 actors × 500000 yields (single thread) ================================================================================ runtime | result | median µs | min µs | max µs -------------------------------------------------------------------------------- smarm 1-thread | 1000000 | 190902 | 187600 | 194333 tokio current_thread | 1000000 | 150279 | 148175 | 188184 ================================================================================ uncontended_channel: 1→1, 1000000 msgs (single thread) ================================================================================ runtime | result | median µs | min µs | max µs -------------------------------------------------------------------------------- smarm 1-thread | 1000000 | 27687 | 27198 | 29555 tokio current_thread | 1000000 | 54465 | 54048 | 55954 ================================================================================ catch_unwind_panics: 10000 tasks, 50% panic ================================================================================ runtime | result | median µs | min µs | max µs -------------------------------------------------------------------------------- smarm 1-thread | 10000 | 160308 | 154365 | 167009 smarm 1-thread | 10000 | 158662 | 155458 | 168896 tokio current_thread | 10000 | 267762 | 260876 | 294092 tokio multi-thread | 10000 | 275097 | 269344 | 287681