Различия между ARM и Intel x86-64

Различие между Intel Arm Featured

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

Содержание

  • Что такое x86-64?
  • Наборы команд
  • Потребление энергии
  • Стоит ли мне покупать систему ARM или x86?

Читать: Может ли ARM в конечном итоге заменить процессор x86 в ноутбуках? Давайте выясним!

Что такое x86-64?

Процессоры Intel, найденные в настольных и портативных компьютерах, иногда называют процессорами “x86”. 64-битная архитектура, которую используют все современные компьютеры, теперь построена на модели x86, которую теперь называют “x86-64”.

Это звучит несколько запутанно, но это помогает объяснить, почему на Windows есть две разные папки Program Files.

X86arm Programfiles

Чтобы упростить, все 32-битные приложения помещаются в папку x86, а 64-битные — в другую папку. Это было правилом с тех пор, как Microsoft выпустила свою 64-битную версию Windows XP в 2001 году.

Чтобы немного упростить, мы будем называть “x86-64” как “x86”, так как между 32-битными и 64-битными чипами достаточно схожести, чтобы сгруппировать их вместе.

Название “x86” происходит от прародителя современного процессинга, микропроцессора, созданного Intel, названного 8086. Этот 16-битный чип работал на основе набора команд, который в значительной степени используется современными процессорами для выполнения сложных вычислительных задач.

Все — от вашего текстового редактора до программного обеспечения для продвинутого видеоредактирования — до сих пор может работать на архитектуре, которая родилась в 1978 году!

С момента выпуска микропроцессора 8086 Intel продолжала использовать эту систему именования для будущих моделей, таких как 80286 и 80386, пока она не нарушила традицию, выпустив серию Pentium. Тем не менее, мы по-прежнему отдаем дань уважения тем старым чипам, классифицируя все последующие процессоры, которые используют его набор команд, как “x86”.

Даже более современные 64-битные процессоры, которые AMD впервые выпустила в серии Opteron в 2000-х, получили то же самое обозначение, поскольку подавляющее большинство 64-битных процессоров в настольных системах и серверах по-прежнему опираются на скромный 8086.

Наборы команд

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

Чип Intel i386

Здесь мы подходим к основной разнице между чипами ARM и x86.

Чипы x86 используют сложную вычислительную архитектуру (CISC), тогда как чипы ARM используют сокращённую вычислительную архитектуру (RISC). В то время как чипы CISC пытаются вложить больше “работы” в одну команду, жертвуя тактовыми периодами для выполнения этой задачи, чипы RISC (как подсказывает название) имеют гораздо меньший набор команд, который разбивает всё на более простые шаги, которые могут выполняться за один тактовый цикл.

CISC против RISC

Если чип CISC должен перемножить два числа, он может выполнить одну команду: MULT 2, 3. Эта единственная команда охватывает загрузку чисел из памяти, перемножение их и сохранение результата в правильном месте памяти. Чип RISC, выполняющий ту же операцию, потребует гораздо больше шагов. Сначала команда LOAD, чтобы переместить числа из регистров в исполнительный блок. Затем команда PROD, чтобы перемножить числа. Наконец, команда STOR, чтобы поместить результат в нужный регистр.

Apple M1 SoC на MacBook

Хотя чип CISC может показаться более эффективным, потому что его команды кажутся проще, стоит помнить о нескольких важных различиях:

  • Во-первых, чипы CISC выполняют команды в течение нескольких тактовых циклов, в то время как каждая команда в чипе RISC выполняется за один тактовый цикл. Из-за этого наша гипотетическая команда MULT может выполняться за такое же количество циклов, как набор инструкций RISC, выполняющий ту же задачу.
  • Во-вторых, все инструкции и логика CISC должны храниться в транзисторах. Чипы RISC могут использовать меньше транзисторов, потому что им нужно хранить меньше инструкций.
  • В-третьих, меньшее количество транзисторов, необходимое для RISC, позволяет снижать потребление энергии.

Есть некоторые преимущества CISC. Во-первых, компьютеру не нужно тратить много усилий, чтобы преобразовать с уровня человеческого языка программирования, такого как C, в уровень ассемблерного языка. На самом деле, команда MULT, упомянутая выше, очень похожа на команду C foo = foo * bar.

Чипы RISC требуют от компилятора выполнять гораздо больше работы, чтобы привести код к ассемблерному языку. Чипы CISC также могут выполнять свои операции непосредственно в системной памяти, в то время как чипам RISC необходимо извлекать данные из памяти в регистры процессора перед тем, как работать с ними.

В соревновании по производительности между двумя чипами, с точки зрения потребителей, нет четкого победителя. Тем не менее, RISC имеет ещё один козырь в рукаве, чтобы действительно получить преимущество над CISC.

Потребление энергии

Между CISC и RISC здесь абсолютно нет соревнования, когда дело доходит до потребления энергии. RISC безусловно занимает первое место. Сокращённый набор инструкций обеспечивает уменьшенный размер кристалла, что делает чип меньше и, следовательно, менее энергозатратным.

Внутренние компоненты традиционного настольного блока питания ATX

Меньшие чипы с меньшим количеством микроскопических компонентов также имеют меньшую электрическую сопротивляемость и не требуют столько ватт для работы. Лучший пример этого — доказанная технология смартфона, “полукомпьютера”, который обладает огромной производительностью для своих относительно небольших размеров, но в многих случаях может работать более 24 часов на сравнительно небольшом аккумуляторе.

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

Стоит ли мне покупать систему ARM или x86?

С выходом Microsoft Windows 11 для архитектуры ARM и переходом Apple на чипы ARM вы можете также захотеть приобрести ПК на ARM. Однако это сводится ко всему к одному очень простому вопросу: вы пытаетесь извлечь максимум производительности на ватт-час, предоставленный вашей батареей? Или вы больше склонны к тому, чтобы добиться максимально возможной первичной производительности, даже если это повредит времени работы от батареи?

Для большинства случаев использования, для которых кто-то будет покупать систему, решение так же просто. В конце концов, просто убедитесь, что не забыли захватить зарядный кабель с собой!