August 25, 2015
On 08/25/2015 10:00 PM, bachmeier wrote:
> As long as it doesn't change from one release of the compiler to the
> next, we have reproducibility.

No, we don't. There are multiple platforms.
August 25, 2015
On 08/26/2015 12:46 AM, Timon Gehr wrote:
> On 08/25/2015 10:00 PM, bachmeier wrote:
>> As long as it doesn't change from one release of the compiler to the
>> next, we have reproducibility.
>
> No, we don't. There are multiple platforms.

Oh, and multiple compilers. We don't "have" reproducibility unless it's in the spec, and the opposite is in the spec.
August 25, 2015
On Tuesday, 25 August 2015 at 21:21:59 UTC, Matthias Bentrup wrote:
> On Tuesday, 25 August 2015 at 15:19:41 UTC, Márcio Martins wrote:
>>
>> If you compile it with *GDC* it works fine. If you compile a port with clang, gcc or msvc, it works right as well. I suspect it will also work fine with LDC.
>
> The same program "fails" in gcc too, if you use x87 math. Usually C compilers allow excess precision for intermediate results, because the extra precision seldom hurts and changing precision on x87 is very expensive (depends on the CPU, but it is more expensive than the trigonometric functions on some models).

That's because of floating point exception. It is very constraining for the hardware.
August 25, 2015
On Tuesday, 25 August 2015 at 20:00:11 UTC, bachmeier wrote:
> to the next, we have reproducibility. In many cases though, reproducibility doesn't mean exact reproducibility, at least in the old days it didn't, due to floating point issues. You generally want to allow for replication of the results using other languages, so you have to allow for some differences.

You don't get portable results for some builtin float functions, but otherwise I believe the 2008 edition of IEEE is exact. Latest version of ECMAScript also use the 2008 version of IEEE.

August 26, 2015
On Tuesday, 25 August 2015 at 23:09:07 UTC, Ola Fosheim Grøstad wrote:
> On Tuesday, 25 August 2015 at 20:00:11 UTC, bachmeier wrote:
>> to the next, we have reproducibility. In many cases though, reproducibility doesn't mean exact reproducibility, at least in the old days it didn't, due to floating point issues. You generally want to allow for replication of the results using other languages, so you have to allow for some differences.
>
> You don't get portable results for some builtin float functions, but otherwise I believe the 2008 edition of IEEE is exact. Latest version of ECMAScript also use the 2008 version of IEEE.

I haven't looked at any of this in years. It sounds like the situation is better now.
1 2 3 4 5
Next ›   Last »