Consensus: Tuning runtime behaviour with environment variables.

Ondřej Bílka neleai@seznam.cz
Wed May 29 06:02:00 GMT 2013


On Wed, May 29, 2013 at 12:56:50AM -0400, Carlos O'Donell wrote:
> Community,
> 
> I'd like to drive some consensus around the idea of using
> environment variables to tune runtime behaviour in glibc.
> 
> e.g.
> 
> LD_BIND_NOW=1 ./application
> 
> or
> 
> GLIBC_PTHREAD_MUTEX=elision ./application
> 
> I would really appreciate any feedback from the senior members
> of the project. This is an issue I'd like to see come to some
> kind of consensus.
> 
As tunables are concerned key word here is tradeoff. If it is clear
which choice is best, adding tunable is mistake.

Tunables could be appropriate where we must ask user what is more
important. Which malloc to use when one is 20% faster but causes 5% more fragmentation? 

When performance is concerned I am for auto tuning without env variables
unless performance depends on external factors. We can internally
collect more data than external app so we should get better result.
Here I could imagine to introduce a cache file that preserves profile of
applications across runs.



More information about the Libc-alpha mailing list