On 5/7/24 20:35, Andrew Pinski wrote:

On Tue, May 7, 2024 at 11:31 AM Toon Moene <t...@moene.org> wrote:

On 5/7/24 00:02, Toon Moene wrote:

OK, perhaps on the aarch64 I need the following option to make the
comparison fair:

‘rdma’

      Enable Round Double Multiply Accumulate instructions. This is on by
default for -march=armv8.1-a.

I.e., -mno-rdma

(I hope that's correct - I'll will try that when the Sun rises again and
I have some power to run the AArch64 machine ...).

Well, I did two independent runs with gfortran-13.2 and the following
options:

-O3 -march=armv8.1-a+rdma

and

-O3 -march=armv8.1-a+nordma

No difference in the number of error runs exceeding the prescribed
thresholds.

So, unless I made a mistake in the option specification (or the compiler
silently ignored them because they were not applicable to my machine -
ugh), the cause of the problem lies elsewhere.


AARCH64 armv8-a has FMA as part of its base ISA.
So you want to try with `-ffp-contract=off` instead.
RDMA turns on/off instructions which are not used by the
auto-vectorizer (yet) and used by intrinsics for them (If I read the
code correctly).

Ah, thanks - I'll try that tomorrow.

--
Toon Moene - e-mail: t...@moene.org - phone: +31 346 214290
Saturnushof 14, 3738 XG  Maartensdijk, The Netherlands

Reply via email to