sonyps4.ru

История процессоров Apple Ах: как Apple стала лидером на рынке мобильных чипов. Настоящее и будущее процессоров Mac: PowerPC ▸ Intel x86 ▸ ARM

Почему iPhone 7 работает быстрее Samsung Galaxy S7, а iPhone 8 - быстрее Galaxy S8? Дело тут в различной идеологии операционных систем, а кроме того, одним из основных пре­иму­ществ Apple были и оста­ются уни­каль­ные сис­темы на крис­талле. Процессоры A10 и A11 заметно обгоняют в бенчмарках аналогичные предложения от Qualcomm в лице Snapdragon 820/821 и Snapdragon 835 соответственно. Почему так происходит? В чем заключается «магия Apple»? Оставив за бортом аргументы в стиле «Андроид лудше!», попробуем разобраться в причинах, которые привели к превосходству мобильных процессоров Apple над предложениями Qualcomm.

Фактор первый: так сложилось

Вспомним 2013 год. В арсенале Qualcomm - весьма удачные чипы Snapdragon 800, основанные на 32-разрядных ядрах Krait 400 собственной разработки. На этом чипе (и его последователе, Snapdragon 801) были выпущены десятки, если не сотни самых разнообразных моделей. На момент анонса у топового чипсета Qualcomm просто не было альтернатив: основанные на ядрах ARM Cortex A15 решения были прожорливы до чрезвычайности и не могли составить конкуренцию четырем кастомным ядрам Krait. Вроде бы все хорошо, Qualcomm - царь горы, достаточно продолжать развивать удачную архитектуру. Казалось бы, что может пойти не так?

Но - по порядку. В 2011 году компания ARM Holdings анонсировала архитектуру ARMv8, использование которой открывало многочисленные возможности ускорения части специальных видов вычислений - например, потокового шифрования, которое (забегу вперед) сегодня используется практически во всех смартфонах. Первыми мобильными ядрами данной архитектуры стали Cortex A53 и A57, анонсированные холдингом ARM в 2012 году. В то же время в ARM прогнозировали выход готовых процессоров на новых ядрах лишь на 2014 год. Вот только Apple, обладатели архитектурной лицензии ARM, успели первыми - почти на год раньше конкурентов.

Итак, в ноябре 2013-го Apple выпускает iPhone 5s. Помимо датчика отпечатков пальцев и встроенной системы безопасности Secure Enclave, новый iPhone впервые на рынке оснащается 64-разрядным процессором Apple A7 ARMv8. Новый процессор показывает чудеса производительности в Geekbench: результат двухъядерного процессора в однопоточных вычислениях в пол­тора раза пре­вос­ходит результаты ядер Krait 400, в многопоточных наблюдается паритет.

Расширенный набор команд ARMv8 пришелся как нельзя более кстати: именно в iPhone 5s Apple встроила аппаратную систему безопасности Secure Enclave, которая отвечает в том числе и за шифрование данных. С точки зрения Apple выбор 64-разрядной архитектуры был вполне логичен: только в ядрах с поддержкой ARMv8 появились инструкции для ускорения потокового шифрования, которое на тот момент использовалось Apple уже довольно давно. В дальнейшем использование новых ядер позволило Apple добиться беспрецедентных скоростей доступа к зашифрованным данным - выпущенный на год позже Nexus 6, основанный на 32-разрядном Qualcomm Snapdragon 805 (ARMv7), показывал ужасающую производительность потокового крипто: доступ к зашифрованным данным осуществлялся в 3–5 раз медленнее, чем к незашифрованным.

Поначалу 64-разрядная архитектура в смартфонах воспринималась обывателями - да и многими экспертами - как чистейшей воды маркетинг. Так считали пользователи, и так говорили руководители Qualcomm - по крайней мере, в своих официальных выступлениях.

В 2014 году выходит iPhone 6, оснащенный процессором A8, также работающим с системой команд ARMv8. Чем отвечает Qualcomm? Небольшим обновлением: на рынке доминируют смартфоны, работающие на Snapdragon 801 (32 бита, ARMv7). Также выходит Snapdragon 805, использующий те же ядра Krait 400, но с более мощным GPU. Процессоры Apple оказываются быстрее аналогов от Qualcomm как в однопоточных, так и в многопоточных вычислениях, а в специфических применениях - например, в реализации поточного шифрования - обходят решения конкурентов просто в разы. Qualcomm усиленно делает вид, что ничего необычного не происходит, но производители, наступая на горло, требуют конкурентоспособную SoC. Qualcomm ничего не остается, как включиться в гонку.

В 2015 году Apple выпускает iPhone 6s и A8, Qualcomm - чип Snapdragon 810 и его урезанную версию Snapdragon 808. Эти процессоры явились ответом Qualcomm на требования партнеров. Однако отсутствие опыта разработки 64-разрядных чипов сыграло с компанией злую шутку: оба процессора оказались чрезвычайно неудачными. С первых же дней процессоры проявили склонность к чрезмерному энергопотреблению, перегреву и тротлингу, в результате которого их устоявшаяся производительность через несколько минут работы мало отличалась от производительности Snapdragon 801.

Какой же из всего этого можно сделать вывод? Вывод один: Apple застала индустрию врасплох, использовав ядра с новой архитектурой тогда и там, где, казалось бы, в этом нет никакой необходимости. В результате Qualcomm оказалась в роли догоняющей, а Apple получила фору в полтора года. Почему так произошло?

Здесь нужно рассмотреть особенности цикла разработки мобильных процессоров.

Фактор второй: разница в циклах разработки

Итак, мы выяснили, что Apple удалось вырваться вперед, на полтора года опередив конкурентов. Как такое могло случиться? Причина в разнице в циклах разработки у Apple и производителей смартфонов под управлением Android.

Как известно, Apple полностью контролирует разработку и производство iPhone, начиная с самого низкого уровня - проектирования процессора. И если графические ядра до недавнего времени Apple лицензировала у Imagination Technologies, то процессорные ядра компания предпочитала разрабатывать самостоятельно.

Как выглядит цикл разработки у Apple? На основе архитектурной лицензии ARM проектируется процессор, совместимый с заданной системой команд (ARMv8). Одновременно разрабатывается смартфон, в котором будет использоваться данный процессор. Параллельно для него создаются все необходимые драйверы, ОС, производится оптимизация. Все происходит в рамках одной компании; у разработчиков ОС нет никаких проблем с получением доступа к исходным кодам драйверов, а разработчики драйверов, в свою очередь, имеют возможность общаться с людьми, проектировавшими процессор.


Производственный цикл устройств на Android выглядит совершенно иначе.

В первую очередь в игру вступает ARM, разработчик одноименных систем команд и процессорных архитектур. Именно ARM проектирует референсные процессорные ядра. Так, в далеком 2012 году были анонсированы ядра ARM Cortex A53, на которых основано подавляющее большинство смартфонов, выпущенных в 2015, 2016 и 2017 годах.

Минуточку! 2012? Именно так: 64-разрядные ядра A53 были анонсированы в октябре 2012 года. Но архитектура ядра - это одно, а реальные процессоры - совсем другое: ARM Holdings их просто не выпускает, предлагая партнерам референсные дизайны, но не поставляя на рынок сами SoC. Прежде чем на рынке появится смартфон, основанный на той или иной архитектуре, кто-то должен разработать и выпустить готовую систему на кристалле, SoC.

Несмотря на публичные выступления собственных представителей, в 2013 году в Qualcomm усиленно работали над выпуском 64-битного процессора. На разработку собственного ядра времени не оставалось; пришлось брать что дают. Давали - архитектуру big.LITTLE, куда на тот момент входили «малые» ядра Cortex A53 (удачные) и «большие» ядра A57 (довольно спорные с точки зрения энергоэффективности и тротлинга).

Первые процессоры Qualcomm, основанные на этих ядрах, были анонсированы в 2014 году. Но ведь процессор - это еще не все! Как минимум нужен еще корпус, экран… Все это выпускают OEM-производители, которые, собственно говоря, и занимаются разработкой и производством смартфонов. А это тоже время, и время немалое.

Наконец, операционная система. Для того чтобы «завести» Android на устройстве, необходим набор драйверов для нового чипсета. Драйверы разрабатывает разработчик чипсета (например, Qualcomm), предоставляя их производителям смартфонов для интеграции. На то, чтобы разобраться и интегрировать драйверы, у производителя также уходит определенное время.

Но и это еще не конец! Уже готовый смартфон с работающей версией Android необходимо еще и сертифицировать в одной из лабораторий Google на предмет совместимости и соответствия Android Compatibility Definition. Это - тоже время, которого и без того катастрофически мало.

Иными словами, в том, что смартфоны на Snapdragon 808/810 мы увидели лишь в 2015 году, нет совершенно ничего удивительного. Первые флагманские чипы Qualcomm, основанные на 64-разрядной архитектуре, отстали от SoC Apple на полтора года. Это исторический факт, и это - реальное преимущество Apple.

В 2015 году длительный цикл разработки и требования партнеров сыграли с Qualcomm злую шутку: первый блин оказался комом. Впрочем, компании удалось реабилитироваться с выходом Snapdragon 820. Но не было ли слишком поздно?


Фактор третий: вопрос размера

Рассмотрим таблицу, в которой сравниваются два последних поколения процессоров Apple и Qualcomm.

Что мы видим из этой таблицы? Легко заметить, что производительность в расчете на одно ядро в процессорах Apple в два с лишним раза превосходит решения Qualcomm, да и многопоточная производительность актуальных поколений процессоров отличается практически в полтора раза. Почему так получается? Ответ можно попробовать найти в следующей табличке.

Если отбросить пару процессоров A10 Fusion / Snapdragon 820, в которых используются разные технологические процессы, можно сравнить площадь чипов A11 Bionic и Snapdragon 835. Площадь поверхности чипа от Apple в 1,2 раза превышает площадь решения Qualcomm. Что это означает на практике? Возможность использовать больше транзисторов, более продвинутую архитектуру ядер. В частности, исследователи обнаружили, что в A11 Bionic «слабые» процессорные ядра в несколько раз крупнее малых ядер A53 (простите - Kryo 280), использующихся в Snapdragon 835. Это означает, что даже «малые» ядра A11 Bionic поддерживают внеочередное исполнение команд, что позволяет получить большую производительность на такт в сравнении с прямолинейными ядрами А53.

Площадь процессора напрямую влияет на его цену. Чем больше площадь (при использовании одного техпроцесса), тем выше себестоимость. Что подводит нас к очередному фактору: стоимости процессора для производителя.

Фактор четвертый: вопрос цены

Согласно отчету Android Authority площадь процессорных ядер Apple A10 Fusion вдвое превышает площадь ядер ближайшего конкурента, Snapdragon 820.

«Преимущество Apple в том, что компания может себе позволить потратить деньги на увеличение площади процессора, построенного по последней 16-нанометровой технологии FinFET… Несколько лишних долларов не сыграют большой роли в конечной стоимости устройства - а ведь Apple сможет продать значительно больше 600-долларовых устройств благодаря настолько большой производительности», - пишет Линли Гвеннап, директор The Linley Group.

Действительно, лишние пять-шесть долларов не сыграют большой роли в конечной стоимости iPhone - это доли, в худшем случае единицы процентов его стоимости для потребителя. Но если эти пять-шесть долларов способны удвоить производительность устройства по сравнению с конкурентами на Android - это прекрасный аргумент в пользу Apple.

Почему так не выходит у Qualcomm? В цепочке разработки процессоров для устройств под Android слишком много заинтересованных лиц. Это и ARM, которая разрабатывает и лицензирует процессорные ядра, и Qualcomm, которая проектирует готовые процессоры по лицензии, и производители смартфонов с Android. У OEM-производителей, вынужденных конкурировать между собой ценами, на счету каждый доллар. Производители хотят как можно более дешевых SoC (поэтому, кстати, до сих пор так популярны решения, построенные на архаичных слабых ядрах A53), и Qualcomm приходится с этим считаться. Но и Qualcomm, и ARM хотят откусить кусок пирога, получив свою долю прибыли, - так что себестоимость решения, аналогичного процессорам Apple, вышла бы даже более высокой, чем у Apple. В результате OEM-производители не смогли бы себе позволить массовых закупок таких процессоров, что еще увеличило бы их стоимость. (Кстати, именно это случилось с процессором MTK Helio X30 - он не пользовался спросом, и на его основе выпустили лишь два смартфона.)

Конечно, здесь можно аргументировать, что у Samsung и Huawei есть собственные линейки процессоров - Exynos и Kirin соответственно. Но у Huawei нет своих разработок, в компании берут готовые ядра ARM Cortex и готовые же графические ускорители ARM Mali, собирая «собственные» процессоры на их основе. Понятно, что вычислительные ядра этих процессоров не могут быть мощнее тех, что предлагает ARM. В Samsung же пробуют идти путем Apple, выпуская собственные кастомизированные ядра - производительность которых, впрочем, недалеко уходит от обычных «стоковых» ядер ARM.

Фактор пятый: вопрос контроля

В прошлом году в Apple сделали интересную вещь: волевым решением убрали поддержку 32-разрядных приложений из iOS 11. Так уж совпало, что именно на этой версии ОС вышла новая линейка iPhone: 8, 8 Plus и X. Что это означает с точки зрения производительности?

Возможность взять и отказаться от поддержки 32-разрядных команд дает очень и очень многое. Упрощаются блоки декодирования и исполнения, уменьшается требуемое число транзисторов. Куда идет эта экономия? Ее можно потратить на уменьшение площади процессора (что напрямую транслируется в сниженную себестоимость и уменьшенное энергопотребление), а можно при неизменной площади и энергопотреблении добавить транзисторов в другие блоки, увеличив тем самым производительность. Скорее всего, именно по второму сценарию развивались события и процессор A11 Bionic получил дополнительные 10–15% производительности именно за счет отказа от поддержки 32-разрядного кода.

Возможно ли подобное в мире Android? Да, возможно, но не полностью и очень нескоро. Лишь с августа 2019 года вступают в силу требования к разработчикам, которые должны будут при добавлении или обновлении приложений в Google Play Store в обязательном порядке включать 64-битные версии двоичных библиотек. (Отметим здесь, что далеко не все - и даже не большинство! - приложения Android вообще используют какие-либо двоичные библиотеки, зачастую довольствуясь динамически транслируемым байт-кодом.) Напомним, Apple ввела аналогичное требование в феврале 2015 года - опять преимущество во времени, на сей раз в четыре с половиной года.

Фактор шестой: оптимизация и использование доступных ресурсов

Оптимизация - важнейшая составляющая производительности. Традиционно у Apple с оптимизацией все было или идеально, или образцово (пользователи, которые жалуются на упавшую производительность старых устройств, обновившихся до последней версии iOS, просто не понимают, какой ад был бы на таком слабом железе, если бы на нем запустили Android). А вот у Android с оптимизацией все… пестро. Разнообразно. Можно сказать - феерично.

Чаще всего достаточно быстро на свежем железе работают чистые сборки Android - такие, что используются в смартфонах Google Nexus и Pixel, устройствах Motorola и Nokia. Но даже и здесь не все хорошо: например, в смартфоне Google (Motorola) Nexus 6 были совершенно потрясающие воображение проблемы со скоростью доступа к накопителю, возникшие из-за безграмотной реализации шифрования (разработчики Google не справились с аппаратным ускорителем криптографических операций процессора Snapdragon 805, после чего заявили, что «программная реализация лучше»). Вот в этой статье мы подробно проанализировали скорость чтения и записи зашифрованных данных смартфоном Nexus 6, сравнив ее со скоростью аналогичных операций в iPhone 5s. Вот цифры:

  • Nexus 6, последовательное чтение, незашифрованные данные: 131,65 Мбайт/с;
  • Nexus 6, последовательное чтение, зашифрованные данные: 25,17 Мбайт/с (39 Мбайт/с в обновлении до Android 7);
  • iPhone 5s, последовательное чтение, зашифрованные данные: 183 Мбайт/с.

Впечатляет? При похожих аппаратных характеристиках разработчики Google (Google, а не криворуких OEM!) умудрились в референсном устройстве, которое должно было продвигать безопасное шифрование в массы, сделать такой вот ляп. Будешь ли ты удивлен, узнав, что и у других производителей с оптимизацией могут возникать проблемы? И они возникают. Так, оснащенный по максимуму HTC U Ultra (Snapdragon 821) умудряется подтормаживать и перегреваться при самых рутинных операциях; такое впечатление, что процессор выполняет как минимум вдвое больше вычислений, чем должен. Ну а о смартфонах Samsung, которые ухитряются подтормаживать по мелочам даже на самом мощном доступном железе, даже и говорить подробно не стоит.

Фактор седьмой: разрешение экрана

Есть и еще один момент, который стоит упомянуть. Это - разрешение дисплея. Как известно, стандартные модели iPhone оснащаются экранами с разрешением HD, модели Plus - Full HD. Производители же смартфонов под управлением Android, использующие флагманские чипсеты Qualcomm, стараются устанавливать экраны с разрешением QHD - 2560 × 1440. Ну, как самый минимум - Full HD, но такое во флагманских смартфонах встречается, увы, нечасто.

Почему «увы»? Потому что разрешения выше Full HD на экранах с IPS-матрицей диагональю до 5,7″ включительно более чем достаточно. Для AMOLED-экранов, у которых, во-первых, структура субпикселей PenTile, а во-вторых, может быть поддержка очков виртуальной реальности Google VR (кстати, а какому проценту пользователей она реально пригодилась?), оправданность QHD-разрешения еще можно как-то аргументировать.

Несколько в стороне стоит iPhone X с разрешением 2436 × 1125 - впрочем, это, по сути, мало отличается от Full HD. Для сравнения: разрешение экрана Samsung Galaxy S8 - 2960 × 1440, то есть в полтора раза больше пикселей, чем в iPhone X.

А теперь представь, что мы сравниваем производительность iPhone 8 с его разрешением HD и какую-нибудь Nokia 8 с QHD. Представил? Nokia приходится обрабатывать почти в четыре раза больше пикселей, чем iPhone, что не может не сказаться на энергопотреблении и на производительности (как минимум в тех тестах, которые используют вывод на экран). Я сейчас ни в коей мере не оправдываю старенькие экраны, которые Apple с маниакальным упорством продолжает устанавливать в устройства стоимостью под тысячу долларов, а просто заостряю внимание на том, что производительность и энергоэффективность устройств с экранами низкого разрешения даже при прочих равных будет выше, чем у смартфонов с экранами QHD.

Что-то такое заподозрили и производители. Так, Sony Xperia Z5 Premium, экран которого (кстати, IPS, бесполезный для целей VR) имеет физическое разрешение 4K (на самом деле нет, даже здесь маркетологи обманули), но логическое - «всего лишь» Full HD, что позволило производителю и потребителя обмануть, и не слишком сильно убить производительность. Похожим образом поступили и в Samsung, разрешив использовать пониженное логическое разрешение на экранах с высокой плотностью точек. Очевидно, интересы маркетологов идут вразрез с интересами как пользователей этих устройств, так и собственных разработчиков компании.

Вместо заключения: нужны ли нашему телефону 64 бита?

Так ли нужны 64-разрядные процессоры в мобильных устройствах? Ведь у 32-разрядных вычислительных ядер есть свои преимущества. Такие процессоры могут работать быстрее 64-разрядных из-за меньшей длины инструкций вследствие меньшей длины адреса, и, как результат, они менее требовательны к объему оперативной памяти; в них можно реализовать более короткую очередь команд, что также может дать выигрыш в производительности в определенных сценариях.

Некоторые из этих преимуществ так и останутся теоретическими, но в ряде современных сценариев использования без поддержки команд ARMv8 уже не обойтись. Это и потоковое шифрование, и склейка HDR в режиме реального времени, и многие другие малозаметные вещи. Как бы там ни было, производители процессоров перешли на 64-разрядные ядра с поддержкой ARMv8, и это свершившийся факт.

Вот только производители смартфонов не спешат переходить на 64-битные сборки операционных систем.

Так, в природе не существует ни одного смартфона под управлением Windows 10 Mobile, в котором операционная система работала бы в 64-разрядном режиме. И Lumia 950 (Snapdragon 808), и Lumia 950 XL (Snapdragon 810), и даже относительно свежий Alcatel Idol 4 Pro (Snapdragon 820) работают под управлением 32-битной сборки Windows 10 Mobile.

Не отстают и производители телефонов с Android. К примеру, у Lenovo, выпускающей смартфоны под маркой Motorola, есть всего два устройства с «правильным» 64-разрядным Android: это флагманы линейки Moto Z (обычная версия и разновидность Force) и Moto Z2 Force. Все остальные устройства - и бюджетный Moto G5 на Snapdragon 430, и свежий субфлагман Moto Z2 Play на Snapdragon 626 - работают в 32-битном режиме.

Ряд устройств других производителей (например, BQ Aquaris X5 Plus) использует мощный Snapdragon 652 в 32-разрядном режиме. Нужно ли говорить, что такие устройства не выжимают максимума из доступных аппаратных возможностей?

С другой стороны, не все идеально и у Apple. Даже 64-разрядные приложения, скомпилированные в нативный код, из-за требований обратной совместимости вынуждены ограничиваться набором команд, доступным в самых ранних процессорах компании - Apple A7 образца 2013 года. А вот у компилятора байт-кода ART, который используется в Android с 5-й версии, таких проблем нет: байт-код приложений компилируется в оптимизированный нативный код, использующий все доступные на текущем железе инструкции.

Впрочем, будем жить с тем, что есть. За максимальной производительностью процессорных ядер и гарантированной оптимизацией - к Apple. То же самое, только в полтора-два раза похуже и во столько же раз дешевле, - к сонму производителей трубок на Android.

На презентации iPhone 7 в сентябре 2016 года Apple похвасталась, что за десять лет производительность процессоров в iPhone выросла аж в 120 раз:

Цифра мне показалась великоватой, так что давайте ее проверим. Однако есть одна проблема - самый первый iPhone получил поддержку лишь iPhone OS 3.1.3, тогда как, например, минимальная iOS для iPhone 7 - это 10. И поэтому мне удалось найти лишь один бенчмарк, тестирующий производительность процессора и работающий на всех версиях iOS - это Geekbench 2. Да, его актуальность уже под вопросом - к примеру, он не поддерживает х64 инструкции, однако для оценки производительности его вполне хватит.

  • iPhone 2G (Samsung S3C6400 ARM11 620 МГц, работающий на частоте 412 МГц, 65 нм, 128 Мб EDRAM, 2007 год) - 150 очков.
    Самый первый айфон вышел почти 10 лет назад, в 2007 году. Железо сейчас вызывает улыбку - 400 МГц процессор и 128 Мб ОЗУ даже в умные часы уже никто не ставит. Однако на момент выхода оно было достаточно мощным, и из-за закрытости iPhone OS первый iPhone работал достаточно быстро.
  • iPhone 3G (Samsung S3C6400 ARM11 620 МГц, работающий на частоте 412 МГц, 65 нм, 128 Мб EDRAM, 2008 год) - 150 очков
    Основным техническим изменением в iPhone 3G была поддержка 3G (откуда, собственно, и название). Все остальное железо осталось тем же, так что результат в бенчмарке тот же.
  • iPhone 3GS (Samsung S5PC100 ARM Cortex A8 833 МГц, работающий на частоте 600 МГц, 65 нм, 256 Мб EDRAM, 2009 год) - 300 очков.
    Литеру S в этом iPhone расшифровывали как Speed - скорость, и есть почему: процессор перешел с архаичной ARM11 середины нулевых на современную (по тем меркам) Cortex A8, и несколько нарастил частоту - в итоге он стал вдвое быстрее. Удвоенный объем ОЗУ позволил лучше использовать многозадачность, и в итоге телефон обновлялся вплоть до 2013 года - последней ОС для него была iOS 6.
  • iPhone 4 (Apple A4 ARM Cortex A8 1 ГГц, работающий на частоте в 800 МГц, 45 нм, 512 Мб EDRAM, 2010 год) - 400 очков.
    Это первый iPhone, где процессор был частично сделан Apple, однако в основном он все еще был построен на Cortex A8. Оптимизации ядра, рост его частоты и увеличенный вдвое объем ОЗУ делали iPhone 4 на 25% быстрее 3GS, однако, увы, на последней для него версии iOS 7 он работал достаточно медленно.
  • iPhone 4S (Apple A5 ARM Cortex A9 1 ГГц, работающий на частоте в 800 МГц, 2 ядра, 32 нм, 512 Мб LPDDR2, 2011 год) - 860 очков.
    Первый двухядерный процессор в iPhone, использующий новую (по тем временам) архитектуру Cortex A9, однако частота ядер осталась прежней - 800 МГц, так что результат стал в среднем в 2 раза выше. Это самый популярный процессор от Apple - он ставился кроме iPhone 4S еще и в iPod Touch 5, iPad 2/3/Mini (в них частота была увеличена до 1 ГГц). Увы - возможности процессора все же не безграничны, и на iOS 9 перечисленные выше устройства работают достаточно медленно.
  • iPhone 5 (Apple A6 Swift 1.2 ГГц, 2 ядра, 32 нм, 1 Гб LPDDR2, 2012 год) - 1680 очков.
    Наконец-то частота процессора в iPhone переползла за 1 ГГц. К тому же это первый процессор, в основном построенный на собственной архитектуре Apple - Swift (однако так же частично была задействована архитектура Cortex A15) - это позволило практически вдвое увеличить производительность процессора. Вкупе с 1 Гб ОЗУ телефон неплохо работает даже на самой современной на данный момент iOS 10.
  • iPhone 5S (Apple A7 Cyclone 1.3 ГГц, 2 ядра, 28 нм, 1 Гб LPDDR3, 2013 год) - 2250 очков.
    Этот iPhone можно назвать, пожалуй, самым прорывным по технологиям - это был первый телефон на х64 процессоре, построенный полностью на собственной архитектуре Apple - Cyclone. Производительность внушала уважение - двухядерный A7 с частотой в 1.3 ГГц находился на уровне топового тогда Snapdragon 800 - 4ядерного монстра с частотой до 2.2 ГГц! Пожалуй, этот iPhone можно назвать актуальным - он летает на iOS 10 и поддерживает большинство приложений из App Store.
  • iPhone 6 (Apple A8 Cyclone v2 1.4 ГГц, 2 ядра, 20 нм, 1 Гб LPDDR3, 2014 год) - 2470 очков.
    В iPhone 6 Apple сконцентрировалась на дизайне, так что производительность выросла незначительно. В итоге процессор оказался значительно хуже топового на тот момент Snapdragon 805, что, в прочем, не повлияло на его работу из-за хорошей оптимизации iOS.
  • iPhone 6S (Apple A9 Cyclone v3 1.85 ГГц, 2 ядра, 14 нм, 2 Гб LPDDR4, 2015 год) - 3170 очков.
    В 6S Apple сконцентрировалась на производительности - процессор стал на 40% быстрее, и, наконец-то, спустя три года, объем ОЗУ вырос до 2 Гб. На момент выхода процессор конкурировал на равных с самыми мощными представителями линеек Snapdragon и Exynos, да и сейчас отстает от топа не так уж и сильно, на 20-30%.
  • iPhone 7 (Apple A10 Fusion, 2 ядра по 2.34 ГГц и 2 по 1.05 Ггц, 14 нм, 2/3 Гб LPDDR4, 2016 год) - 3650 очков.
    Спустя 5 лет с момента выхода своего первого двухядерного процессора Apple выпустила 4ядерный процессор для iPhone, построенный по технологии big.LITTLE - для тяжелых задач используется кластер из 2 мощных ядер, для простых - кластер из 2 слабых, одновременно они работать не могут. К тому же впервые между простой линейкой и Plus возникло серьезное различие в железе - у 7 Plus 3 Гб ОЗУ против 2 у 7, что позволяет ему лучше использовать многозадачность. Процессор оказался настолько мощным, что iPhone 7+ до сих пор удерживает Топ-1 в Antutu.
Что же мы видим в итоге? iPhone 2G набирает в бенчмарке 150 очков, iPhone 7 - 3650, то есть производительность процессора увеличилась... всего в 24 раза. Разумеется, бенчмарк не является точным показателем производительности устройства (к тому же не использует х64 инструкции, которые могут увеличить производительность еще на 20-30%), но все же между приростом в 24 раза по бенчмарку и в 120 раз по словам Apple разница в 5 раз, так что или Apple где-то обсчиталась, или использовала свой собственный, никому больше неизвестный, бенчмарк.

Сводный график:


Как видно, застоя в мобильном сегменте нет и близко - если у Intel и AMD прирост за поколение не превышает 5-10%, то здесь прирост может быть и двухкратным. И это понятно - мобильные процессоры все время были в роли догоняющих, и использовали наработки десктопных процессоров, поэтому и развились так быстро. Причем, что самое интересное, мобильные процессоры уже стали технологичнее десктопных - если Intel «увяз» на 14 нм аж на три года, а AMD только-только выпустила свои решения на этом техпроцессе, то новый Snapdragon 835 уже построен по нормам 10 нм техпроцесса, и скоро появится в флагманах на Android. Да и процессор Apple A9X в iPad Pro уже находится на уровне ультрабучной линейки intel Core m, потребляя при этом меньше энергии. К тому же ARM-процессорами в ноутбуках заинтересовались и Apple, и Microsoft - кто знает, возможно архитектуре х86-х64, по крайней мере в пользовательском сегменте, пора на покой?

Вряд ли до конца 2017 года на рынке появится хотя бы одно устройство, которое сумеет обойти iPhone 8, iPhone 8 Plus и iPhone X по скорости работы.

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

A11 - самый производительный чип на мобильном рынке

Процессор A11 построен на двух крупных производительных ядрах и четырех малых энергоэффективных. Его основное отличие от A10 - наличие специального чипа для работы с нейронными сетями.

Именно этот процессор установлен в iPhone 8, iPhone 8 Plus и iPhone X, трех самых быстрых смартфонах на сегодняшний день. Его производительность выше конкурентов-флагманов почти в 2 раза.

Самые быстрые в многоядерном тесте Geekbench 4:

  • Apple iPhone 8 Plus - 10,472
  • Apple iPhone 8 - 10,170
  • Apple iPhone X - 10,051
  • Samsung Galaxy Note 8 - 6,564
  • One Plus 5 - 6,542
  • Samsung Galaxy S8 - 6,295

Каждый процессор A11 изготавливается по 10-нанометровому техпроцессу, который гарантирует не только максимальную скорость работы, но и предельную энергоэффективность.

За производство чипов A11 отвечает тайваньская компания TSMC, которая работает по контракту. И у самой Apple нет необходимых мощностей для массового продакшена процессоров.

iPhone X оказался мощнее даже некоторых MacBook Pro

iPhone 8, iPhone 8 Plus, а также iPhone X - первые мобильные устройства, которые преодолели отметку в 10 тыс. баллов в многоядерном тесте Geekbench 4.

И чтобы эти цифры оказались еще более грандиозными, отметим, что 13-дюймовый MacBook Pro 2017 года с двухъядерным процессором Intel Core i5 Kaby Lake набирает около 9 тыс. баллов.

Теоретически A11 быстрее Intel Core i5 Kaby Lake на 10%

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

A11 заточен не только под скорость, но и под энергоэффективность. А решение Intel наоборот - в первую очередь под производительность. Но результаты теста все же показательны.

Почему ни один из соперников не может догнать Apple

Так как тайваньская компания TSMC - контрактный производитель, она не занимается непосредственной разработкой процессоров для Apple. Она отвечает только за массовый выпуск.

Получается, что Apple фактически приносит своему партнеру что-то вроде готовых «клише», на основании которых он и включает в работу свои станки. Времени слить технологию просто нет.

Аналогичная ситуация была и с компанией Samsung, которая выпускала процессоры для смартфонов Apple еще год тому назад. Получалось для конкурента она делала чипы лучше, чем для себя.

Конечно, кроме возможности быстро скопировать технологию для себя или на продажу очень важна работа инженеров, которые получают деньги в Apple не зря.

Но работа инженеров не имела бы никакого смысла без программного обеспечения, поэтому хочется пожать руку разработчикам, которые работают в компании Apple.

В сети уже сегодня есть мысли, что Apple превратила программное обеспечение в аппаратное. Ее устройства работают быстро благодаря не только железу, но и софту.

Да, iOS 11 работает не так хорошо, да и при Джобсе такого точно не было. Но в остальном совместное производство программного и аппаратного обеспечения однозначно дают о себе знать.

А еще очень важно, что Apple разрабатывает процессоры сама, а не покупает их у гигантов рынка вроде Qualcomm. Конкуренты пытаются делать и что-то свое, но от Snapdragon уйти считайте не могут.

Почему же большинство конкурентов не выпускает процессоры самостоятельно или не идет по контрактному пути производства Apple? Здесь нет ничего странного.

И в данном случае мы возвращаемся к пресловутой фрагментации Android-устройств. Их слишком много, и если бы почти у каждого флагмана был не Snapdragon 835, было бы совсем туго.

iPad Pro 2018 окажутся монстрами производительности

В сети уже начали появляться первые данные по поводу процессоров, которые Apple будет использовать в iPad Pro в 2018 году. И это чума, товарищи. Похоже, компанию понесло по ядрам.

Скорее всего, в iPad Pro новых поколений будет установлен процессор A11x Bionic. Он получит целых восемь ядер вместо шести. А еще 7 нм техпроцесса и «водное охлаждение».

Главный вопрос 2018 - как угомонить всю мощь новых iPad Pro

Источники, близкие к TSMC, который останется ответственным за массовое производство процессоров по контрактной схеме, уточняют, что три ядра будут скоростными, а пять экономными.

Скорее всего, вместе с ультраскоростными чипами, iPad Pro 2018 получат также модуль фронтальной камеры TrueDepth, чтобы быть более трендовыми и вообще узнаваемыми.

Какие перспективы у новых мобильных устройств Apple

Конечно, чем выше производительность установленного в современное мобильное устройство процессора, тем вроде как и лучше - особенно учитывая ориентир на энергоэффективность.

Тем не менее, сегодня мне кажется, что новые мощности не заставляют разработчиков делать более качественный софт - даже наоборот.

Новый нонсенс - чем быстрее процессоры, тем меньше внимания к оптимизации

И самый яркий пример в данном случае - дополненная реальность на специальном движке Apple, который появился с выходом iOS 11. Он работает на iPhone 6s и выше. Но тупит на iPhone 7.

Создается ощущение, что разработчикам уже просто влом работать над оптимизацией. Чипы самых последних iPhone тянут, ну и норм. Все еще надеюсь на позитивные сдвиги в iOS-софте в будущем. Все.

Пользователи iPhone 6s отмечают поразительную скорость в работе устройства и высокую плавность интерфейса. Нет ничего удивительного в том, что Apple оснащает свои флагманские продукты, будь то смартфоны или планшеты, мощнейшими аппаратными решениями. Лучшим из таковых на данный момент является процессор А9.

SoC или система-на-чипе A9 является собственной разработкой Apple. 64-битный процессор производится по 14- или 16-нм технологии двумя подрядчиками: Samsung и TSMC. К чести инженеров компании следует отметить, что синтетические тесты присваивают A9 первые места по производительности. Но так было не всегда, давайте вспомним, с чего все начиналось.

До 2010 года Apple была вынуждена пользоваться наработками Samsung. Но выпуск такого революционного устройства как iPad требовал кардинально иного подхода. В результате был выпущен первый собственный мобильный микропроцессор Apple, интегрированный в планшетный компьютер. Чип А4 работал на частоте 1 ГГц и имел максимальную потребляемую мощность 500-800 мВт. Основан он был на архитектуре ARM Cortex A8 и производился по 45-нм технологическому процессу. Как выяснилось в дальнейшем, решение Стива Джобса выпускать собственную аппаратную платформу оказалось важнейшим стратегическим шагом.

По словам аналитика Стивена Чейни, вопреки успеху и прочным позициям Intel на этом рынке, Apple смогла потеснить именитого производителя электроники. В успех команды Джобса мало кто верил, а глава Microsoft Стив Балмер откровенно смеялся над оригинальным iPhone. Тем не менее, руководство Apple было твердо настроено самостоятельно обеспечивать себя процессорами.

В 2008 году «яблочная» компания приобрела небольшую организацию PA Semi за $278 млн, известную своими энергоэффективными разработками систем-на-чипе. В последующие годы также было сделано несколько знаковых поглощений, которые в итоге вывели Apple в лидеры рынка.


Важно помнить, что аппаратная начинка iPhone и iPad тесно связана с программным обеспечением. Мобильная операционная система iOS смогла не только в кратчайшие сроки завоевать рынок, но и обеспечить работой сотни тысяч программистов. Даже конкурирующие компании зарабатывают на клиентах Apple гораздо больше, чем на своих. Взять, к примеру, столь популярные сервисы как YouTube, Google Поиск, Google Карты, которые приносят интернет-гиганту многомиллионные прибыли.

Но на этом преимущества чипов серии «А» не заканчиваются. Огромную роль в пользовательском опыте играет оптимизация программного обеспечения. Конкуренты могут выкупить или лицензировать разработанные Apple технологии, внедряя попутно их в свои устройства. Однако полную работоспособность «яблочных» продуктов может обеспечить только программный код, который лежит в основе iOS. Именно по этой причине реализация функции 3D Touch на Android-устройствах в существующем на iPhone 6s виде окажется крайне сложной.

Apple продолжает процветать, пользуясь дальновидностью ее основателя и идейного вдохновителя. Как можно убедиться, ярый педант и приверженец дзен-практик Стив Джобс оказался настоящим провидцем.

Сегодня мы представляем вашему вниманию пересказ статьи Пьера Лебопена (Pierre Lebeaupin) "Некоторые вещи, которые разработчикам под iOS следовало бы знать об архитектуре ARM" ("A few things iOS developers ought to know about the ARM architecture") от 19 июля 2010 года (с дополнениями от 25 сентября 2011 года), опубликованной ресурсом Wandering Coder. Надеемся, что этот материал будет интересен и полезен не только разработчикам, но и всем тем, кто интересуется проблемами разработки приложений для мобильной операционной системы iOS и внутренним устройством популярных планшетов и смартфонов компании Apple.

Когда я работал над своей статьей «Introduction to NEON on iPhone», я полагал, что читатели обладают некоторой суммой знаний о процессорах iOS-устройств. В ходе сетевых дискуссий я понял, что часть этой информации, к сожалению, многим неизвестна. Кроме того, я полагаю, что эта информация будет полезным подспорьем для программирования под iPhone (не только в том случае, если вас интересует NEON), даже если вы программируете на языке высокого уровня Objective-C. Вы можете обойтись и без этих знаний, но обладание ими усовершенствует вашу квалификацию разработчика программ для iPhone.

Вводная информация

Все недавно представленные iOS-устройства базируются на процессорах с ARM-архитектурой. Как вы сможете убедиться в ходе прочтения данного материала, эта архитектура несколько отличается от того, к чему вы привыкли на платформах для настольных систем, к которым относятся и x86 и PowerPC. Конечно же, ARM-архитектуру нельзя назвать ни узкоспециализированной, ни нишевой. Почти все мобильные телефоны (и не только смартфоны) базируются на процессорах этого типа, практически все iPod базируются на них же, как и почти все MP3-плееры. этой же архитектуры находятся внутри большинства КПК и Pocket PC. Приставки Nintendo тоже базируются на ARM со времен GBA. Сейчас даже некоторые модели калькуляторов от TI и HP базируются на ARM-процессорах. Если говорить о прошлом, то нужно напомнить, что и Newton обладал ARM-процессором (известно, что Apple давний инвестор ARM). И это только известные устройства, не считая огромного множества ARM-процессоров, играющих вспомогательные роли.

ARM-процессоры прославились своими малыми размерами, низким энергопотреблением и высокой производительностью (в рамках своей категории, разумеется). Эти процессоры характеризуются прямым порядком передачи байтов, как и x86. Существуют также процессоры RISC-архитектуры, к которым относятся MIPS, PowerPC и другие. Следует отметить, что симулятор не выполняет код, созданный для ARM. Для запуска на симуляторе приложение компилируется под архитектуру x86 и выполняется как родное для этой архитектуры. Поэтому приложение следует тестировать на том типе устройства, для которого оно предназначено.



Загрузка...