Because transaction state is
1) stored in the page cache and so
2) can be moved freely between threads,
transactions can be served from a priority queue from a fixed number of workers.
Thus, #Glowdust has, by design, the ability to automatically balance CPU and memory use.
Memory pressure pushes back via I/O to persist overflowing tx state and serve page faults.
CPU pressure reduces time spent on each tx per worker, which makes tx state accumulate in memory, which releases CPU.