Cache getenv() looks a good idea !
Patch is OK for me.

On Wed, Apr 1, 2015 at 4:16 AM, Mattias Engdegård <matti...@acm.org> wrote:

> The functions in the __mingw_printf family are very slow because of the
> getenv(”PRINTF_EXPONENT_DIGITS”) call that is made every time, even when
> that information isn’t actually needed.
>
> Please consider this patch. It only calls getenv once, caching the result
> (as is traditionally done in libraries that use environment variables this
> way). It also only computes the minimum exponent digits when actually
> needed, at most once per format call.
>
> With this patch, __mingw_sprintf(buf, ”x”) goes from being several orders
> of magnitude slower than the MSVCRT sprintf, to about 66% faster. You don’t
> see this kind of improvement every day.
>
>
>
> ------------------------------------------------------------------------------
> Dive into the World of Parallel Programming The Go Parallel Website,
> sponsored
> by Intel and developed in partnership with Slashdot Media, is your hub for
> all
> things parallel software development, from weekly thought leadership blogs
> to
> news, videos, case studies, tutorials and more. Take a look and join the
> conversation now. http://goparallel.sourceforge.net/
> _______________________________________________
> Mingw-w64-public mailing list
> Mingw-w64-public@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
>
>
------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
_______________________________________________
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to