This is the mail archive of the glibc-bugs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug math/13881] New: powl inaccurate for x86/x86_64


http://sourceware.org/bugzilla/show_bug.cgi?id=13881

             Bug #: 13881
           Summary: powl inaccurate for x86/x86_64
           Product: glibc
           Version: 2.15
            Status: NEW
          Severity: normal
          Priority: P2
         Component: math
        AssignedTo: unassigned@sourceware.org
        ReportedBy: jsm28@gcc.gnu.org
    Classification: Unclassified


The powl implementations for x86 and x86_64 work essentially through exp2 (y *
log2 (x)).  This does not produce accurate results for large outputs; you need
about 15 extra bits of precision in the evaluation of y * log2 (x) to do that. 
As an example, powl (1e4932L, 0.75L) is 4840ulp off from the expected 1e3699L
on x86_64.

For integer exponents a different algorithm is used; it's still not very
accurate, e.g. 45ulp error for powl (10, 4932); that has the same underlying
cause as the inaccuracy described for pow in bug 706.

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]