diff options
author | jeff <jeff@FreeBSD.org> | 2008-03-10 03:15:19 +0000 |
---|---|---|
committer | jeff <jeff@FreeBSD.org> | 2008-03-10 03:15:19 +0000 |
commit | 14a6f96adb1d8d986d57dc89ec41c7040211f194 (patch) | |
tree | 6cf0a9142bfd5b8c1ca5659b0248b1af7788c46d /lib/libc | |
parent | be1fee2a1aaaca6eb7d60b655cd811bbb7b41a2a (diff) | |
download | FreeBSD-src-14a6f96adb1d8d986d57dc89ec41c7040211f194.zip FreeBSD-src-14a6f96adb1d8d986d57dc89ec41c7040211f194.tar.gz |
Reduce ULE context switch time by over 25%.
- Only calculate timeshare priorities once per tick or when a thread is woken
from sleeping.
- Keep the ts_runq pointer valid after all priority changes.
- Call tdq_runq_add() directly from sched_switch() without passing in via
tdq_add(). We don't need to adjust loads or runqs anymore.
- Sort tdq and ts_sched according to utilization to improve cache behavior.
Sponsored by: Nokia
Diffstat (limited to 'lib/libc')
0 files changed, 0 insertions, 0 deletions