Не в софте. А в куче легасятины, чей саппорт тянется ещё с 8086, и совместимость с старыми инструкциями. Это то, благодоря чему ты можешь на своем пк без особых проблем запустить программу из прошлого века, и она будет работать. Без рекомпила.
В армах же, нет груды легаси. И ещё более расслабленная модель памяти, проц имеет больше возможностей переупорядочивать инструкции и исполнять их быстрее за счет этого, т.к. в некоторых случаях можно не ждать, а выполнить определенную часть сразу.
Ещё наконец-то уменьшили потери производительности при синхронизации данных из dma и кешей проца. И оверхед на шаринг данных между данными поменьше. В интелах реализация когерентности кешей, при шаринге данных в многопоточке, для надежной реализации mesi порой мог в два раза перф убивать, ибо на x86 практически гарантированный sequential consistency.
И ещё арбитраж памяти попроще, но и сложнее. Зато без лишних копирований. Как у плойки, память общая.
Ну и кластер из 4+4 big.LITTLE с одной стороны даёт профит по энергоэффективности, с другой, надо очень грамотно реализовывать шедуллер. Впрочем, тут немного спасет общий l3 кеш. Без него было бы прям грустно в момент переключения таски на другое ядро, где кеши забиты иным плейлоадом, нежели актуальным для таски.