Противостояние архитектур ARM и x86 — это, пожалуй, самая затяжная и захватывающая битва в истории процессоростроения. Почти полвека назад эти платформы стартовали в совершенно разных весовых категориях, а сегодня сошлись в клинче за ноутбуки, настольные ПК и, что самое главное, за сегмент серверов. Всего несколько лет назад фраза “сервер на ARM” вызывала у опытных сисадминов сильнейший когнитивный диссонанс, однако сейчас ARM-процессоры не просто занимают место в облаках AWS, Azure и Google, но и начинают диктовать свои правила, а в игру вступают те, кого уж точно не ожидали на CPU-поприще — Nvidia и саму ARM Holdings. В общем, индустрия процессоров переживает крупнейший исторический сдвиг, но несмотря на это, многие энтузиасты до сих пор задаются вопросом: “Да чем же, черт возьми, архитектура ARM отличается от x86? Откуда такая шумиха?”. Чтобы ни у одного айтишника больше не осталось такого нелепого вопроса, команда ServerFlow решила рассказать вам о ключевых отличиях архитектур ARM и x86, а также объяснить, что ждет эти передовые платформы в ближайшем будущем.
Что такое архитектура процессора?
Если отбросить глубокий технический лор, то архитектура процессора — это, выражаясь лирически, та самая невидимая граница между железом и кодом, который на нем исполняется. В основе процессорных архитектур лежит система команд, также известная как ISA (Instruction Set Architecture). Это, по сути, язык, на котором софт общается с кремнием и дает ему команды к действию, а также то, как эти команды декодируются, исполняются и как организована работа с памятью.
В архитектуре x86 ISA была исполнена в виде набора команд CISC (Complex Instruction Set Computing). CISC — это подход, при котором процессор имеет богатый набор команд с переменной длиной от 1 до 15 байт, каждая из которых может выполнять довольно сложные действия за один такт: например, загрузить операнд из памяти, умножить его на регистр и записать результат обратно в память. Благодаря этому, команды на CISC могут исполнять более плотный код, но взамен тратится много энергии на декодирование этих инструкций. К тому же, CISC, появившийся еще в 1960-х годах, уже через 20 лет стал настолько перегружен разными, уже не используемыми командами, что многие исполнительные блоки в процессорах просто простаивали.
Инженеры посмотрели на все это дело и решили, что инструкции CISC можно упростить, сделав их менее энергозатратными, пожертвовав плотностью исполняемого кода и вычистив старые, уже неактуальные команды. Так появился набор команд RISC (Reduced Instruction Set Computing), а вместе с ним сильно позднее появилась архитектура ARM. Идея RISC заключается в том, чтобы сделать все инструкции простыми, фиксированной длины (4 байта), с четким разделением обязанностей: работа с памятью — только через load и store, а вся арифметика — только над регистрами. Это резко упрощает декодирование и конвейеризацию, а освободившееся место на кристалле можно пустить на большее количество регистров и исполнительных блоков.
Схема выполнения команд инструкциями CISC и RISC. Источник: .
Шли годы, эти архитектуры шли параллельно друг другу и никак не пересекались, но в какой-то момент в лагере CISC поняли, что так дело не пойдет, и начали применять подход RISC в своей системе. В современности x86-процессоры давно не выполняют CISC-команды напрямую. Аппаратный декодер разбивает их на простые RISC-подобные микрооперации, которые уже идут по конвейеру. А ARM-процессоры обросли собственными расширениями (SVE, криптографические инструкции, NEON), которые по сложности не уступают многим CISC-инструкциям. Так что сейчас именно микроархитектура чипов (Zen 5 у AMD или Olimpus у Nvidia), а не просто набop команд, определяет, будет ли чип жечь сотни ватт ради максимального IPC или довольствоваться единицами ватт в пассивном охлаждении.
Как появились архитектуры ARM и x86
Если наборы команд CISC и RISC появились еще на заре вычислительных технологий, то полноценные известные нам архитектуры ARM и x86 появились спустя пару десятилетий после своих прародителей.
История x86 началась в 1978 году, когда Intel выпустила процессор 8086 с одноименной системой команд. Это был классический CISC-подход: сложные инструкции переменной длины, которые могли за одну операцию выполнить и загрузку данных, и арифметику, и запись результата. Такой дизайн был выгоден во времена, когда память была дорогой, не вместительной и жутко медленной, а компиляторы — примитивными: лучше пусть процессор возьмет на себя сложную работу по декодированию, зато программа займет меньше байт. В 1981 году компания IBM решила использовать набор команд 8086 для своего первого CPU PC, купив лицензию у Intel, и это дало старт дальнейшему развитию новой микроархитектуры x86 (последние две цифры 8086), которая постепенно начала обрастать новыми наборами инструкций (от MMX до AVX-10) как снежный ком. Всем уже тогда было понятно, что декодирующее устройство жрет чуть ли не большую часть TDP процессора, но альтернативных вариантов просто не было — приходилось нести этот крест, компенсируя сложность декодера все более умными кэшами микроопераций и предсказателями. Тем не менее, архитектура продолжала развиваться, в 1995 году появилась 32-битная версия, а к 2003 году из-под крыла AMD свет увидел и 64-битный x86, более известный нам сегодня как x86-64, которая и лежит в основе современных CPU.
Процессор Intel 8086, прародитель архитектуры x86. Источник: .
Архитектура ARM родилась в 1983 году как амбициозный проект британской компании Acorn Computers, которая в те времена меркнула в тени Intel. Команда решила пойти по нестандартному пути, заменив перегруженный набор инструкций CISC на легкий RISC, чтобы создать процессор ARM1 для будущего компьютера Archimedes. Однако после выхода компьютера Archimedes восторга у широкой публики он не возымел — никто не хотел покупать ПК от маленькой компании. Все изменилось в 1990-х, когда ARM отделилась от материнской Acorn Computers, провалившейся в кризис, и стала самостоятельной компанией, занимающейся разработкой и лицензированием передовой процессорной архитектуры. В том же году произошло знаменательное событие, и к никому неизвестной ARM обратилась компания Apple, которая искала чипы для своего карманного компьютера Newton. Так ARM стала с огромной скоростью набирать обороты, хоть и по началу только в мобильном сегменте. Долгое время ARM ограничивалась лишь 32-битной версией, но в 2011 году вышла полноценная 64-битная архитектура, которая на сегодняшний день известна под именем AArch64.
Центральный процессор ARM1 — первый в своем роде чип на энергоэффективной архитектуре. Источник: .
Ключевые технические отличия
С историей мы разобрались, и по ходу дела даже успели подсветить некоторые отличия ARM и x86. Но на самом деле разница между двумя процессорными архитектурами намного более глубока и не заканчивается на наборе инструкций.
Система команд и декодирование
Как мы уже упоминали, современная архитектура x86-64 унаследовала от 32-битного предка инструкции переменной длины от 1 до 15 байт, что дает высокую плотность кода, но превращает декодирование в сложную задачу. Блок предварительного декодирования вынужден на лету находить границы команд в потоке байт. Однако современные ядра Intel (Golden Cove, Granite Rapids) и AMD (Zen 4, Zen 5) давно компенсируют это огромными кэшами микроопераций — буферами, куда попадают уже декодированные RISC-подобные микрооперации. В горячих циклах декодер фактически простаивает, и ядро питается из этого кэша. Но при промахах включается громоздкий и энергоемкий декодер, который может обрабатывать лишь 4-6 инструкций за такт.
В свою очередь, AArch64 изначально использовала и до сих пор использует фиксированную длину инструкций в 4 байта, что позволяет декодеру гарантированно подавать в конвейер по 4-6 инструкций за такт без сложной логики преддекодирования. Это экономит место на кристалле и энергию, которые ARM-дизайнеры направляют на увеличение исполнительных портов и регистрового файла.
Модель памяти и упорядочение обращений
Архитектура x86-64 реализует относительно строгую модель согласованности памяти — total store order (TSO). Все ядра видят записи в память в одном и том же порядке, и программист может полагаться на то, что запись не будет переупорядочена с последующими чтениями без явных барьеров. Это упрощает написание низкоуровневого многопоточного кода, но ограничивает возможности процессора по спекулятивному переупорядочению обращений к памяти.
Как работает модель использования памяти TSO в процессорах x86. Источник: .
AArch64 по умолчанию использует relaxed memory ordering: процессор может свободно переставлять чтения и записи, если это не нарушает логики однопоточной программы. Это позволяет более эффективно использовать пропускную способность памяти и снижать задержки, но требует от разработчиков аккуратно расставлять барьеры памяти (dmb, dsb). В высокоуровневом коде на C++ или Rust эти различия скрыты компилятором, но для оптимизации серверного софта это может вставить палки в колеса.
Как работает модель использования памяти relaxed memory ordering в процессорах ARM. Источник: .
Энергоэффективность и производительность
Говорят, что “ARM энергоэффективнее, а x86 производительнее”, но это абсолютно некорректно. Все зависит от микроархитектуры конкретного ядра, сценария их использования и, соответственно, установленного TDP. Мобильные ARM-ядра (ARM Cortex, Apple M и А серий) действительно спроектированы под минимальное энергопотребление. Но серверные ядра Neoverse V2 в NVIDIA Grace и Vera или Neoverse V3 ARM-AGI — назвать энергоэффективными можно лишь с натяжкой: глубокое внеочередное исполнение, гигантские буферы и высокие тактовые частоты делают разницу по TDP относительно x86-64 минимальной. И наоборот, Intel в ядрах E-core (Darkmont) показала, что x86-64 может быть очень холодной при правильном дизайне.
Передовой центральный процессор Nvidia Vera на архитектуре ARM. Источник: .
Гетерогенность
ARM почти 10 лет назад внедрила технологию big.LITTLE (а теперь DynamIQ), которая объединяет высокопроизводительные и энергоэффективные ядра на одном кристалле. Intel ответила гибридной архитектурой с P-cores и E-cores начиная с процессоров Alder Lake. Это еще один пример, как x86-64 позаимствовала подход AArch64, так как принципы работы гетерогенных ядер идентичны: быстрые ядра включаются для тяжелых потоков, экономичные ядра берут на себя фоновую нагрузку. Единственная разница в реализации этого подхода: у ARM за распределение нагрузки отвечает софт, а в x86 — аппаратный блок.
Технологии ARM big.LITTLE и DynamIQ. Источник: .
SIMD и векторные расширения
x86-64 прошла долгий путь от инструкций MMX и SSE до AVX-512 и AVX10. Это надолго укрепило позиции x86 как наиболее мощной архитектуры для выполнения векторных операций. Но со временем ARM догнала конкурента с выходом AArch64, где впервые появились расширения Neon (128-битный SIMD) и SVE/SVE2 — векторные расширения с масштабируемой длиной вектора от 128 до 2048 бит. Благодаря этому ARM смогла сделать большой скачок от мобильных процессоров до серверных CPU, так как векторные наборы расширений значительно ускорили операции в HPC и ИИ-инфраструктурах.
ПО и совместимость
Может показаться, что ARM — это однозначный лидер, так как эта архитектура уже практически во всем обошла x86, а последняя активно черпает из конкурента различные технологичные новшества. На аппаратном уровне это близко к правде, но на уровне софта расстановка сил резко меняется в сторону x86. Архитектура x86 правила балом более 50 лет, и весь десктопный, серверный и корпоративный софт писался именно под эту платформу. Индустрия десятилетиями вкладывала миллиарды в оптимизацию под x86, и просто так этот багаж не выбросить. Ввиду этого, ARM долгое время плелась в хвосте именно из-за проблем с совместимостью: запуск x86-бинарников на ARM требовал эмуляции, и это убивало производительность. Но две вещи перевернули игру.
Первая — быстрая эмуляция. Apple в 2020 году с переходом на M1 показала Rosetta 2 — транслятор, который конвертирует x86-код в ARM64 на лету, причем делает это на этапе установки приложения, а не во время исполнения. Результат: большинство старых Mac-программ работали на M1 быстрее, чем на Intel MacBook Air. Microsoft, в свою очередь, вложилась в Windows on ARM и эмуляцию x86-приложений. Пока эта эмуляция не идеальна, но для базового бизнес-софта и браузеров ее уже достаточно.
Вторая — серверная ARM-революция. С неожиданным приходом компании Nvidia в сегмент серверных процессоров с передовыми чипами Grace/Vera, ARM-процессоры доказали, что все проблемы с совместимостью “энергоэффективной” архитектуры с легкостью снимаются мощным программным стеком CUDA, в котором есть буквально все для успешной интеграции ARM-чипов в ИИ-инфраструктуру. Успех Nvidia подтолкнул облачных провайдеров, таких как AWS, Azure и Google разрабатывать собственные ARM-чипы, а совсем недавно на рынок CPU вовсе вышла компания ARM, представив свои первые передовые чипы ARM-AGI. Тенденция ясна: ARM активно внедряется в серверную индустрию, и это подталкивает разработчиков софта создавать ПО, бесшовно совместимое с AArch64.
Будущее архитектур ARM и x86
Итак, к чему идет вся эта эпопея? Неужели x86 скоро умрет? Нет, не умрет, это предсказание мы слышим уже лет 10, и оно упорно не сбывается. Intel и AMD продолжают вкладывать миллиарды в новые техпроцессы и микроархитектуры, и пока x86 удерживает позиции там, где нужна абсолютная однопоточная производительность и 100% бинарная совместимость с наследием: корпоративные Windows-инфраструктуры, рабочие станции с проприетарным CAD и так далее. Более того, x86 активно мимикрирует: гибридные ядра, чиплеты, ускорение AI прямо на кристалле (Intel Meteor Lake с NPU, AMD Ryzen AI) — это прямой ответ на угрозу со стороны ARM.
Но ARM больше не “догоняющая”. В 2024-2025 годах мы увидели, как Qualcomm с чипами Snapdragon X Elite на архитектуре Nuvia врывается на рынок ноутбуков с Windows, демонстрируя высокую производительность и многочасовую автономность. Ampere представляет 192-ядерные процессоры для облака. NVIDIA готовится к выпуску на рынок чипов Vera — 88-ядерных CPU для ИИ-фабрик на кастомных ядрах ARM Olympus. А компания ARM собственной персоной выходит на рынок серверных CPU c 136-ядерным ARM-AGI, обещающими огромную производительность при сохранении энергоэффективности. Все это означает, что ARM больше не просто “экономичный” вариант — это архитектура, которая на равных бьется с x86, которая когда-то была неоспоримым лидером серверной индустрии. Более того, ARM в серверах уже начинает доминировать по доле энергоэффективных ядер в облаке, а с приходом ИИ-нагрузок, где критично количество ядер и пропускная способность памяти, она чувствует себя как рыба в воде.
Что будет дальше? Скорее всего, нас ждет сосуществование, при котором x86 сохранит нишу максимальной однопоточной производительности и строгой бинарной совместимости для legacy-софта, а ARM продолжит отъедать все, что связано с облачными микросервисами, AI-инференсом и мобильными вычислениями. Граница размывается: ARM-чипы становятся все более зрелыми, x86-чипы — все более экономичными. В конечном счете пользователю будет все равно, что внутри сервера, лишь бы софт работал быстро и не жрал бюджет на электричество.
Выводы
Битва ARM и x86 — это не борьба “хорошего с плохим, а эволюция двух подходов к решению одной задачи: как выжать максимум из кремния. x86 подарила нам эру персональных компьютеров и серверов, ARM — мобильную революцию и теперь идет завоевывать ЦОД. Сегодня мы видим, что ARM уже вплотную приблизилась к x86 в серверном сегменте по производительности на ватт. А с появлением процессоров вроде NVIDIA Vera и AmpereOne окончательно перестала быть догоняющим x86 же отвечает конвергенцией: впитывает идеи ARM (гибридные ядра, NPU, чиплеты) и держит оборону там, где важна абсолютная совместимость — граница между ARM и x86 активно стирается, так что проектировать серверную инфраструктуру на альтернативной архитектуре в ближайшее время перестанет быть моветоном.
Сейчас тут ничего нет. Ваш комментарий может стать первым.
Скидка 1 500 ₽ или бесплатная доставка - уже сейчас 🔥
Мы ценим обратную связь от клиентов. При оформлении заказа вы можете сообщить о своём намерении поделиться впечатлением о работе ServerFlow после получения товара.
* - скидка предоставляется при покупке от 30 000 рублей, в ином случае предусмотрена бесплатная доставка до ПВЗ СДЭК.
Продолжная использовать наш сайт, вы даете согласие на использование файлов Cookie, пользовательских данных (IP-адрес, вид операционной системы, тип браузера, сведения о местоположении, источник, откуда пришел на сайт пользователь, с какого сайта или по какой рекламе, какие страницы
открывает и на какие страницы нажимает пользователь) в целях функционирования сайта, проведения статистических исследований и обзоров. Если вы не хотите, чтобы ваши данные обрабатывались, покиньте сайт.
При оформлении заказа в ServerFlow вы можете сообщить о намерении оставить отзыв о нашей работе после получения товара.
Нам важно ваше честное мнение. Оно помогает развивать сервис и даёт другим клиентам представление о нашей работе.
Вы можете оставить отзыв на удобной для вас платформе:
Google Maps
2GIS
Яндекс Карты
Как работает акция
Применяя промокод, вы подтверждаете намерение поделиться впечатлением о работе ServerFlow после получения заказа. Мы применяем бонус уже к текущему заказу в знак благодарности за обратную связь.
Условия акции:
скидка 1 500 ₽ при заказе от 30 000 ₽
или бесплатная доставка* при заказе до 30 000 ₽
* Бесплатная доставка заказа осуществляется до ПВЗ СДЭК.