Difference between deterministic and nondeterministic operation?


I was reading docs from here and came to this:

Deterministic operations are often slower than nondeterministic operations, so single-run performance may decrease for your model.

My question is, what is a definition of deterministic operation and/or the difference with its counterpart?

Deterministic operations will return the same result for each execution, which might be helpful for e.g. debugging. Algorithmic non-determinism can be caused by round-off errors, since the associative law no longer holds as described by @KFrank in this post (with some additional links).
While seeing these numerical errors due to the limited floating point precision is usually not concerning, your use case might depend on deterministic results, which can then be optionally enabled.

1 Like

More or less clear on the surface, enough for now, thanks, @ptrblck!