Page 1 of 1

ARM vs. x86 speed comparison

Posted: Mon Feb 08, 2021 7:27 pm
by SilvioMartin
I found this morning, that my iMac was working on a WP of a project, for which my Raspberry Pi rack did a lot of WPs. So a good chance to compare the speed. I assume that all WPs of a project require the same effort. Here is an run from a Raspberry Pi 4B, which has a 1.5 GHz quad core ARM processor. FAH uses all four cores and there is nothing else running on the Raspberry Pi:

Code: Select all

00:12:21:WU01:FS00:0xa8:Project: 16923 (Run 1, Clone 43, Gen 42)
...
14:47:11:WU01:FS00:0xa8:Completed 500000 out of 500000 steps (100%)
So it needed 52,490 seconds. If it would run on a single core, it would probably need 4x more time. Running at 1 GHz would give another factor of 1.5. So after normalizing to 1 GHz and a single core, it would need 314,940 seconds. The iMac has a 3.4 GHz quad core Intel i5 processor. FAH uses 3 cores and there is nothing else running, which would need a lot of computing power:

Code: Select all

05:19:08:WU00:FS00:0xa8:Project: 16923 (Run 51, Clone 93, Gen 261)
...
06:46:03:WU00:FS00:0xa8:Completed 500000 out of 500000 steps (100%)
It took just 5215 seconds. Normalizing to 1 GHz and a single core gives a factor of 3.4 x 3, thus a total of 53,193 seconds. On both systems there is a 64 bit OS running on a 64 bit processor. So no need to normalize anything here.

For this type of task, the Intel + MacOS architecture looks around 6 times faster than the ARM + Raspberry Pi OS architecture after normalizing to the same number of cores and processor clock rate.

Re: ARM vs. x86 speed comparison

Posted: Mon Feb 08, 2021 7:58 pm
by bruce
I think the big/little differences probably need to be normalized. I'm not sure the best way to do that. Maybe run projects just on BIG threads.

Re: ARM vs. x86 speed comparison

Posted: Mon Feb 08, 2021 10:01 pm
by JimboPalmer
There are some 11 Generations of i5 CPUs. some only support SSE2, some support AVX_256, and some support AVX2-256 as their SIMD instruction sets.

If SSE2 is normalized to 1, AVX-256 should be just over 2, and AVX2-256 should be around 2.6, sadly all will be called i5. Your log will show which instruction set was chosen.

The RPi should use the NEON SIMD instruction set.