diff options
| author | eunhhu <[email protected]> | 2026-10-01 03:23:27 +0100 |
|---|---|---|
| committer | eunhhu <[email protected]> | 2026-10-01 03:23:27 +0100 |
| commit | db4ee9cc3ac5921830053d79efb09a0dc24da3d4 (patch) | |
| tree | a21fb8bf4878df0027e6643c5c2366fc6d60e130 /core/store.h | |
| parent | a05b9428c9d12ce0ea76f6e4539aa911f42b6eef (diff) | |
| download | pure-db4ee9cc3ac5921830053d79efb09a0dc24da3d4.tar.gz pure-db4ee9cc3ac5921830053d79efb09a0dc24da3d4.zip | |
Keep a busy app on its worker while no other app waits (017)
A worker put its app back at the queue's tail after every turn, and
the queue woke another worker for it: an app with steady work hopped
between workers (and cores) each turn, and every turn woke a thread.
Two busy scoreboard apps on two workers wrote 84k a second where two
processes wrote 117k.
Now an app takes its turns one after another on the same worker while
it has work and no other app waits; it goes to the tail only when one
does, and then without waking another worker, since this one takes the
head. Due timers are looked at between its turns, so a timer of another
app still gets a turn. A worker wakes another only when it leaves apps
waiting behind the one it took. The two apps now write about as much as
the two processes (measurements in research/experiments/026).
Diffstat (limited to 'core/store.h')
0 files changed, 0 insertions, 0 deletions
