Home
last modified time | relevance | path

Searched hist:"0 ab9f280ec94e78ae21971b15bdfc1e15030689e" (Results 1 – 1 of 1) sorted by relevance

/haiku/src/system/kernel/locks/
H A Duser_mutex.cpp0ab9f280ec94e78ae21971b15bdfc1e15030689e Wed Jun 14 17:20:27 UTC 2023 Augustin Cavalier <waddlesplash@gmail.com> user_mutex: Granularize locking.

Now the table is locked with a rw_lock, and individual entries have
each their own rw_locks also.

This improves the "contention" benchmark I have here (2 locks, 6 threads,
acquire & release one lock 50,000 times per thread) mentioned in the last
commit down to under 4s consistently, around 3.45s with the system idle
and around 3.9s when moving windows around. Before this commit, it was
around 6.7s in the best case and 7.0s in the worst, and before that,
it couldn't break 3.8s in the best case.

This does make GLTeapot just slightly worse: it is now down to 310-330
(with occasional dips to 300-310) from 320-340. But the following commits
will improve that substantially.

Change-Id: Ie029a2510746f876f4d4c74d7e878fdadf3cf590
Reviewed-on: https://review.haiku-os.org/c/haiku/+/6601
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>