The Samsung Galaxy S20+, S20 Ultra Exynos & Snapdragon Review: Megalomania Devicesby Andrei Frumusanu on April 3, 2020 9:30 AM EST
The Exynos 990 SoC: Last of Custom CPUs
While we've received a lot of information on the Snapdragon 865 over the last few months due to Qualcomm’s openness and willingness to share details with the public, until now we’ve known almost nothing about the new Exynos 990. Samsung LSI’s newest flagship processors was announced way back in October, but we had to be patient and await commercial devices before we could get any concrete details on the chip’s makings. What we do know is that the new chip employs a new generation M5 CPU microarchitecture, upgrades the mid-cores to Cortex-A76 designs, and employs a new Mali-G77 GPU, all manufactured on a 7nm 7LPP process that uses EUV lithography.
An Exynos 9820 Retrospective
Before we get into the Exynos 990 itself, I want to do a quick retrospective on last's year's flagship Samsung SoC, the Exynos 9820, both to catch up on things we've learned since the Galaxy S10 launch, and to illustrate how the Exynos 990 has changed things.
The first thing to note on the Exynos 9820 is that Samsung’s custom CPU cores reside in a completely different cluster than Arm’s cores – both being interconnected and being cache coherent only via Samsung’s Coherent Interconnect. My more recently written core-to-core latency test demonstrates this topology difference as the latencies between CPUs on the different cores is significantly higher than what we see on the cores within the Arm cluster, and higher than what we saw on the Snapdragon 865 on the previous page.
The second correction is that the M4 cores didn’t just have 512KB L2 caches, but rather 1MB. This wasn’t very visible in the latency tests due to issues with the microarchitecture which we’ll revisit in a later page as well.
The weird cache behavior that we originally reported on in the bandwidth figures of the A75 cores last year ended up being a side-effect of a 2MB last-level cache on the SoC. This SLC acts the same as the 3MB SLC on the Snapdragon 865 and allows for efficient caching of various memory accesses of the SoC IP blocks, saving power for the system.
Enter the Exynos 990
Where the Exynos 990 differs from the Exynos 9820 is in a few areas. First off, let’s focus on the Arm cluster. Here Samsung has finally donned the small A55 cores with private, 64KB L2 caches. This was notoriously missing from both the Exynos 9810 and Exynos 9820’s A55 cores, which lead them to be less performant and seemingly less efficient than their counterparts on the Snapdragon SoCs. The 64KB L2 caches here are still only half of the 128KB that we find on the Snapdragon 865, so Samsung continues to be extremely conservative in the cache configuration of the Arm CPUs. The new small cores see a slight clock frequency upgrade, going up to 2GHz this time around.
The middle cores see an upgrade from Arm Cortex-A75s to Cortex-A76s, while also getting a frequency lift from 2.3GHz up to 2.5GHz. This is actually a massive performance boost of 38% to 50% depending on the workload, and essentially serve as the Exynos 990’s workhorses for the vast majority of tasks. The L2 caches are still configured at 256KB per core, and the shared L3 of the Arm cluster remains at a more conservative 1MB.
On the big core side, we see the evolution of the microarchitecture from the M4 cores, codenamed Cheetah, to the newer M5 cores, codenamed Lion. Whilst Samsung has kept the maximum clock frequencies unchanged at 2.73GHz, they did promise a 20% uplift, which should mostly come from IPC improvements.
The biggest externally observable change is the fact that these new cores no longer have private L2 caches for themselves, but rather now come with a shared L2 of 2MB. That’s actually quite the huge microarchitectural design change in an era where we’re used designs actually introducing private L2 caches. The topology change can be evidenced by the drastic reduction in the core-to-core latencies between the two M5 cores compared to the M4 counterparts in the previous generation, as the coherency now happens at a lower cache level that's closer to the CPUs.
The Exynos 990 is manufactured on Samsung’s 7LPP node, which uses EUV lithography. It’s actually not the first chip on the process, as that title goes to the Exynos 9825 found in the Note10 series last year. However if TechInsight’s reporting is accurate, it seems that the that the Exynos 990 is the first chip to be actually designed with the full 7LPP PDK rather than being just a relaxed conversion of the design to another process (The 9825 is functionally identical to the 9820, and it seems this also applies to its lithography implementation).
Samsung describes the 7LPP process as having 7% higher performance than its 8LPP node, which should also manifest itself as a power reduction of a design at otherwise equal frequency. Comparing the voltage curves of one of our S20 Exynos 990 units to the S10 unit last year, we see that there are some differences, but these are somewhat lackluster in the end. First of all it’s to be noted that the bins of our Exynos 990 units are seemingly bad this year, and I’ve seen that most units out there are in the same classification or even worse, pointing to the possibility of bad yields for the chip.
The A55 cores do clock slightly higher this generation, but at the peak frequencies the voltages still remain very high. At more medium frequencies we do however see improvements of up to around -43mV. The A76 cores can’t really be compared to the A75 cores of the previous generation due to their different microarchitectures, but also here we see the voltage curves being lower than on the 9820 even though the binning of our 990 units here are quite worse.
Finally, the M5’s core voltages are extremely disappointing. Not only are there no improvements at equal frequency to the M4 cores on 8nm, but there’s actually a degradation in the frequency scaling: the new Lion cores require higher voltages to reach the same frequencies. Peak voltages at 2.73GHz have gone up from 1068mV to 1118mV in our review sample units between the M4 and M5, meaning the new microarchitecture just scales worse in frequency. This all doesn’t bode all to well for power efficiency of the new design.
Samsung’s own scheduler and CPU characterization is very clear on the power and efficiency curves: throughout its performance scaling, the M5 cores are notably less efficient than the Cortex-A76 cores on the same SoC. We also note that the A55 data this year seemingly looks more realistic than what we’ve encountered on the Exynos 9820’s drivers last year.
The most striking differences in the power data from Samsung is the static leakage characteristics of the A76 and M5 cores. At an equal 1050mV voltage (2.5GHz on the A76, 2.6GHz on the M5), the Arm cores are characterized as leaking 78mW statically while the M5 cores use up 297mW. Static leakage is roughly corresponding to die area of the block – last year’s M4 cores were 3.72x larger than the A75 cores, and the static leakage difference here on the Exynos 990 is 3.8x, and I wouldn’t be surprised if this also ends up being the difference in area between the two CPU types.
One odd mechanism that Samsung had introduced in the Exynos 9820 was a more complex scheduler that differentiated power models based on the running ISA of the application. It tracked 32 and 64-bit apps separately and made scheduler decisions based on the microarchitectural performance and power characteristics of the different CPUs on the different execution modes.
This is said to help power efficiency, mostly by scheduling things more often onto the Arm middle cores which seemingly have a better 32-bit execution efficiency.
I was curious and I tried this out on the Exynos 990, comparing the relative differences in performance and efficiency between the M5 cores and the A76 cores. In the aggregate figures of SPECint2006, I unfortunately didn’t see any big difference at all in the execution modes. However individual subtests such as 456.hmmer, which are mostly execution bound, saw large advantages on the A76 cores, actually outperforming the M5 cores with a score of 13.53 vs 12.83 while using only half the energy. So in that regard, Samsung’s scheduling methodology makes a lot of sense. 400.perbench was another case of the A76 cores outperforming the M5 cores in 32-bit mode, using less than half the power. However, any more memory intensive workloads heavily favored the M5 cores, probably due to the stark differences in cache sizes. While I’m sure Samsung’s ISA based scheduling model reduces power, I do have to wonder what the absolute performance impact is in terms of using this mechanism.
Also unrelated to the whole ISA scheduling mechanism, I think this is the first time we’ve ever published benchmark numbers on the differences between AArch32 and AArch64 execution modes. The AArch64 performs significantly better due to it having more architectural registers available and being able to execute out-of-order code more efficiently, along with some ISA instruction improvements. Whilst there’s a power increase in this mode, we’re seeing much better efficiency as the performance improvements are greater. It’s also a good reason as to why the wider ecosystem is shifting to deprecate 32-bit on Arm.
It’s also to be noted that the M5 Lion core will be Samsung’s last commercial custom CPU design, as the design team had been disbanded back in October, and most employees by now have found new homes at different companies. I’ll be coming back to this decision in the context of the wider competitive landscape after we dissect the M5’s performance and efficiency.
Post Your CommentPlease log in or sign up to comment.
View All Comments
Andrei Frumusanu - Friday, April 3, 2020 - linkNo, there's no software application notion of displaying something at a given refresh rate - things just render as fast as possible unless. 3D games might have an FPS cap, but that's not refresh rate.
FunBunny2 - Friday, April 3, 2020 - linkthis is what I mean.
"If you can run a game at 100 frames per second, you may see a tangible benefit from playing it on a monitor that can refresh that many times per second. But if you’re watching a movie at a classic 24 FPS (frames per second), a higher refresh rate monitor won’t make any difference."
IOW, unless the processor sending either video or coded application images does so 120 per second, all the 120hz screen does is re-scan each image multiple times. how can the refresh rate create modified images, between those sent by the processor? or do 90/120hz screens do just that?
do you disagree with that author?
krazyfrog - Friday, April 3, 2020 - linkThe screen refreshes at a set rate regardless of the content being sent to it. In this case, it always refreshes at 120Hz. If the content is in 24fps, each frame of the video persists for 5 refreshes of the display. To the eye, it looks no different than watching the same 24fps video on a 60Hz display.
surt - Saturday, April 4, 2020 - linkNot true. It does not look the same to your eye, and the difference is the latency from the time that information is ready to display to the time it reaches your eye. The 120hz display will show that transition from e.g. the 23rd to the 24th frame significantly faster.
FunBunny2 - Sunday, April 5, 2020 - link" It does not look the same to your eye"
that's a may be. years ago I worked in a manufacturing plant, no windows and only florescent lights. one of the guys I worked with wore glasses that looked like very weak sunglasses, but no prescription. I asked him about them and he said his eye doctor prescribed them for his constant headaches. turns out that some folks rectify the 60hz flash of florescent light, and it hurts. the same phenomenon would occur with monitors. if you're not among the rectifiers, it's hard to see how you would see different at 120hz.
surt - Sunday, April 5, 2020 - linkAnd yet, it's not hard to see at all. Response tests are undeniable. People's reactions are unquestionably faster on 120hz. Whether you notice the difference or not, it exists.
surt - Saturday, April 4, 2020 - linkIt matters to any game. If your game updates at 30fps, the 120hz display will get that information to your eye a fraction faster than the 60hz display, because the 'time to next frame' + 'time to display next frame' is always smaller on the 120hz.
eastcoast_pete - Friday, April 3, 2020 - linkGreat review, thanks Andrei! Question: just how much power draw does the 5G modem add, especially the mm ones for us in the US? Along those lines, can the 5G function disabled in software, so not just deselected, but actually shut off? I imagine that the phone hunting for mm connectivity when it's not there could eat quite a bit of battery life.
Andrei Frumusanu - Friday, April 3, 2020 - linkI don't even have 5G coverage here so I wouldn't know!
Yes, 5G can be disabled in the options. I would assume that actually shuts off the extra RF. Similarly, I don't know how the mmWave antenna power management works.
eastcoast_pete - Friday, April 3, 2020 - linkThanks for the reply! mm 5G coverage is supposedly "available" in some places here in the US, but I don't believe the carriers here have set up anywhere near enough cells for it to be viable. Plus, even if I'd get Gb download rates, they still have caps on their plans, unless one shells out for the premium unlimited ones. And those make the 20 Ultra's price tag look like a bargain (: