Thanks @ricardoV94 - those were useful tips.
I tried naively applying various MKL flags and didn’t have much luck on that, however on your tip about the dot operator I had more luck: Replacing dot with a solution manually summing the products has, for the moment, resolved the issue. It has introduced a new issue however, which I will described in a subsequent reply.
One other interesting observation I made with the original model (with the dot operator) was that using just a subset of the observation data could result in agreement between both machines. I’m struggling to explain this one, but I guess it could fit under the “vague indeterminate floating point operations” umbrella (?)
The differences were significant enough for the model to converge successfully on one machine and not on the other: we noticed it because we are running a convergence check in CI and it was that model which was failing to converge - otherwise we might not have spotted the issue.
Thanks for your help on this.