|Anonymous | Login | Signup for a new account||2014-09-22 06:14 CEST|
|Main | My View | View Issues | Change Log | Roadmap|
|View Issue Details|
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0000021||OCaml||OCaml general||public||2000-01-13 10:00||2004-04-18 16:39|
|Target Version||Fixed in Version|
|Summary||0000021: Inline expansion of transcendentals|
|Description||Full_Name: David McClain|
Submission from: estephe.inria.fr (126.96.36.199)
Submitted by: xleroy
Since I do a great deal of bluk math processing, it would sure be nice if
many of the simpler transcendental functions could be inlined by OCAMLOPT.
I'm speaking primarily of round_to_int, sin, cos, tan, asin, acos, atan,
atan2, log, exp, sqrt, etc.
I modified the 2.02 compiler to support these and found that the necessary
changes were really quite easy to make. But I don't look forward to making
these same mods every time a new compiler is released.
Of course I am working on Pentium class machines which have these functions
available in hardware. Other arhitectures might not be so kind in this
[Added in a later message]
I can appreciate the desire to keep the language pure and proper, but I must
say that in nearly 30 years of experience I have never been tempted to take
the sin of 2^64. I would suggest that an inline version of the basic
transcendentals be made available along the same lines that unsafe_get and
unsafe_set are made available for array access. They are inlined for speed,
and provide little or no error checking. Their use is flagged by the
prominent "unsafe" prefix in the source text, and the option is available to
the end user as to when to use them....
|Tags||No tags attached.|
|Wish granted in 3.07 (option -ffast-math to ocamlopt)|
|2005-11-18 10:14||administrator||New Issue|
|Copyright © 2000 - 2011 MantisBT Group|