public inbox for glibc-bugs@sourceware.org help / color / mirror / Atom feed
From: "vincent-srcware at vinc17 dot net" <sourceware-bugzilla@sourceware.org> To: glibc-bugs@sourceware.org Subject: [Bug math/28472] pow(10, i) accuracy Date: Mon, 04 Mar 2024 15:35:25 +0000 [thread overview] Message-ID: <bug-28472-131-ri3jrMtCU4@http.sourceware.org/bugzilla/> (raw) In-Reply-To: <bug-28472-131@http.sourceware.org/bugzilla/> https://sourceware.org/bugzilla/show_bug.cgi?id=28472 --- Comment #16 from Vincent Lefèvre <vincent-srcware at vinc17 dot net> --- (In reply to Wilco from comment #15) > GLIBC double precision pow is the most accurate of all libraries tested at > 0.523 ULP [1]. What you forget is that this is the accuracy *tested* on arbitrary values. The actual accuracy may be worse. And this is the case here, with an accuracy larger than 1 ulp, according to the results in Comment #6! > The new exp10 is also the most accurate of the 13 tested math libraries. > > If you complain about inaccuracies in the most accurate library then maybe > your expectations are a little bit off... In the present case, it may be far worse than the most accurate libraries (well, it is difficult to say, due to the random tests). The result returned by glibc is not even faithfully rounded. So the user is right to complain, even though there is no guarantee from the ISO C standard. > The fact is, binary floating point cannot represent all powers of 10. If you > don't like the rounding behaviour of floating point, don't use floating > point. Don't blame floating point if this is a poor implementation. > Note compilers optimize pow (C, x) into exp (x * log (C)) with -Ofast. > However if C is a multiple of 2 or 10, we could use exp2 or exp10 for > slightly better accuracy. I suppose that you mean "if C is a *power* of 2 or 10". -- You are receiving this mail because: You are on the CC list for the bug.
next prev parent reply other threads:[~2024-03-04 15:35 UTC|newest] Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-10-18 23:54 [Bug math/28472] New: " mwelinder at gmail dot com 2021-10-19 15:44 ` [Bug math/28472] " joseph at codesourcery dot com 2021-10-19 21:28 ` mwelinder at gmail dot com 2021-10-19 21:42 ` joseph at codesourcery dot com 2021-10-25 8:44 ` newbie-02 at gmx dot de 2021-11-14 5:38 ` newbie-02 at gmx dot de 2022-01-24 21:45 ` mwelinder at gmail dot com 2022-01-24 21:56 ` joseph at codesourcery dot com 2022-09-23 16:33 ` newbie-02 at gmx dot de 2023-01-09 14:43 ` newbie-02 at gmx dot de 2023-01-09 18:35 ` joseph at codesourcery dot com 2023-01-09 21:23 ` newbie-02 at gmx dot de 2023-01-09 21:36 ` joseph at codesourcery dot com 2023-01-10 0:23 ` newbie-02 at gmx dot de 2024-03-02 22:53 ` vincent-srcware at vinc17 dot net 2024-03-04 14:58 ` wdijkstr at arm dot com 2024-03-04 15:35 ` vincent-srcware at vinc17 dot net [this message] 2024-03-04 16:07 ` wdijkstr at arm dot com 2024-03-04 17:09 ` vincent-srcware at vinc17 dot net 2024-03-04 18:27 ` wdijkstr at arm dot com 2024-03-04 19:23 ` vincent-srcware at vinc17 dot net 2024-03-18 21:09 ` newbie-02 at gmx dot de 2024-03-18 22:17 ` wdijkstr at arm dot com 2024-03-20 9:02 ` newbie-02 at gmx dot de 2024-03-20 9:56 ` vincent-srcware at vinc17 dot net 2024-03-20 13:54 ` wdijkstr at arm dot com
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=bug-28472-131-ri3jrMtCU4@http.sourceware.org/bugzilla/ \ --to=sourceware-bugzilla@sourceware.org \ --cc=glibc-bugs@sourceware.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).