Solaris getenv() and putenv() do not scale linear and it gets a lot *worse* above 100 or more variables. Adding 1 environment variable per libmtmalloc tunable makes IMO no sense, it is not economic nor is it fast to have that many variables for similar purposes. I don't buy the comment about server applications, this is about economic engineering, this should apply to all users of libmtmalloc, the small ones and the larger server applications.
Olga 2010/6/15 Bart Smaalders <[email protected]>: > On 06/15/10 10:58, ольга крыжановская wrote: >> >> I have a comment: Why do you use 3 environment variables? Environment >> variables are very expensive to use, they significantly increase start >> up time of an application and slow down all applications which use >> getenv() or putenv() if the size of the environment is large. libast >> had the same problem, with bitter and measurable impact on start up >> time, and replaced all the allocator tunable variables into 1 variable >> to improve start up time. > > Sorry... this makes little sense. Yes, if you have ten thousand > environment variables, getenv can take significant time.... but this > isn't the common case, and any program that needs mt malloc isn't > worried about optimizing startup time. > > Typical use case is server applications. > > - Bart > > > -- > Bart Smaalders Solaris Kernel Performance > [email protected] http://blogs.sun.com/barts > "You will contribute more with mercurial than with thunderbird." > -- , _ _ , { \/`o;====- Olga Kryzhanovska -====;o`\/ } .----'-/`-/ [email protected] \-`\-'----. `'-..-| / http://twitter.com/fleyta \ |-..-'` /\/\ Solaris/BSD//C/C++ programmer /\/\ `--` `--` _______________________________________________ opensolaris-arc mailing list [email protected]
