This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [patch] pow.3: Add note on performance characteristics of pow
- From: "Michael Kerrisk (man-pages)" <mtk dot manpages at gmail dot com>
- To: Manuel López-Ibáñez <lopezibanez at gmail dot com>, Siddhesh Poyarekar <siddhesh at redhat dot com>
- Cc: mtk dot manpages at gmail dot com, linux-man at vger dot kernel dot org, GNU C Library <libc-alpha at sourceware dot org>
- Date: Tue, 11 Nov 2014 13:58:33 +0100
- Subject: Re: [patch] pow.3: Add note on performance characteristics of pow
- Authentication-results: sourceware.org; auth=none
- References: <CAESRpQDx5TfgfRp1q69NiuCB5ve8+fR1NC2up9h5LOkogMKkqQ at mail dot gmail dot com> <5440A816 dot 8000002 at gmail dot com> <20141017075845 dot GL1552 at spoyarek dot pnq dot redhat dot com> <CAESRpQB5K9U1sBreXUrNa4tPB69cwxC+fdu1bUr5BkU-dtxJMQ at mail dot gmail dot com>
Hello Manuel,
On 10/17/2014 03:51 PM, Manuel López-Ibáñez wrote:
> On 17 October 2014 09:58, Siddhesh Poyarekar <siddhesh@redhat.com> wrote:
>>>> +inputs. The inputs that produce such behavior are different for
>>>> +.BR powf (),
>>>> +.BR pow ()
>>>> +and
>>>> +.BR powl ().
>>>> +
>>
>> The slow fallback is only taken for pow, not powf or powl.
>
> Updated patch inline:
>
> diff --git a/man3/pow.3 b/man3/pow.3
> index d0a2ea8..1b05292 100644
> --- a/man3/pow.3
> +++ b/man3/pow.3
> @@ -320,6 +320,18 @@ The variant returning
> also conforms to
> SVr4, 4.3BSD, C89.
> .SH BUGS
> +On 64-bits,
> +.\"
> +.\" https://sourceware.org/bugzilla/show_bug.cgi?id=13932
> +.BR pow ()
> +may be more than 10,000 times slower for some (rare) inputs than for
> other nearby
> +inputs. This only affects
> +.BR pow (),
> +and not
> +.BR powf ()
> +nor
> +.BR powl ().
> +
> In glibc 2.9 and earlier,
> .\"
> .\" http://sources.redhat.com/bugzilla/show_bug.cgi?id=6776
>
> and attached in case gmail messes it up.
Thanks for revising the patch. I've applied it.
Cheers,
Michael
--
Michael Kerrisk
Linux man-pages maintainer; http://www.kernel.org/doc/man-pages/
Linux/UNIX System Programming Training: http://man7.org/training/