News for hackers. Stuff that matters.
Re:After 118 days, GPT Unicorn has produced a unicorn by imtringued on Thursday August 10, 2023 @07:50AM (#37074942)
>and parallelism can cause numbers to be added in a different order from execution to execution

Parallelism doesn't magically add non-determinism of this kind unless you intentionally build it to be non deterministic. Nothing prevents you from processing an array in order in parallel.

Re:After 118 days, GPT Unicorn has produced a unicorn by kykeonaut on Thursday August 10, 2023 @08:52AM (#37075527)
However, the poster mentions parallelism in conjunction with floating point arithmetic, not parallelism by itself.
Re:After 118 days, GPT Unicorn has produced a unicorn by tmearnest on Thursday August 10, 2023 @11:31AM (#37077491)
No. The problem is in a reduction op of some sort (sum or whatever). Since there no guarantee of the order you receive the terms for the reduction, the nondeterminism enters from order of terms reduced. Since float math isn't associative, there will be slight differences depending on the order and these can amplify quickly over a deep net.

You would have to explicitly order the terms prior to reduction but you don't always have that level of control.

Re:After 118 days, GPT Unicorn has produced a unicorn by fl7305 on Thursday August 10, 2023 @01:39PM (#37079203)
> Nothing prevents you from processing an array in order in parallel.

100% correct if you remove processing time from the equation.

In reality, Nvidia Cuda calculations run much faster if you let it schedule the order of floating points operations itself. This makes the ordering different from run to run.

This in turn causes the results to be non-deterministic.