On 29.05.2012 08:10 (UTC+1), Steve Kargl wrote:
On Tue, May 29, 2012 at 02:56:13PM +1000, Peter Jeremy wrote:
On 2012-May-28 15:54:06 -0700, Steve Kargl<s...@troutmask.apl.washington.edu>
wrote:
There some test code in cephes. Can you point me to a suitable test
suite for LD80 and LD128? The reason for calling it libm is to avoid
having to hack every consumer to add an additional library.
I can't point you to test code. When I work on a function,
I write test code.
It took
me 3+ years to get sqrtl() into libm, but bde and das (and
myself) wanted to make sure the code worked.
Last time I checked (a couple of years ago), FreeBSD was missing 65
C99 libm functions. At 3 years per function, we should have C99
support available early in the 23rd century - which may be a bit late.
sqrtl() is a bit special in that IEEE 754 requires that
it have no more than 0.5 ULP for all arguments in all
roundng modes. As to other functions, I've been trying
for 10+ years to get some of these into FreeBSD. I can
assure you that there has never been a rush of people
volunteering to help or a rush of people willing to fund
the development of the necessary code.
The almost complete absence of volunteers in this case is first of all
caused by the need of very special, deep knowlegdes on mathematical and
informatical issues. I bet there are only a few people out there, who
are really good in both (three of them are known to us ;) ). The
problems with quality standards in such libraries spreaded over most
OS'es and platforms support this view. (I am aware that these arguments
are kown and discussed before.)
People like me, who wanted to _use_ FreeBSD as scientific desktops, have
an urgent need on such mathematical libraries. But most of us have no
chance to contribute conceptual. For some tasks we could use specialized
libraries or software, which include missing procedures and functions.
But more often, modern apps expect to get this functionalities from the OS.
This discussion confirms my impression, that it should be possible as an
interim solution, to use a port for missing math functions (cephes alike
or whatever). The port itself could warn the user about inaccuracies and
edge-cases.
The more important question to me is, how can the remaining (huge!) work
on the systems libm done in a foreseeable time. As one possibility,
wouldn't it be imaginable to pay some people for doing (some of) this
work (FreeBSD Foundation, Sponsors from industry and science etc.)? I
personally, as a private person, would be willing to pay a few hundred
dollars for it. Paying people for other tasks in FreeBSD is not entirely
uncommon, if I am not mistaken.
On 2012-May-28 22:03:43 -0500, Stephen Montgomery-Smith<step...@missouri.edu>
wrote:
1. By being so picky about being so precise, FreeBSD is behind the time
line in rolling out a usable set of C99 functions.
And at the current rate, we'll all be long dead before they are
available.
It seems you've had "a couple of years" to implement one or
more of the missing functions. Yes, we'll all be dead before
libm is C99 ready because no one, other than bde@, das@ and
myself, has been willing to actually help write the code. I
know that at least one of those three people has had no time
in the last year or two work on libm.
_______________________________________________
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"