-
Notifications
You must be signed in to change notification settings - Fork 3
Description
Currently, reordering is not deterministic, meaning that running it twice on the same source with the same parameters produce different outputs. A deterministic optimization has some pros and some cons, but I think in general people tend to prefer it for a compiler.
I think the worst effect is that users might get confused when they see oscillations in performance by doing slight code changes. On the other hand, now they always get it at every run, and they can't even revert to a known good status.
I think the current "number of seconds" approach might also be increased with a "number of tries" or something, so that the same number works deterministically also on different computers and/or is not impacted by CPU load on the PC (assuming it is right now).