Почему за Apple M1 будущее и в чём отличия ARM от x86

Автор Василий Шкодник 22:02 14.11.2020
- 1 +  26 314 14
Почему за Apple M1 будущее и в чём отличия ARM от x86

8 ядер CPU, 8 ядер GPU и 16 ядерный нейрочип. Всё это звучит внушительно и всё это главные цифры, которые нам рассказывала Apple во время презентации своего первого ARM-чипа для компьютеров — M1.

Почему за такими чипами будущее? И как Apple смогла его доставить к нам домой уже сегодня? Отвечаем в нашем материале!

Что Apple говорила на презентации

Началось всё с релиза чипа, а потом и первых устройств на нём — MacBook Air с пассивным охлаждением, Mac mini и MacBook Pro 13". Все они работают на одном и том же кристалле. Рассказ о каждом из этих чудесных компьютеров сопровождался графиками, в которых Apple M1 преподносился чуть ли не как самый мощный чип на рынке.

С каким чипом Купертиновцы сравнивали своё детище первое время было непонятно. Журналисты сделали предположение, что речь шла об Intel Core i3 и Intel Core i5, которые стояли в базовых версиях вышеупомянутых компьютеров прошлых поколений. Позже на страницах новых продуктов под звёздочкой уточнили подробности — оказалось, что для сравнения брали чипы Intel Core i3 и Intel Core i7.

12 ноября в интернете появились первые результаты тестирования новых устройств в Geekbench и Apple M1 оказался мощнее Intel Core i9, который стоит в топовом MacBook Pro 16" и мощнее Intel Xeon, на котором работает Mac Pro 2013 года. И всё это в мультиядерном тесте! Мощнее только новые iMac Pro и Mac Pro.

Если посмотреть на результаты в одноядерном тестировании, то тут Apple M1 вообще нет равных. Даже последнее поколение AMD Ryzen 9 уступает в производительности Apple M1. Но в многоядерном тестировании, относительно всей «больницы» Apple M1 есть куда стремиться, но это ARM-чип, который потребляет энергии в много раз меньше тех железок. К сожалению, пока Apple M1 не может использоваться в серьёзных рабочих станция и самом максимальном MacBook Pro 16" — об этом чуть позже.

Что внутри Apple M1?

Итак, процессор, который нам показала Apple — это система на кристалле (SoC). Не сказать, что это какое-то новшество, потому что по такому же принципу делаются чипы для мобильных устройств.

На плате располагается несколько блоков всякого интересного. В первую очередь это блок CPU: 8 вычислительных ядер, которые работают по принципу big.LITTLE, когда первые четыре ядра являются малоэффективными и используются во время выполнения простых задач, а другие четыре ядра для сложных. Это, кстати, и делает чип Apple энергоэффективнее x86-аналогов от Intel и AMD. В то время как у них мощность регулируется снижением и потреблением частоты, у ARM переключением вычислительных блоков. Из-за этого компьютеры на Intel и AMD греются и явно неспособны выдать до 20 часов автономной работы, а именно столько будет работать новый MacBook Air. Если бы Apple M1 всегда работал за счёт высокопроизводительных ядер, тогда он бы мало чем отличался от x86-процессоров.

8-ядерная графическая система, которая потребляет меньше энергии, а производительности даёт в два раза больше в сравнении с интегрированной графикой Intel. Выходит, что это примерно уровень Nvidia 1050.

До 16 гигабайт оперативной памяти и да, они тоже располагаются прямо на этой маленькой площади. Это большое достижение, потому что при обработке каких-то задач процессору не нужно обращаться к отдельному блоку ОЗУ на материнской плате, чтобы считать или записать какие-то данные.

Также в Apple M1 стоит 16-ядерный нейропроцессор и это самый мощный нейропроцессор в компьютерах на сегодня. Ещё модуль шифрования, под который раньше был выделен отдельный чип Т2, контроллер Thunderbolt, модуль ввода-вывода и сигнальный процессор.

При этом чип выполнен по 5-нанометровому техпроцессу, а всего на нём располагается 16 миллиардов транзисторов. Выходит, что один транзистор процессора Apple M1 тоньше нити ДНК. Она имеет толщину 10 нм!

Плюс, что тоже достаточно важно, — это энергопотребление. Apple M1 требует всего 15 ВТ, в то время как Intel Core i7, с которым Apple сравнивала свой чип на презентации — 125 Вт. Этого удалось добиться за счёт компоновки аппаратных составляющих и такие блага даёт архитектура ARM? Почему? Давайте разбираться дальше.

Почему ARM энергоэффективнее и в чём вообще разница?

Любой процессор занимается обработкой задач — есть вводные данные, которые необходимо преобразовать и вывести результат преобразования. Соответственно, чем больше и быстрее процессор способен провести таких преобразований, тем лучше. Это общий принцип для всех чипов. Но разница в них всё равно есть.

Началось это с середины 40-х годов XX века, когда появились первые компьютеры и с каждым годом их количество только росло. Разные линейки создавались под разные задачи и требовали своего подхода в программировании. То есть, написав программу для какого-нибудь ENIAC, вы не смогли бы запустить её на IBM. Оптимизацией софта программисты тогда занимались нечасто, потому что машинный код, состоящий из нулей и единиц, приходилось писать буквально вручную на листах бумаги. Где-то неправильно поставил единичку? Бах! Программа уже не работала. Однако потом появились языки высокого уровня, команды в которых программисты вводили на привычном нам человеческом языке, а интерпретатор переводил команды на низкоуровневый язык. То есть вместо того чтобы писать "0101010001...01010", стоило лишь ввести "print: 'hello world';", а интерпретатор переводил это в двоичный код.

С появлением языков программирования задача с оптимизацией софта сильно проще не стала. Каждый производитель в то время считал именно свою платформу самой лучшей и делал для неё какую-нибудь свою архитектуру процессора. Это привело к изобилию разных платформ, пока не пришёл Intel и не сказал: «так ребята, вот вам x86-архитектура — самая классная, самая удобная, пользуйтесь на здоровье». Первым x86-чипом, кстати, стал Intel 8086 в 1978 году.

Такими популярными x86-чипы стали благодаря своей микроархитектуре. На фоне других форматов x86 предлагал наиболее оптимальные и эффективные инструкции обработки данных. Называются они CISC (Complex Instruction Set Computing). Что это такое?

Это набор команд, которые понимает процессор, благодаря которым программистам не нужно каждый раз в мелочах расписывать план действий чипа для обработки введённых данных. Чтобы программистам не расписывать шаг за шагом строчку, которая выводит на экран слово «Привет», процессор понимает сразу, куда направить поток данных.

Иначе это могло превратилось в лабиринт и программисту пришлось бы прописывать: из этого блока данных букву «П» переслать по этой дорожке на этот блок, а потом передать информацию видеокарте, а потом по дорожке номер 15 дать информацию на вывод в монитор. И так для каждой буквы. Жуть! Это ещё крайне упрощённый пример!

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

ARM появилась в 1985 году, как упрощённая альтернатива x86. В ней используется упрощённый набор инструкций RISC (reduced instruction set computer). Команды в этой микроархитектуре короче, по сравнению с CISC, и соответственно из-за этого ARM-чипам требуется меньше времени и энергии на обработку каких-то базовых задач, под которые они в целом и были первоначально заточены.

Из-за того, что процессор работает с упрощёнными инструкциями ему не нужны «тяжеловесные» вычислительные блоки. Хватит того, что будет нужно большинству пользователей. А за счёт меньших размеров на пластине можно разместить несколько вычислительных блоков — с меньшей и большей мощностью для простых и сложных задач соответственно. Плюс, в них нет ничего лишнего.

По-сути, вся разница заключается в микроархитектуре и на фоне ARM x86 с расширенной микроархитектурой выглядит вроде как выигрышнее. Но так ли это на самом деле?

Как ARM проник в x86?

Современные чипы под своим капотом являются по сути гибридными. Приоритет отдаётся тем же инструкциям обработки информации, которые появились в RISC и ARM, а пережитки прошлого, которыми x86 славились в 80-е и 90-е, отводятся на второй план.

Любой современный процессор, Intel или AMD, условно говоря, примерно на 80% состоит из типичных инструкций RISC и только на 20% из CISC. А поступающие в него CISC-инструкции разбиваются алгоритмами на микроинструкции (micro-ops) и обрабатываются RISC ядрами. Так что ARM, очень условно, конечно, проник в чипы Intel и AMD. Соответственно софт, написанный под x86, можно легко оптимизировать под ARM. Сегодня это не составит большого труда.

Подытоживая. В x86 заложены комплексные, длинные инструкции для решения тяжёлых задач, из-за чего они больше и сложнее, поэтому они потребляют больше энергии и чаще греются. ARM же выполняет задачи короткими командами, а для каких-то сложных задач алгоритмы способны раскладывать их на несколько простых. Поэтому в ARM-чипах не нужно размещать столько вычислительных блоков, а заместить их двумя комплексами ядер — 4 высокоэффективными и 4 маломощными. Как и поступила Apple, сделав Apple M1 таким же мощным, но энергоэффективным.

Почему M1 не поставили в MacBook Pro 16" и Mac Pro?

Во-первых, мне кажется, что в 2021-ом компания представит ещё какие-нибудь Pro и Pro-max версии чипа M1. Во-вторых, пока что существующие видеокарты или сам чип не умеет работать с дискретной графикой. Но это дело времени, можете быть уверены. Intel с AMD тоже наверняка не будут стоять на месте.

Итоги

Много слов было написано, а потому стоит тезисно закрепить всё вышесказанное:

  • Apple M1 потребляет меньше энергии за счёт особенностей архитектуры ARM, двум вычислительным блокам и компоновке.
  • Может выполнять те же задачи, что и чипы Intel, благодаря алгоритмам упрощения инструкций.
  • При пиковом и минимальном энергопотреблении способен выдавать больше производительности, чем x86-процессор.
  • Из-за меньшего энергопотребления и тепловыделения чипы ARM не требует обязательного использования активного охлаждения, что позволяет делать ноутбуки бесшумными.
  • Также это позволяет делать ультрабуки мощными и автономными.
  • Для повышения и понижения производительности в ARM-процессорах необязательно изменять частоту.
  • Возможность делать SoC-платформы вместительнее, за счёт уменьшения техпроцесса без потерь в производительности.
Подписывайтесь на Rozetked в Telegram, во «ВКонтакте» и обязательно в YouTube.

14.05.2024
Google I/O 2024
21.05.2024
Microsoft Build 2024
Нет событий
04.04.2025
«Форсаж 11»
Все события





Реклама на сайте



Комментарии

  1. Ещё одни.
    Неужели вы и правда верите, что чип с пассивным охлаждением будет чуть ли не мощнее десктопного 16-ядерного монстра? Дождитесь нормальных тестов, тогда пишите статьи.
    И да, что такое Nvidia 1060 Ti?
    - 0 +
    1. Привет! Очень рад, что ты прочитал материал и проявил интерес. Я когда писал статью и разбирался действительно восхитился тем, как устроена современная архитектура ARM и на что она способна. На мой взгляд, безусловно нужно подождать несколько лет и увидеть, как все будет на деле. Однако крайне похожая ситуация была в 70-х, когда Intel представила свой первый микропроцессор размером с мизинец. Тогда господствовали огромные ЭВМ, которые могли занимать до нескольких десятков квадратных метров и Интеловцы очень интересно подошли к рекламе в журнале, опубликовав в Electronic News иллюстрацию, где они представили чип в виде больших вычислительных "шкафов". (погугли Intel 4004 ad in electronic news magazine). А ведь тогда тоже мало кто верил, что технология микрочипов сможет выстрелить и заменить классические ЭВМ. В итоге у Intel и других, это получилось. На мой взгляд ситуация с Apple M1 похожа чисто исторически на эту)
      - 0 +
      1. В случае с Intel 4004 было куда расти, ведь тогда технологии менялись на совершенно другие - вакуумные лампы на интегральные схемы. Сейчас же никакого резкого скачка и быть не может, потому что это эволюция, а не революция. Другая архитектура может дать такой прирост производительности только в том случае, если в бенчмарке есть специфические задачи, а в процессоре предусмотрен ASIC для их решения
        - 0 +
        1. Опять же, посмотрим, что будет) Но в любом случае ARM потенциально перспективнее в компьютерах (в особенности в ноутбуках) нежели x86, потому что там вообще толком подвижек нет. Готов выслушать альтернативное мнение если что)
          - 0 +
          1. Альтернативное мнение: 1) в x86 нет никакого приципиального застоя, замедление прогресса лишь следствие монопольного положения Интел в последни 10 лет, если посмотреть на то что сейчас делает АМД с новой архитектурой Zen за 4 года догнав и перегнав Интел, то ясно что хоронить x86 рано. 2) Интел взялся за ум и представил свой вариант biglittle для x86, а значит с автономностью тоже сейчас станет веселее, да и тех процессы тож не стоят на месте. 3) главная угроза для наращивания производительности что ARM, что x86 - физический размер транзисторов, ниже 1нм не прыгнуть, т.к. 0,25 нм это один атом кремния, да и на техпроцессах менее 2 нм становятся ярко выраженными квантовые эффекты. Единственные перспективы это уход от кремния и 3D компановка чипа "слоями" как это уже сделали с памятью, но это уж никак не связано с набором инструкций)
            - 0 +
    2. Ведь по сути микропроцессор — это разновидность ЭВМ но очень маленькая и значительно более энергоэффективная. Я это все к тому, что стоит отнестись позитивно и посмотреть на то, что имеется. А имеется очень крутая и перспективная разработка, которая подтолкнет еще и Intel с AMD, сдвинув с мертвой точки застой x86 чипов. Если вспомнить неудачный опыт Майков с Surface, то они делали изначально это как побочные, тестовые устройства, а не переводили всю электронику на ARM. Но у них бы и не вышло, так как WIndows и была заточена изначально под x86. А тут дела обстоят иначе. Безусловно, посмотрим, что будет в будущем, но я для себя поставил задачу рассказать более подробно именно эту позицию, так как я в нее верю :) Но ваше мнение безусловно тоже уважаю)
      - 0 +
  2. коротко: x86-64 и ARMv8 гибридные архитектуры, только арм более современный, но нужно переписать софт.
    Забавно что у истоков арм стояла в том числе аппл, + еще в 90х аппл/ibm/motoorola создали альянс "Организаторы альянса считали, что процессоры CISC от Intel — эволюционный тупик в развитии микропроцессорной техники. И прогнозировали рост RISC технологий в ближайшие несколько лет. "
    - 0 +
    1. Точно спрогнозировали)
      - 0 +
  3. Интересная статья, но когда толщина молекулы ДНК стала 10 нм?
    - 0 +
    1. Рад, что понравилось) Я привел в пример ДНК накрученную на нуклеосому (толщина нити – 10 нм). А сама молекула— 2 нм. Так что есть еще к чему стремиться ахах
      - 0 +
  4. Не самая грамотная статья если честно:

    1. " Первым x86-чипом, кстати, стал Intel i386 в 1985 году." - ага, ага - первым был как раз 8086, откуда и название пошло, был еще 80286 если че (сам на таком работал)
    2. "Команды в этой микроархитектуре короче, по сравнению с CISC, и соответственно из-за этого ARM-чипам требуется меньше времени и энергии на обработку каких-то базовых задач, под которые они в целом и были первоначально заточены. " - дурь какая-то, вы бы сначала вопрос как следует изучили - да, в RISC набор команд сильно меньше и проще, но порой чтобы сделать то же самое, что и в CISC делает одна команда, надо написать сильно больше RISC команд, поэтому их тупо больше будет исполняться и не факт что быстрее. Проблемы с энергопотреблением у интела и амд не в наборе команд CISC а в том что тупо там куча старого ненужного говна которое должно выполняться а выкинуть его нельзя по соображениям совместимости
    - 0 +
  5. Автор явно не понимаит фундаментального различия между CISC (x86) и RISC (arm). А просто манипулятивно рекламирует apple.
    - 0 +
  6. Спасибо, информативненько!
    - 0 +
  7. Это действительно будущее. Как не крути. Расход энергии минимальный.
    - 0 +
14.05.2024
Google I/O 2024
21.05.2024
Microsoft Build 2024
Нет событий
04.04.2025
«Форсаж 11»
Все события





Реклама на сайте