refactor: major library changes #5

Merged
zacheryasc merged 9 commits from swactor-runtime-api into master 2026-02-06 11:25:38 +00:00

9 commits

Author SHA1 Message Date
Zachery Aaron Shores-Chmielewski
cf107315bc feat: separation of runtime and worker thread logic
Logically separate the runtime and worker thread, to make it more amenable for testing, visualization, reasoning, etc.
2026-02-06 18:16:09 +07:00
Zachery Aaron Shores-Chmielewski
799b654251 feat: refactor tests
Refactor the tests and component APIs to be more amenable to metrics, fuzzing, understanding data flows, etc.
2026-02-06 18:05:06 +07:00
Zachery Aaron Shores-Chmielewski
c80060f453 fix: consolidate modules
Better consoliation of modules into more logical components.
2026-02-06 14:06:37 +07:00
Zachery Aaron Shores-Chmielewski
06566b5e0f feat: more fine tuning available in the config 2026-02-06 13:48:51 +07:00
Zachery Aaron Shores-Chmielewski
7c7947c823 feat: actor addresses, Ctx abstraction, pools, and more
Fleshing out the architecture before abstracting into components amenable to api-based test harnesses for fuzz and optimization working loops.
2026-02-05 22:54:03 +07:00
Zachery Aaron Shores-Chmielewski
172e78a50b feat: mailbox
In the middle of a vibe-coded infra change. Modularizing the components into APIs amenable to lots of testing and optimization.
2026-02-05 21:22:36 +07:00
Zachery Aaron Shores-Chmielewski
abedaf6307 feat: workstealing, less contention for multithreaded 2026-02-05 10:44:48 +07:00
Zachery Aaron Shores-Chmielewski
ed26f0c080 feat(wip): rewrite
Our first implementation is incredibly slow, and failed to scale with increased threads. In order to fix this, we
are implementing cache-aware batching of message processing, and an epoch-based actor rebalancing using shard pools.
2026-01-30 22:52:38 +07:00
Zachery Aaron Shores-Chmielewski
3e504d3969 feat(wip): add to design pages
Ran through a few passes of the 'happy path' with the debugger, ran flamegraph analysis: we
are very much overdoing the atomic ring buffer channels. They may be fast for concurrency
across threads, but we don't necessarily need that for every occasion.
2026-01-27 20:01:35 +07:00