Lies, Dang Lies, Statistics, and not questioning data from the company selling the board.

A55 is a 2-wide decode in-order architecture with 2 execution ports and 2.65 DMIPS.

A72 is a 3-wide decode out-of-order architecture with 8 execution ports and 4.72 DMIPS.

Obviously something is wrong here, so let's examine what it could be.

To get it out of the way, Mali G31 MP1 is theoretically slightly less performance (20.8GFLOPS vs 24GFLOPS), but my money would be on the Mali being much more efficient (the VideoCore architecture has been notoriously slower than it's theoretical numbers would indicate).

Cache is another consideration. The Pi 4 uses 1mb of L2. I can't find anything about the 905 except that it has L3 cache. The maximum L2 for A55 is 256kb. L3 can go up to 4MB. The s922x launched middle of last year and seems to have had 1mb of cache on it's A73 cores, so I would guess at less than that for a lower-end chip. In any case, I'd put cache as equal at best.

Pi 4 uses 1-4gb LPDDR4-3200 vs some DDR4-1320 on the odroid. No matter how you slice it though, something weird is going on here.

There is a default clockspeed difference (1.5GHz vs 2.0GHz), but it isn't nearly as large as the actual performance per clock difference. Since the 905 is apparently rated to run at 1.9GHz, I suspect they slightly overclocked the chips in their devices. I'd note that overclocking the Pi 4 to 2.0GHz is easily doable, but I wouldn't expect them to do that as it can lower the life expectancy of the chip (given the 8-stage A55 pipeline, I doubt that the 905 has much overclocking overhead).

On paper, the Pi 4 should be way faster at most of these things, so it must be elsewhere.

The first stop is data storage. SD cards suck. They suck so much that a spinning drive can usually get better performance. They desperately need to launch a new Pi with a SATA port or PCIe port for a faster drive. eMMC is a much better default option. The Pi loading benchmarks get 2-4x faster (sometimes more) when a USB3 SSD is used. On the flip side though, if a benchmark sits in RAM, you aren't going to notice a difference unless their benches are including load time. That may be fine for a few things, but it should be stated and it simply doesn't apply to a lot of real-world uses (for example, loading a browser may be a little slower, but opening and using web pages will not).

The next question is thermals. The 28nm Pi with larger cores definitely gets hotter and throttles more than the 12nm smaller A55 cores. If they shoved the pi into the default enclosure without a heatsink, it would definitely throttle hard which would affect benchmarks significantly. I fully expect this to be responsible for a large percentage of the performance disparity over what would be expected. Testing the raw Pi would be much more fair. A small heatsink would be more than fair and a fan would be overly-generous (seriously, pi foundation needs to recommend and sell a heatsink and redo their case design to accommodate a fan). I'd love for this to also be disclosed.

The next issue is insidious and veers much closer to evil. Using the same OS when possible should be a prerequisite for fair comparisons. Ubuntu team did some great work and fixed the major bugs that were hurting 64-bit usage (USB issues and 2-3GB RAM limit). I switched from Rasbian and there was a very noticeable increase in performance. Those fixes have been available for almost 6 months and there's no reason not to use it for their testing other than cooking the benches. We aren't talking small amounts either. 10% faster memory, 50% higher dhrystone, 15% faster audio encoding, 2x faster network performance, etc. I'm almost positive that they used Rasbian instead.

https://medium.com/@matteocroce/why-you-should-run-a-64-bit-...

No matter how you slice it though, they legit won the encryption benchmark by a landslide. Broadcom didn't include the armv8 crypto extensions. It was a dumb decision and one more thing that needs to be fixed on the next generation pi.