Arm vs x86: объяснены наборы инструкций, архитектура и все ключевые различия

Arm VS x86 Intel

Кредит: Arm / Intel

Android способен работать на процессорах трех разных типов: Arm, Intel и MIPS. Первая — сегодня повсеместно распространенная архитектура после того, как Intel отказалась от своих процессоров для мобильных телефонов, в то время как процессоры MIPS для телефонов не использовались годами. Arm — это архитектура процессора, используемая всеми современными смартфонами в экосистемах Android и Apple. Процессоры Arm также выходят на рынок ПК через Windows on Arm и будущие пользовательские процессоры Apple для Mac. С приближением войны между процессорами Arm и Intel, вот и все, что вам нужно знать о Arm vs x86.

Объяснение архитектуры процессора

Центральный процессор (ЦП) — это «мозг» вашего устройства, но он не совсем умный. Процессор работает только тогда, когда ему даны очень конкретные инструкции — соответственно называемые набором команд, — которые говорят процессору перемещать данные между регистрами и памятью или выполнять вычисления с использованием определенной единицы выполнения (такой как умножение или вычитание). Уникальные аппаратные блоки процессора требуют разных инструкций. Они имеют тенденцию масштабироваться с более сложными и мощными процессорами. Желаемые инструкции могут также помочь в разработке аппаратного обеспечения, как мы увидим через мгновение.

Что такое SoC? Все, что нужно знать о чипсетах для смартфонов

Приложения, которые запускаются на вашем телефоне, не написаны в инструкциях процессора; это было бы безумием для современных кроссплатформенных приложений, которые работают на разных чипах. Вместо этого приложения, написанные на различных языках программирования более высокого уровня (например, Java или C ++), соблюдаются для конкретных наборов команд, чтобы они правильно работали на процессорах Arm или x86. Эти инструкции дополнительно декодируются в микрокод-процессоры внутри ЦПУ, что требует кремниевого пространства и питания. Если вы хотите использовать процессор с наименьшей мощностью, простота набора команд имеет первостепенное значение. Однако более высокая производительность может быть получена из более сложных аппаратных средств и инструкций за счет мощности. В этом принципиальное отличие подходов Arm и Intel к проектированию процессоров.

x86 традиционно нацелена на пиковую производительность, энергоэффективность Arm

Arm основывается на RISC (вычисление с сокращенным набором инструкций), а Intel (x86) — CISC (вычисления на основе сложных инструкций). Команды процессора Arm достаточно атомарны, с очень тесной корреляцией между количеством команд и микрооперациями. CISC, для сравнения, предлагает гораздо больше инструкций, многие из которых выполняют несколько операций (таких как оптимизированная математика и перемещение данных). Это приводит к повышению производительности, но к большему энергопотреблению при декодировании этих сложных инструкций.

Эта связь между инструкциями и конструкцией аппаратного обеспечения — вот что делает архитектуру процессора. Таким образом, архитектуры ЦП могут быть разработаны для различных целей, таких как экстремальное сокращение числа, низкое энергопотребление или минимальная площадь кремния. Это ключевое отличие, если смотреть на Arm vs x86 с точки зрения процессоров, поскольку первый основан на более низкой мощности, наборе команд и аппаратном обеспечении.

Современные 64-битные архитектуры процессоров

 Intel 10th Ice Ice Lake

Кредит: Intel

Сегодня 64-разрядные архитектуры широко распространены на смартфонах и ПК, но это не всегда так. Телефоны не переключались до 2012 года, примерно через десять лет после ПК. В двух словах, 64-разрядные вычисления используют регистры и адреса памяти, достаточно большие, чтобы использовать 64-разрядные (1 и 0) типы данных длиной. Помимо совместимого оборудования и инструкций, вам также потребуется 64-разрядная операционная система, например, Android.

Ветераны индустрии могут вспомнить шумиху, когда Apple представила свой первый 64-разрядный процессор, опередив своих конкурентов на Android. Переход на 64-разрядную версию не изменил повседневные вычисления. Однако важно использовать математическую эффективность при использовании высокоточных чисел с плавающей точкой. 64-разрядные регистры также улучшают точность 3D-рендеринга, скорость шифрования и упрощают адресацию более 4 ГБ ОЗУ.

Сегодня обе архитектуры поддерживают 64-битную архитектуру, но в мобильных телефонах она появилась совсем недавно.

ПК перешли на 64-разрядную версию задолго до смартфонов, но не Intel разработала современную архитектуру x86-64 (также известную как x64). Эта награда принадлежит анонсу AMD от 1999 года, который модернизировал существующую архитектуру Intel x86. Альтернативная архитектура Intel IA64 Itanium отошла на второй план.

Arm представила свою 64-битную архитектуру ARMv8 в 2011 году. Вместо расширения своего 32-битного набора команд Arm предлагает чистую 64-битную реализацию. Для этого в архитектуре ARMv8 используются два состояния выполнения: AArch32 и AArch64. Как видно из названий, один предназначен для запуска 32-разрядного кода, а другой — для 64-разрядного. Прелесть дизайна ARM в том, что процессор может плавно переключаться из одного режима в другой во время его нормального выполнения. Это означает, что декодер для 64-битных инструкций — это новый дизайн, которому не нужно поддерживать совместимость с 32-битной эпохой, однако процессор в целом остается обратно совместимым.

Читать далее: Arm Cortex-X1 борется с мощными процессорами Apple

Гетерогенный компьютер Arm выиграл у мобильного

Обсуждаемые выше архитектурные различия частично объясняют текущие успехи и проблемы, с которыми сталкиваются два чиповых бегемота. Подход Arm с низким энергопотреблением идеально подходит для мобильных устройств, требующих 3,5 Вт тепловой мощности (TDP), и при этом производительность возрастает в соответствии с чипами Intel для ноутбуков. Между тем, Intel Core i7 мощностью 100 Вт TDP, как правило, выигрывает у серверов и высокопроизводительных настольных компьютеров, но исторически изо всех сил пытается снизить мощность до 5 Вт. Увидеть сомнительный состав Atom,

Конечно, мы не должны забывать о роли, которую кремниевые производственные процессы сыграли в значительном повышении энергоэффективности за последнее десятилетие. Вообще говоря, меньшие процессорные транзисторы потребляют меньше энергии. Intel застряла, пытаясь отойти от своего собственного 14-нм технологического процесса 2014 года. За это время наборы микросхем для смартфонов изменились с 20 нм до 14, 10, а теперь и 7 нм, а в 2021 г. ожидается 5 нм. Это было достигнуто просто за счет усиления конкуренции между Samsung и литейным цехом TSMC.

Однако одна уникальная особенность архитектуры Arm особенно полезна для поддержания низкого TDP для мобильных приложений — гетерогенные вычисления. Идея достаточно проста: создать архитектуру, которая позволяет различным частям ЦП (с точки зрения производительности и мощности) работать вместе для повышения эффективности.

Кредит: Рука

Способность Arm распределять рабочие нагрузки между высокопроизводительными и низкоэффективными ядрами ЦП является благом для энергоэффективности

Первый удар Arm по этой идее был большим. Немного в 2011 году с большим ядром Cortex-A15 и маленьким ядром Cortex-A7. Идея использования больших процессорных ядер нестандартного исполнения для требовательных приложений и энергосберегающих процессорных конструкций для фоновых задач — это то, что пользователи смартфонов считают само собой разумеющимся сегодня, но потребовалось несколько попыток сгладить формулу. Arm построил эту идею на DynamIQ и архитектуре ARMAv8.2 в 2017 году, позволяя разным процессорам размещаться в одном кластере, разделяя ресурсы памяти для гораздо более эффективной обработки. DynamIQ также позволяет использовать процессор 2 + 6, который все чаще используется в чипах среднего класса.

Связанный: Одноядерные и многоядерные процессоры: что лучше для смартфонов?

Конкурентные чипы Intel Atom без гетерогенных вычислений не могут сравниться с балансом производительности и эффективности Arm. До 2020 года для проектов Intel Foveros, Embedded Multi-Die Interconnect Bridge (EMIB) и Hybrid Technolgy была разработана конкурирующая конструкция чипа — 10-нм Lakefield. Lakefield сочетает в себе одно высокопроизводительное ядро ​​Sunny Cove с четырьмя энергосберегающими ядрами Tremont, а также графические и коммуникационные функции. Тем не менее, даже этот пакет предназначен для подключенных ноутбуков с 7 Вт TDP, который все еще слишком высок для смартфонов.

Intel Lakefield Hybrid CPU Design

Intel Lakefield с гибридной технологией использует принципы проектирования, аналогичные Arm’s big.LITTLE
Кредит: Intel

Сегодня Arm vs x86 все чаще сражается в сегменте ноутбуков TDP мощностью менее 10 Вт, где Intel сокращает свои масштабы, а Arm все более успешно наращивает. Новости Apple о том, что она перейдет на собственные специализированные чипы Arm для Mac, являются ярким примером растущего роста производительности архитектуры Arm, отчасти благодаря гетерогенным вычислениям наряду с пользовательскими оптимизациями, сделанными Apple.

Custom Arm ядра и наборы инструкций

Еще одно важное различие между Arm и Intel заключается в том, что последний контролирует весь процесс от начала до конца и напрямую продает свои чипы. Arm просто продает лицензии. Intel сохраняет свою архитектуру, дизайн ЦП и даже производство полностью внутри компании. Arm, для сравнения, предлагает разнообразные продукты партнерам, таким как Apple, Samsung и Qualcomm. Они варьируются от готовых конструкций ядер ЦП, таких как Cortex-A78, до конструкций, созданных в партнерстве с помощью программы Arm CXC, и лицензий на пользовательскую архитектуру, которые позволяют таким компаниям, как Apple и Samsung, создавать собственные ядра ЦП и даже вносить изменения в набор инструкций.

Следующий: Отказ от пользовательских процессоров — это правильный вызов для Exynos от Samsung

Создание пользовательских процессоров является дорогостоящим и сложным процессом, но правильное выполнение которого может привести к значительным результатам. Процессоры Apple демонстрируют, как специальное оборудование и инструкции значительно повышают производительность Arm по сравнению с мейнстримом x86. Хотя ядра Samsung Mongoose были более спорными.

На момент написания этой статьи самый мощный в мире суперкомпьютер Fugaku работал на Arm

Архитектура Intel остается впереди с точки зрения сырой производительности в потребительском аппаратном пространстве. Но сейчас Arm очень конкурентоспособна в сегментах продуктов, где высокая производительность и энергоэффективность остаются ключевыми, включая рынок серверов. На момент написания статьи самый мощный суперкомпьютер в мире впервые работал на ядрах CPU Arm. Его A64FX SoC разработан Fujitsu и впервые использует архитектуру Armv8-A SVE.

Совместимость программного обеспечения

Чипсет Qualcomm Snapdragon 8cx 4

Кредит: Дэвид Имел / Android Authority

Как мы упоминали ранее, приложения и программное обеспечение должны быть скомпилированы для архитектуры процессора, на которой они работают. Исторический брак между процессорами и экосистемами (такими как Android on Arm и Windows на x86) означал, что совместимость никогда не была проблемой, поскольку приложениям не нужно было работать на нескольких платформах и архитектурах. Однако рост числа кроссплатформенных приложений и операционных систем, работающих на нескольких архитектурах ЦП, меняет этот ландшафт.

Apple Mac на базе Arm, ОС Chrome от Google и Windows on Arm от Microsoft — все это современные примеры, когда программное обеспечение должно работать на архитектурах Arm и Intel. Компиляция собственного программного обеспечения для обоих — это вариант для новых приложений и разработчиков, желающих инвестировать в перекомпиляцию. Чтобы заполнить пробелы, эти платформы также полагаются на эмуляцию кода. Другими словами, перевод кода, скомпилированного для одной архитектуры ЦП, запускается на другой. Это менее эффективно и снижает производительность по сравнению с нативными приложениями, но в настоящее время возможна хорошая эмуляция, чтобы обеспечить работу приложений.

После многих лет разработки эмуляция Windows on Arm была в довольно хорошем состоянии для большинства приложений. Приложения Android работают на Intel Chromebook по большей части тоже прилично. Нам придется подождать и посмотреть, будут ли работать Arm Macbooks.

Arm vs x86: последнее слово

За последнее десятилетие соперничества Arm vs x86 Arm одержал победу в качестве выбора для устройств с низким энергопотреблением, таких как смартфоны. Архитектура теперь также делает успехи в ноутбуках и других устройствах, где требуется повышенная энергоэффективность. Несмотря на проигрыш в телефонах, усилия Intel по снижению энергопотребления также улучшились за эти годы, и теперь Lakefield делится гораздо больше общего с традиционными процессорами Arm, которые можно найти в телефонах.

Тем не менее, Arm и x86 заметно отличаются от инженерной точки зрения и имеют свои сильные и слабые стороны. Тем не менее, сценарии потребительского использования в этих двух областях становятся размытыми, поскольку экосистемы все в большей степени поддерживают обе архитектуры. Тем не менее, несмотря на то, что в сравнении Arm с x86 есть пересечение, именно Arm в обозримом будущем останется предпочтительной архитектурой для индустрии смартфонов.

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *