The Linley Group: Apple Hurricane — самые быстрые ARMv8-A ядра современности

Аналитики из The Linley Group провели исследование производительности системы на кристалле Apple A10 Fusion, первого процессора компании, использующего два разных типа вычислительных ядер общего назначения. Обозреватели обнаружили, что новые ARMv8-совместимые ядра Apple — Hurricane и Zephyr, на которых базируется процессор Apple A10 Fusion, — занимают большую площадь, но при этом показывают лучшую производительность, чем любые конкурирующие ядра.

Apple iPhone 7 и Apple A10. Иллюстрация Chipworks.

Apple iPhone 7 и Apple A10. Иллюстрация Chipworks

Цели и средства

Когда Apple начала разрабатывать собственные системы на кристалле (system-on-chip, SoC) для мобильных устройств в конце прошлого десятилетия, компания ставила перед собой три ключевые задачи. Во-первых, собственные SoC должны были включать в себя специализированные блоки для ускорения определённых рабочих нагрузок и предоставления эксклюзивных функциональных возможностей конечным устройствам. Во-вторых, процессоры Apple должны были бы гарантировать максимально долгую работу мобильных устройств от одного заряда (отчасти интеграция специализированных ускорителей уже способствует оптимизации энергопотребления) и выделять как можно меньше тепловой энергии (чтобы iPhone были тоньше соперников). В-третьих, фирменные SoC должны были быть быстрее процессоров от других компаний, что являлось бы существенным преимуществом для мобильных устройств Apple.

Для эффективного решения указанных задач в Apple решили разрабатывать собственные микроархитектуры на базе наборов команд ARM, что давало возможность не только получить максимальную вычислительную мощность, но и наиболее точно «заточить» аппаратное обеспечение под программное и наоборот. Поскольку большинство мобильных приложений используют одно–два ядра общего назначения, Джим Келлер (Jim Keller), который отвечал за разработку процессорных микроархитектур, и Джони Сруджи (Johny Srouji), который отвечает за разработку микросхем в Apple, приняли решение сконцентрироваться на создании максимально производительных ядер вместо создания чипов с максимальным количеством ядер. Таким образом, все 64-разрядрые ядра Apple — Cyclone, Typhoon, Twister — могут параллельно выбирать и декодировать шесть инструкций за такт, что увеличивает размеры ядра, но обеспечивает максимальную производительность с точки зрения количества исполняемых инструкций за такт. Кроме того, это также даёт возможность экономить мощность батарейки: «большое» ядро быстрее выполнит задачу и уйдёт в idle-режим, отключив шины ввода/вывода и памяти, в то время как «малое» будет держать включённым всю «обвязку» по мере обработки данных.

Apple A10 Fusion

Apple A10 Fusion

Стоит отметить, что до этого года Apple предпочитала не использовать гетерогенные процессорные ядра для оптимизации энергопотребления, как это делал ряд других разработчиков SoC. В отличие от предшественников, система на кристалле Apple A10 Fusion включает в себя два высокопроизводительных ядра общего назначения Hurricane и два экономичных ядра общего назначения Zephyr. Специальный контроллер внутри A10 Fusion динамически решает (возможно, базируясь на выставляемых приложениями флагах), какую пару ядер использовать, но никогда не использует все четыре одновременно.

Apple Hurricane — самое быстрое ARMv8-A ядро 2016 года

Сравнение площади различных ядер общего значения:

Сравнение площади различных ядер общего значения. Данные и инфографика Chipworks

Подробности об архитектуре нового высокопроизводительного вычислительного ядра Apple общего назначения, Hurricane, на сегодняшний день неизвестны. Однако, по данным Chipworks/TechInsights, компания-разработчик в очередной раз решила не экономить и создало максимально производительное устройство (на 40 % быстрее предшественника, Twister, согласно данным Apple), которое занимает площадь 4,18 мм2, что в разы больше любого высокопроизводительного ядра ARMv8-A. Так, площадь, занимаемая Qualcomm Kryo составляет 2,79 мм2, площадь Samsung M1 — 2,06 мм2, тогда как ARM Cortex-A72 ещё меньше — 1,54 мм2. Если же сравнивать размеры Hurricane с предшественником, то налицо некоторое уменьшение размеров — 4,18 мм2 против 4,5 мм2 у Twister (по данным Дэвида Кантера (David Kanter) с сайта RealWorldTech) вследствие использования более «компактного» техпроцесса для изготовления новинки — CLN16FFC. Существенная площадь ядра и более плотное размещение транзисторов позволили Apple реализовать в Hurricane определённые усовершенствования, вроде улучшенных блоков предсказания переходов, что увеличило итоговую производительность.

По данным The Linley Group, Hurricane существенно опережает Qualcomm Kryo, Samsung M1 и ARM Cortex-A72 в том, что касается производительности в одно- и дву- поточных рабочих нагрузках тестовых приложений Geekbench 3 и Geekbench 4 (TLG использует усреднённые значения двух синтетических бенчмарков. В таблице выше представлены данные только для GB4). Впрочем, Qualcomm Snapdragon 820 (2 × Kryo на 2,15 ГГц + 2 × Kryo на 1,59 ГГц), HiSilicon Kirin 955 (4 × ARM Cortex-A72 на 2,5 ГГц и 4 × ARM Cortex-A53 на 1,8 ГГц) могут быть быстрее Apple A10 Fusion при многопоточных нагрузках GB3 и GB4, однако таких относительно немного в реальной жизни.

«Hurricane сдувает конкурентов», — написано в отчёте The Linley Group, который цитирует Tech Trader Daily.

Кроме того, The Linley Group говорит, что Apple Hurricane может поспорить по производительности с ядром Intel Skylake в GB3/GB4. К сожалению, учитывая характер работы Geekbench на процессорах x86, сравнение производительности ядер ARMv8-A и x86 с использованием этого приложения кажется крайне спорным шагом.

Что касается экономичного ядра Apple Zephyr, то и оно существенно больше ARM Cortex-A53: 0,78 мм2 против 0,45 мм2. Едва ли столь скромные размеры позволяют рассчитывать на высокую производительность и архитектурные особенности вроде внеочередного исполнения инструкций (out-of-order execution, OOO). Тем не менее, по всей видимости, Apple постаралась максимизировать возможности и производительность Zephyr.

Рояль, а не древесина

Учитывая тот факт, что Apple продаёт не процессоры, а мобильные телефоны и планшеты, увеличение себестоимости микросхемы на несколько долларов вследствие использования крупных ядер никак не отражается на нормах прибыльности компании. Каждый телефон продаётся по цене $600 и выше, а потому куда важнее обеспечить его высокую производительность и энергоэффективность, нежели чем максимальную экономическую эффективность SoC (с метриками вроде производительность на мм2, которыми оперируют компании вроде ARM, Qualcomm и MediaTek).

Apple iPhone 7

Apple iPhone 7

Принимая во внимание экономические возможности Apple в области построения микросхем, довольно очевидно, что компания имеет все возможности для инвестиций в будущее. Другой вопрос, что Huawei (HiSilicon) и Samsung также имеют финансовые возможности и стимул создавать высокопроизводительные процессорные ядра. Станут ли эти компании создавать что-то, что будет быстрее разработок Apple, покажет лишь время.

Источники:

Читайте также