[RFCv2] Dynamic lock elision support
Carlos O'Donell
carlos@redhat.com
Wed Sep 2 21:01:00 GMT 2015
On 09/02/2015 03:30 PM, Adhemerval Zanella wrote:
> Based on Siddhesh initial proposal [1], IMHO best approach can be divide in
> functionalities or libraries areas, such as:
>
> * GLIBC_MALLOC for malloc related tunables (all current one, such as mmap trim, etc.)
> * GLIBC_THREAD for libpthread one, such as PI-aware locks, TLE, stack size, etc.
> * etc.
>
> So in the TLE case for instance, we can use GLIBC_THREAD as the base and
> add it in general case (instead of replicate the logic in every architecture).
>
> [1] https://sourceware.org/glibc/wiki/TuningLibraryRuntimeBehavior
As long as the documentation in the manual says tunables are supported only for
a single release, and are not backwards compatible, then I'm happy, because we
can eventually revisit this decision.
I don't see any real value in having grouped tunnables, because the user still
has to know all of them and clear all of them. And now instead of having either
a simple 1:1 of tunable:envvar, or ALL:1 as Roland suggested, we have some mix
that the user has to learn.
I still recommend one tunable per env var.
We might have a tool provided by glibcto do this would help
e.g. glibc-tune --clear, glibc-tune --list
e.g. glibc-tune --set GLIBC_PTHREAD_ELISION_DISABLE=yes
Cheers,
Carlos.
More information about the Libc-alpha
mailing list