[MLton-user] timing anomoly
Dave Herman
dherman at ccs.neu.edu
Tue Dec 4 12:05:04 PST 2007
If I've understood you correctly, would it not help to perform multiple
inlinings for multiple rounding modes and inline a conditional that
chose the correct answer based on the current rounding mode? I'm
perfectly ready to believe that would *not* be an improvement since
branches are so expensive in modern hardware, but if it's still faster
than the FP computations it could be a win.
Dave
Matthew Fluet wrote:
>
> Good point. Due to prompting from a user ;-), MLton carefully doesn't
> do constant folding or common subexpression elimination on floating
> point operations, since that wouldn't respect the rounding mode.
> (Actually, in this situation we could do better, since it would be
> acceptable to do CSE on the straight-line code where there are no
> intervening calls to change the program rounding mode state.)
>
> On Tue, 4 Dec 2007, Sean McLaughlin wrote:
>> Oh, I'm sorry! Thanks for this. It was keeping me up at night.
>>
>> On Dec 4, 2007 2:12 PM, Vesa Karvonen <vesa.a.j.k at gmail.com> wrote:
>>> On Dec 4, 2007 6:48 PM, Sean McLaughlin <seanmcl at gmail.com> wrote:
>>>> Fair enough :)
>>>>
>>>> However, is it possible to make this code run faster? It currently
>>>> runs
>>>> over 3X slower than the equivalent C program:
>>> [...]
>>>
>>> I compiled the code snippets with both MLton and gcc (-O2) and
>>> inspected the generated assembly code. What is happening here is that
>>> gcc eliminates most of the floating point computation. Note that all
>>> of your "x" variables are constants. You should read the "x" values
>>> from some run-time input for a more meaningful benchmark.
>>>
>>> -Vesa Karvonen
>>>
>>
>> _______________________________________________
>> MLton-user mailing list
>> MLton-user at mlton.org
>> http://mlton.org/mailman/listinfo/mlton-user
>>
>
> _______________________________________________
> MLton-user mailing list
> MLton-user at mlton.org
> http://mlton.org/mailman/listinfo/mlton-user
More information about the MLton-user
mailing list