Subject: [Boost-bugs] [Boost C++ Libraries] #11798: Implementation of boost::shared_mutex on POSIX is suboptimal
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2015-11-16 12:52:52
#11798: Implementation of boost::shared_mutex on POSIX is suboptimal
-------------------------------------------------+-------------------------
Reporter: alex@⦠| Owner: anthonyw
Type: Bugs | Status: new
Milestone: To Be Determined | Component: thread
Version: Boost 1.59.0 | Severity: Problem
Keywords: pthread shared_mutex performance |
concurrency spinlock |
-------------------------------------------------+-------------------------
The current (as of boost 1.59) implementation of boost::shared_mutex for
'pthread' is pretty suboptimal as it's using a heavyweight mutex to guard
the internal mutex state. This is more evident when shared locks are used
to guard state whose access concurrency is high, due to contention on the
mutex state lock (in these cases, the shared mutex is effectively
exclusive). In comparison, the 'win32' implementation uses lightweight
spinlocks underneath.
There are a couple options to fix this for 'pthread', e.g. using a
spinlock or leveraging pthreads_rwlock. I'm happy to provide with an
initial patch for this.
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/11798> Boost C++ Libraries <http://www.boost.org/> Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:19 UTC