]> git.ipfire.org Git - thirdparty/haproxy.git/commit
MINOR: pollers: only update the local date during busy polling
authorWilly Tarreau <w@1wt.eu>
Wed, 21 Sep 2022 06:11:38 +0000 (08:11 +0200)
committerWilly Tarreau <w@1wt.eu>
Wed, 21 Sep 2022 07:06:28 +0000 (09:06 +0200)
commit58b73f9fa8a46b321e28478f9bb711ae7dc0630a
tree577e0645e86f2e69c81593aca6933020bb513b4f
parenta70042067180b4fa068909a2bff48227bb8e3c98
MINOR: pollers: only update the local date during busy polling

This patch modifies epoll, kqueue and evports (the 3 pollers that support
busy polling) to only update the local date in the inner polling loop,
the global one being done when leaving the loop. Testing with epoll on
a 24c/48t machine showed a boost from 53M to 352M loops/s, indicating
that the loop was spending 85% of its time updating the global date or
causing side effects (which was confirmed with perf top showing 67% in
clock_update_global_date() alone).
src/ev_epoll.c
src/ev_evports.c
src/ev_kqueue.c