public inbox for newlib@sourceware.org
 help / color / mirror / Atom feed
From: Keith Packard <keithp@keithp.com>
To: Paul Zimmermann <Paul.Zimmermann@inria.fr>
Cc: newlib@sourceware.org
Subject: Re: issue with tgammaf
Date: Tue, 12 Jan 2021 22:38:38 -0800	[thread overview]
Message-ID: <87mtxdmjdd.fsf@keithp.com> (raw)
In-Reply-To: <mwturlmlrq.fsf@tomate.loria.fr>

[-- Attachment #1: Type: text/plain, Size: 1309 bytes --]

Paul Zimmermann <Paul.Zimmermann@inria.fr> writes:

> In summary, the old code (__OBSOLETE_MATH_DEFAULT=1) is always better in terms
> of accuracy, with huge differences for some functions (cos, exp, exp10, exp2,
> log, log2, sin, pow).

Thanks so much for your evaluation. It's very good to know that by
selecting the original SunPro math functions we're not losing anything
in precision while we target machines with less capable hardware.

Are you able to share the code which performs these tests? I'd love to
be able to run these on a regular basis to ensure that no regressions
occur as we maintain the code.

This also provides a potential starting point for someone interested in
improving the accuracy of this library -- we could clearly use better
bessel and gamma functions.

> For bivariate functions (atan2, hypot, pow), the tests are not
> exhaustive.

Yeah, the search space is a bit large :-)

> tgamma:
> Total: errors=2028164922 (47.41%) errors2=1833526367 maxerr=2.39e+02 ulp(s)
> Total: errors=2026865970 (47.38%) errors2=1832940352 maxerr=2.39e+02 ulp(s)

Given that around half of the possible input values (> 35, or near
negative integers) generate an overflow, it seems like tgamma
essentially *never* gives us an accurate finite result...

-- 
-keith

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]

  reply	other threads:[~2021-01-13  6:38 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-09-15  8:21 Paul Zimmermann
2020-09-15 17:28 ` Keith Packard
2020-09-16  8:33   ` Paul Zimmermann
2020-09-16 15:13     ` Keith Packard
2020-09-17  7:18       ` Paul Zimmermann
2020-09-17 16:11         ` Keith Packard
2021-01-13  5:46           ` Paul Zimmermann
2021-01-13  6:38             ` Keith Packard [this message]
2021-01-13  7:52               ` Paul Zimmermann
2020-09-18 21:21   ` Jeff Johnston

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=87mtxdmjdd.fsf@keithp.com \
    --to=keithp@keithp.com \
    --cc=Paul.Zimmermann@inria.fr \
    --cc=newlib@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: link
Be 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).