Процессоры. Процессоры Что зависит от процессора qualcomm snapdragon 820

Подписаться
Вступай в сообщество «l-gallery.ru»!
ВКонтакте:

Qualcomm на сегодняшний день является одним из ведущих создателей SoC для ультрамобильных устройств, наряду с Apple и Samsung. Разработку по-своему интересных и заслуживающих внимания продуктов также ведут Intel и NVIDIA, но, однако, и низковаттные разновидности Atom, и последние версии NVIDIA Tegra больше подходят для планшетных ПК и занимают маргинальные позиции на рынке смартфонов.

Как и в других категориях высокопроизводительных ASIC, циклы разработки мобильных систем-на-чипе связаны с освоением все более «тонких» стандартов фотолитографии. На текущем этапе индустрия переживает переход с техпроцесса 20 нм на норму 14-16 нм с трехмерной конструкцией затвора транзисторов (Samsung и TSMC, являющиеся крупнейшими подрядчиками по выпуску таких чипов, используют реализацию под названием FinFET), и Qualcomm из упомянутой выше тройки последней прыгнула в эту лодку, в то время как Apple и, ранее, Samsung уже освоили прогрессивную технологию для выпуска спроектированных ими SoC.

Появление Snapdragon 820 для Qualcomm означает восстановление паритета с главными соперниками, так как чип производится на конвейере Samsung с проектными нормами 14 нм FinFET LPP. Это техпроцесс второго поколения, обеспечивающий на 10% более высокие частоты по сравнению с 14 мм FinFET LPE, на котором производится Samsung Exynos 7420. Что не менее важно, в 820-м компания вновь использовала собственный дизайн CPU. Snapdragon 800, бывший флагманским чипом Qualcomm в эпоху 28 нм, оснащался четырьмя оригинальными ядрами Krait, но сменивший его Snapdragon 810 был комбинацией стандартных лицензированных у ARM ядер Cortex-A57 и A53. Snapdragon 820 получил новый CPU с оригинальной архитектурой Kryo. Эти меры необходимы для того, чтобы будущие смартфоны на обновленной платформе Qualcomm не повторили судьбу поколения 2015 года, пострадавшего от сравнительно низкой энергоэффективности 810-й модели и связанных с ней недостатков: низкого времени автономной работы, избыточного нагрева и пр.

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

Архитектура Qualcomm Snapdragon 820

По архитектуре центрального процессора Qualcomm Snapdragon 820 существенно отличается от своего предшественника - Snapdragon 810. Оба чипа регулируют уровень энергопотребления, переключая задачи между высокопроизводительным и экономичным кластерами вычислительных ядер. Однако если Snapdragon 810 использует четыре ядра Cortex-A57 и четыре структурно отличных ядра Cortex-A53 (архитектура Big.LITTLE), то Snapdragon 820 включает всего четыре ядра, одинаковых по строению конвейера.

Кластеры CPU в Snapdragon 820 различаются по настройкам частоты (вплоть до 1,6 и 2,2 ГГц соответственно) и питающего напряжения. Кроме того, высокопроизводительный кластер обладает расширенным кешем второго уровня. Конкретных чисел Qualcomm не сообщает, но сторонние источники указывают на 512 Кбайт кеша L2 для «слабой» пары ядер и 1 Мбайт L2 - для «мощной». L2 по-прежнему является высшим уровнем кеш-памяти в SoC, третий уровень в ней отсутствует.

Несмотря на то, что Snapdragon 820 сделал шаг назад по сравнению с 810-м по количеству процессорных ядер и незначительно продвинулся в тактовых частотах, это не означает, что производительность в типичных задачах принесена в жертву экономии мощности. Напротив, Qualcomm сообщает, что архитектурные изменения вкупе с переходом от техпроцесса 20 к 14 нм привели к двукратному росту как энергоэффективности, так и быстродействия CPU. Общее энергопотребление системы оценивается в 70% от такового у Snapdragon 810. К слову, в Snapdragon 820 реализована технология Quick Charge 3.0, которая должна на 27% ускорить зарядку аккумулятора по сравнению с QC 2.0, использованной в SoC предыдущего поколения.

В качестве графического процессора Qualcomm использует собственную разработку нового поколения - Adreno 530. Помимо улучшенной производительности сравнительно с Adreno 430 (на 40%, по данным производителя), входящим в состав в Snapdragon 810, новое графическое ядро совместимо с расширенным списком API. Появилась поддержка Vulkan и OpenGL ES 3.1 + Android Expansion Pack. Для неграфических вычислений Snapdragon 820 поддерживает OpenCL 2.0 и эксклюзивный для Android интерфейс Renderscript. Еще одна особенность, ранее свойственная только десктопным SoC, - общая для CPU и GPU виртуальная память. Qualcomm также представила программный компонент Symphony System Manager, управляющий гетерогенной нагрузкой на уровне ядра ОС.

Еще одна часть SoC, которую стоит выделить, - это DSP Hexagon 680, предназначенный для различных задач, связанных с обработкой изображений: кодирование и декодирование видео, компьютерное зрение, дополненная реальность и т.д. Блок оперирует эксклюзивным для него набором инструкций HVX (Hexagon Vector Extensions).

Snapdragon 820 получил новый интегрированный модем QS X12 с поддержкой LTE категории 12 для входящего сигнала и 13 - для исходящего (пиковые скорости - 600 и 150 Мбит/с соответственно). Wi-Fi поддерживается на уровне стандартов IEEE 802.11ac (MIMO 2x2 с пропускной способностью вплоть до 600 Мбит/с) и IEEE 802.11ad. Возможно переключение трафика (в т.ч. звонков) на лету между сетями Wi-Fi и LTE. Впрочем, модуль Wi-Fi, судя по всему, не входит в состав самой SoC и выполнен в виде отдельного чипа QCA6174A, который конечные производители могут заменить чем-нибудь другим.

Платформа для разработки на базе Snapdragon 820

Для проведения бенчмарков нам предложили MDP (Mobile Development Platform) с чипом Snapdragon 820 на борту. Устройство представляет собой «плафон» с экраном 6,2 дюйма (разрешение 2560 × 1600). ОЗУ LPDDR 4 объемом 3 Гбайт работает на частоте 1804 МГц в отличие от 1555 МГц, характерных для устройств на базе Snapdragon 810 и Samsung Exynos 7420. Из беспроводных коммуникаций образец поддерживает только Wi-Fi.

Коммерческие устройства на базе Snapdragon 820, естественно, будут отличаться от MDP по внешнему виду, но в плане основных спецификаций образец вполне репрезентативен и, главное, позволяет оценить работу новой SoC в целевом форм-факторе смартфона. По крайней мере, за время тестовой сессии корпус устройства ни разу не был заметно горяч на ощупь, и это уже хороший знак.

  • Процессорная архитектура : ARM v8 c поддержкой 64-битных вычислений
  • Вычислительные ядра : 2 ядра Kryo 64-bit с динамически изменяемой частотой до 2.2 GHz + 2 ядра Kryo 64-bit с частотой 1,6-1,7 GHz
  • Техпроцесс : 14 нм FinFET
  • Поддержка ОЗУ : двухканальная LPDDR4 RAM с частотой до 1866 MHz
  • Поддержка камеры : до 28 мегапикселей благодаря встроенному процессору обработки изображений Spectra Camera ISP
  • Графическое ядро : Adreno 530 GPU с частотой 650 MHz
  • Вывод графики : поддержка дисплеев разрешением до 4K Ultra HD и вывод видео 4K Ultra HD на HDTV
  • Аппаратное ускорение видео : 4K Ultra HD H.264 (AVC) и H.265 (HEVC) с частотой кадров 60 FPS
  • Цифровой сигнальный процессор (DSP) : Hexagon 680
  • Модем : X12 LTE
  • Навигация : GPS, Глонасс, Beidou
  • Bluetooth : v4.2
  • Быстрая зарядка : Quick Charge 3.0
  • NFC : да
  • USB : 3.0/2.0, OTG, зарядка по USB

Отметим, что Snapdragon 820 — это не просто мощный процессор, это полноценное комплексное решение для мобильной вычислительной системы с широкими мультимедийными возможностями в одном кристалле, которое включает в себя собственно CPU, высокопроизводительное графическое ядро, контроллер памяти, ускоритель кодирования видео, сигнальный процессор и еще ряд функциональных модулей.

Как и все новые чипсеты Qualcomm, Snapdragon 820 поддерживает технологию быстрой зарядки следующего поколения. Заявлено, что теперь зарядка смартфонов будет проходить в четыре раза быстрее чем обычно, причем новое поколение Quick Charge 3.0 будет на 38% эффективнее, чем Quick Charge 2.0 за счет применения новых и усовершенствованных алгоритмов управления энергопотреблением. Восполнение 80% заряда аккумулятора будет происходить за рекордные 35 минут!

Интересной особенностью нового чипсета является применение технологии Snapdragon Smart Protect для борьбы с вредоносным ПО, которое последнее время все чаще и чаще стало появляться для мобильных устройств. Данная технология, встроенная в Snapdragon 820, позволяет отслеживать активность вредоносных программ без потери общей производительности устройства в фоновом режиме.

Модем X12 LTE

Приятной неожиданностью стала поддержка нового модема X12 LTE, который официально поддерживает не только спецификацию LTE Cat. 10 (до 450 Mbps на входящем канале, до 100 Mbps на исходящем), но и LTE Cat. 12 (до 600 Mbps на входящем канале), LTE Cat. 13 (до 100 Mbps на исходящем) и LTE in Unlicensed (LTE-U).

На этом преимущества предназначенного для Snapdragon 820 модема X12 LTE не заканчиваются. Новинка поддерживает кажущуюся пока что нереально высокую скорость передачи в беспроводных сетях WiFi. Сообщается, что в режиме 2×2 80 MHz 11ac скорость передачи данных составит 867 Mbps , а в режиме 11ad пиковая скорость возрастет до 4.6 Gbps ! То есть почти что в пять раз при аналогичном потреблении энергии. Snapdragon 820 благодаря X12 LTE будет способен работать в беспроводных сетях как 2,4 GHz, так и 5 GHz.

Демонстрация возможностей LTE Cat. 12, LTE Cat. 13, LTE-U

Первые смартфоны на Snapdragon 820 от Qualcomm

Первым заявленным смартфоном на базе Snapdragon 820 стал Xiaomi Mi5, который ожидается уже в декабре этого года. Далее появилась информация о том, что Samsung планирует применение Snapdragon 820 в своем будущем Galaxy S7 наряду с собственным . Позже вышло уточнение, что Galaxy S7 на базе нового чипсета от Qualcomm будет доступен только в двух странах — США и Китае (включая Гонконг). Отдельный вопрос — будет ли Snapdragon 820 применяться в Galaxy S7 Edge.

Скорее всего, на базе Snapdragon 820 будут выпускаться другие ожидаемые флагманы начала следующего года — HTC One M10, Sony Xperia Z6, LG G5 и другие. Далее наступит черед чисто китайских производителей, которые несомненно будут применять для своих топовых смартфонов Snapdragon 820. Впрочем, это уже скорее догадки, которые основаны на сложившихся тенденциях на рынке мобильных устройств.

Snapdragon 820 vs Snapdragon 810

Как мы уже отметили выше, новый чипсет от Qualcomm намного превосходить своего предшественника. К тому же производитель обещает, что Snapdragon 820 будет лишен проблем с перегревом и излишним энергопотреблением, которые были свойственны Snapdragon 810.

Сравнение характеристик Snapdragon 820 и Snapdragon 810
Snapdragon 820 Snapdragon 810
Архитектура ARM 64-bit ARM 64-bit
Процессор 4 x Kryo (2 x 2,2 GHz + 2 x 1,7 GHz) 4 x Cortex A57 2 GHz и 4 x A53
Техпроцесс 14 нм 20 нм
ОЗУ до 4 Gb LPDDR4 1866 MHz до 4 Gb LPDDR4 1600 MHz
Графика Adreno 530 Adreno 430
LTE LTE Cat. 12, 13, LTE-U LTE Cat. 10
Bluetooth BT 4.2 BT 4.1
Зарядка Quick Charge 3.0 Quick Charge 2.0

Судя по всему, в Qualcomm решили отказаться от копирования решения 4+4 (4 ядра для режима повышенной производительности и 4 ядра для режима энергосбережения), которое давно применяет Samsung в своих собственных процессорах, в пользу четырех полноценных вычислительных ядер, которые будут различаться лишь частотой.

В целом видна большая и качественная работа, которую Qualcomm проделала, создавая Snapdragon 820. Результаты тестов первых прототипов показали пусть и не двухкратное, но значительное превосходство новинки над своим предшественником. В однопоточных вычислениях в популярном бенчмарке GeekBench Snapdragon 820 набирает 1732 балла против 1227. Во многопоточных вычислениях новый чипсет получил 4970 баллов. Qualcomm Snapdragon 810 здесь набрал 4869 очков. Превосходство, прямо сказать, не впечатляет, однако в случае Snapdragon 820 речь идет о тестовых прототипах устройств, которые еще не прошли достаточную отладку на аппаратном и программном уровнях.

Обсчет графики встроенного в Snapdragon 820 GPU Ardeno 530, по словам производителей, на 40% эффективнее применяемого в Snapdragon 810 Ardeno 430, причем потребление энергии также меньше на 40%.

Snapdragon 820 vs Exynos 8890 vs Exynos 7420

Сравнивать на уровне чисто технических показателей Snapdragon 820 и собственные чипсеты Samsung линейки Exynos сложнее, однако уже сейчас можно сделать некоторые выводы. Во-первых, встроенный модем Snapdragon 820, как и предыдущих разработок компании, намного универсальнее решений от Samsung за счет большего спектра поддерживаемых частот. К тому же модемы Qualcomm поддерживают стандарт CDMA, а Exynos — нет. Это достаточно критично, например, для американского и китайского рынка.

Мобильная система на чипе Snapdragon 820 компании Qualcomm была передовым продуктом первой половины 2016 года и нашла применение во многих флагманских смартфонах этого времени. Не такой известный чип Snapdragon 652 также оказался довольно востребованным в качестве более бюджетного варианта, среди прочих войдя в состав смартфонов 10 Lifestyle и G5 SE.

Эти смартфоны являются облегчёнными версиями 2016 года по более низким ценам. Желающие сэкономить могут посмотреть на различие между двумя процессорами Snapdragon.

Спецификации

Сразу можно заметить разницу в конфигурации вычислительных ядер. Snapdragon 820 является 4-ядерным процессором с ядрами Qualcomm Kryo. Snapdragon 652 задействует архитектуру big.LITTLE и состоит из четырёх производительных ядер ARM Cortex-A72 и четырёх ядер Cortex-A53 с более низким расходом энергии. В этом отношении он напоминает выпущенный годом ранее процессор Snapdragon 810, но в последнем использовались не такие производительные ядра Cortex-A57.

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

Snapdragon 652 создан на основе более крупного и дешёвого технологического процесса 28 нм, Snapdragon 810 произведён на техпроцессе 20 нм, а Snapdragon 820 на 14 нм. Чем меньше это значение, тем лучше производительность и ниже энергопотребление, так что Snapdragon 820 лидирует. Из этого не следует, что Snapdragon 652 испытывает проблемы с нагревом, но здесь правильное распределение нагрузки имеет для инженеров имеет большее значение.

Возможно, избежать нагрева позволило решение установить тактовую частоту ядер Cortex-A72 на 1,8 ГГц против 2,2 ГГц в Kryo. При этом максимальное значение Cortex-A72 на 28 нм может составлять 2 ГГц, а на 16 нм вырастает до 2,5 ГГц.

Занимаемое восемью ядрами дополнительное пространство отнимает место у графического чипа. Разница в графике между этими процессами более заметна. Snapdragon 820 использует Adreno 530, лучший вариант полуторагодичной давности, тогда как Snapdragon 652 довольствуется Adreno 510. Последний по скорости не может сравниться даже с Adreno 430 в Snapdragon 810, но сопоставим по мощности с Adreno 418 в Snapdragon 808.

Таким образом, геймеры могут быть разочарованы возможностями Snapdragon 652. Для тех, кто запускает игры изредка, скорости может хватить. Она будет на уровне LG G4 в Snapdragon 808.

Прежде чем завершить тему производительности, назовём последнее значительное различие. Snapdragon 820 поддерживает намного более быструю двухканальную оперативную память LPDDR4 с тактовой частотой до 1866 МГц, а на Snapdragon 652 только двухканальную LPDDR3 933 МГц. Таким образом, даже если в смартфонах на этих процессорах объём оперативной памяти одинаковый, скорости будут разные. Это оказывает заметное влияние на время запуска приложений и игровую производительность.

Функциональность

Snapdragon 820 поддерживает цифровой сигнальный процессор Qualcomm Hexagon 680 и процессор обработки изображений Spectra, которые могут применяться для обработки аудио, видео и графики. На этих сопроцессорах обработка более эффективная и расходует меньше энергии. Как и в случае с оперативной памятью, нужно, чтобы производители устройств задействовали их.

Есть между процессорами и не такие заметные различия. Поскольку Snapdragon 820 был флагманской моделью, его функциональные возможности более обширные, чем у Snapdragon 652. Здесь снова наличие разной функциональности зависит от их производителей устройств, поэтому нужно внимательно смотреть аппаратные характеристики смартфонов.

Оба процессора поддерживают стандарт быстрой подзарядки Quick Charge 3.0, поэтому время подзарядки должно быть одинаковым. Только Snapdragon 820 поддерживает беспроводную подзарядку WiPower. Snapdragon 652 не поддерживает ещё и протокол USB 3.0, поэтому перенос больших файлов будет занимать больше времени.

Что касается стандарта связи LTE, Snapdragon 820 использует модем X12, у которого теоретическая скорость выше, чем у модема X8 внутри Snapdragon 652. Скорости входящего и исходящего соединения составляют 450 и 150 Мбит/с против 300 и 100 Мбит/с благодаря дополнительной агрегации несущих частот. Многие пользователи не заметят разницы в скорости доступа в интернет.

Таким образом, по функциональным возможностям Snapdragon 652 не может сравниться с Snapdragon 820, пришлось сократить возможности, чтобы сделать процессор более дешёвым для более дешёвых смартфонов. Несмотря на это, разница в производительности и опциях между верхним и средним сегментом рынка постоянно сокращается.

Компания Qualcomm решила делиться с публикой новостями о грядущей топовой однокристальной системе Snapdragon 820 порционно, выкладывая информацию о различных ее составляющих по кусочкам. О части новых возможностей графической подсистемы Adreno 530 и сигнального процессора Spectra ISP они рассказали на ежегодной конференции по вопросам компьютерной графики Siggraph 2015, а другую порцию информации о сигнальном цифровом процессоре Hexagon 680, также входящем в состав топовой SoC, они выдали на конференции Hot Chips, посвященной вопросам, связанным с разработкой и производством высокопроизводительных микроэлектронных чипов.

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

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

На конференции Siggraph 2015, прошедшей в Лос-Анджелесе в августе, компания продолжила череду анонсов, представив графические процессоры нового поколения под маркой Adreno 5xx, и цифровой сигнальный процессор для обработки статических и динамических изображений Spectra ISP. Эти составляющие однокристальной системы Snapdragon 820 обеспечивают увеличение производительности и энергетической эффективности, вместе с улучшением характеристик и возможностей.

Составляющие однокристальной системы Snapdragon 820

Компания Qualcomm постоянно улучшает свои топовые продукты, предназначенные для самых требовательных пользователей, и Snapdragon 820 — одно из таких решений, важных для компании и индустрии в целом. Специалисты компании в этот раз сфокусировались на улучшении визуального качества (поддержка более высокого разрешения и частоты кадров, качество и точность цветопередачи, улучшение картинки в плане повышения контрастности и яркости), качества звука (поддержка звука с высокой частотой дискретизации, поддержка объемного звука и улучшение качества низкокачественных образцов), а также методов взаимодействия пользователя с устройствами (отзывчивость и точность пользовательских интерфейсов).

Snapdragon 820 — это весьма сложная однокристальная система, единый кристалл, содержащий практически все необходимое для работы мобильного устройства. Как и любой современный микроэлектронный чип подобного назначения, Snapdragon 820 имеет гетерогенный дизайн, сочетая в себе несколько вычислительных ядер различного назначения: универсальные ядра и блоки, предназначенные для строго определенного круга задач. Такое решение обеспечивает высокую итоговую производительность при сохранении приемлемого потребления питания и тепловыделения, что крайне важно для компактных мобильных устройств, вроде смартфонов и планшетов.

Рассмотрим иллюстрацию, раскрывающую все основные составляющие однокристальной системы Qualcomm Snapdragon 820. Сразу же оговоримся — приложенная иллюстрация не является реальным снимком чипа, это просто очень примерная схема относительных размеров различных блоков однокристальной системы.

С точки зрения обработки визуальной информации, Snapdragon 820 содержит несколько ядер: графическое ядро Adreno 530, блок вывода видеоданных Adreno DPU (Display Processing Unit), блок обработки видеоданных Adreno VPU (Video Processing Unit), а также процессор обработки изображений Spectra ISP — все они занимаются своими задачами, и только GPU может исполнять какие-то универсальные вычисления в том числе. Кстати, на самом деле, в состав Spectra ISP входит еще кое-что, но об этом мы поговорим ниже.

В Snapdragon 820 компания Qualcomm постаралась улучшить свои продукты с точки зрения обработки визуальной информации сразу по нескольким направлениям: фотоснимки и видеозаписи с мобильных устройств должны быть всегда правильно сфокусированными, четкими и не размытыми в любых условиях освещения и активного передвижения снимаемых объектов, а получаемые цвета должны быть натуральными — причем, точность цветопередачи должна обеспечиваться во всем конвейере обработки визуальных данных: фотоснимки, видеозаписи, отрендеренное на GPU изображение и финальный результат, выведенный на дисплей.

Кроме этого, качество воспроизведения видеороликов и 3D-рендеринга в играх должно быть максимальным, то есть производительность и функциональность блоков обработки видео и графического процессора должны быть высочайшими. А отзывчивость пользовательского интерфейса (в операционной системе, браузере, системных и сторонних приложениях) должна быть мгновенной и как можно более плавной — пользователь не должен видеть никаких дерганий и тормозов. Не забывает Qualcomm и о поддержке технологий следующего поколения, которые только начинают свой путь на рынке: вычислительная фотография, виртуальная и дополненная реальность и т. д.

Графическое ядро Adreno 530

Для всех указанных выше задач требуются производительные вычислительные блоки, которые специализируются на выполнении их части. Так, 3D-рендерингом и некоторыми неграфическими задачами в Snapdragon 820 занимается встроенное видеоядро Adreno 530 — верхнее решение нового поколения GPU компании Qualcomm, предназначенное для обеспечения работы пользовательского 2D-интерфейса, 3D-игр, рендеринга и отображения веб-страниц и приложений виртуальной и дополненной реальности.

Графическое ядро Adreno 530 обеспечивает увеличение производительности и эффективности, по сравнению с и так весьма неплохим топовым GPU предыдущего поколения Adreno 430. Первыми двумя видеоядрами, анонсированными Qualcomm, стали Adreno 530 и Adreno 510, которые впервые появятся в составе будущих моделей однокристальных систем Snapdragon 820 и Snapdragon 620/618.

Как и предыдущие решения, новые графические ядра архитектуры Adreno 5xx хорошо масштабируются, и на момент выхода Adreno 530 станет самым высокопроизводительным GPU компании Qualcomm, обеспечивая 40% прироста в скорости рендеринга и неграфических вычислений, и одновременно с этим — на 40% меньшее потребление энергии, по сравнению с Adreno 430.

Новый графический процессор поддерживает виртуальную 64-битную адресацию памяти, что позволяет организовать разделяемую виртуальную память (shared virtual memory — SVM) и эффективное взаимодействие с 64-битными универсальными ядрами CPU, что важно в гетерогенных вычислениях. Также были улучшены система управления питанием, внедрены новые техники и алгоритмы рендеринга, сортировки и сжатия, помогающие снизить энергопотребление и требовательность к полосе пропускания памяти.

Компания не особенно подробно распространяется на тему функциональных улучшений в новом поколении своей графики, говоря лишь о поддержке всех современных мобильных графических и вычислительных API, таких как OpenGL ES 3.1 вместе с AEP (Android Extension Pack), Renderscript, OpenCL 2.0 а также перспективного Vulkan — нового поколения графического API от Khronos Group, известных по стандартам OpenGL.

Этот новый стандарт все еще находится в стадии разработки и обеспечивает более высокую производительность при меньшей нагрузке на CPU-ядра, минимизируя затраты времени, проводимого в видеодрайвере, аналогично таким графическим API, как Microsoft DirectX 12 и AMD Mantle. Также Vulkan отличается лучшим использованием мощности многоядерных мобильных CPU, обеспечивая лучшее масштабирование в современных системах, имеющих большое количество CPU-ядер.

Почему поддержка Vulkan важна для современной индустрии, и особенно в мобильных устройствах? Во-первых, это единственный мультиплатформенный графический API нового поколения, работающий в различных операционных системах и с разным аппаратным обеспечением. Если DirectX 12 работает только в Windows 10, Metal — только на устройствах компании Apple, Mantle — только на GPU компании AMD, то Vulkan может работать где и на чем угодно: поддерживаются все системы Windows от версии XP до 10, Linux, SteamOS и Android. Кроме этого, в Vulkan появилась родная поддержка тайлового рендеринга, что особенно полезно для мобильных GPU.

Немудрено, что инициатива Vulkan получила поддержку от многих компаний, производящих программное и аппаратное обеспечение. Среди производителей «железа» можно выделить Qualcomm, Intel, Nvidia, ARM, AMD, Samsung, Imagination, MediaTek, Sony и других, а с программной стороны в новом API заинтересованы такие известные компании, как Pixar, Epic Games, Unity, Valve, Oculus VR, создатели ubuntu, Blizzard, EA, LucasFilm и другие (список неполный).

Чтобы показать некоторые из возможностей своих новых мобильных графических процессоров, компания Qualcomm предлагает несколько специальных демонстрационных версий. В частности, демо-программу под названием «Paris Apartment», использующую известный и весьма популярный игровой движок Unreal Engine 4 компании Epic Games.

По маленькому изображению судить сложно, но поверьте — в этой программе показывается сцена из нескольких комнат, в которых рассчитывается весьма реалистичное освещение, да и в целом графика в этой программе достаточно сложна даже для некоторых настольных решений, особенно предыдущих поколений, и требует поддержки множества новых технологий, так что Adreno 530 явно обеспечивает неплохой уровень как производительности, так и функциональности, если способен на такое.

На выставке Siggraph 2015 компания Qualcomm показывала еще несколько демонстрационных версий, использующих многие современные функции Adreno, вроде аппаратной тесселяции, HDR-рендеринга, расчета качественного освещения и отражений, а также временно́го полноэкранного сглаживания (temporal antialiasing).

В частности, на стенде показывали программы, использующие движки Unreal Engine и Unity 5 и работающие, в том числе, на уже продаваемых устройствах, использующих предыдущие модели Snapdragon. Для мобильных устройств эти демки выглядят действительно неплохо, в них используется качественная геометрия, полученная с применением тесселяции и карт смещения (displacement mapping) — возможность, которая появилась в мобильных однокристальных системах не так давно: начиная с OpenGL ES 3.1 c Android Extension Pack.

Увидели мы и уже знакомую нам демо-программу с рендерингом лица девушки, показывающую продвинутые техники визуализации человеческой кожи с имитацией подповерхностного рассеивания света (subsurface scattering), отражением и преломлением в глазах, HDR-рендерингом и мягкими тенями с самозатенением. Впрочем, эта программа выполняется еще на Adreno 430, и качество визуализации могло бы быть и повыше — надеемся, что с Adreno 530 это станет возможным.

На стенде Qualcomm на графической конференции показывали и возможности нового графического API Vulkan. Как мы писали выше, этот API позволяет вызывать гораздо большее количество функций отрисовки без падения производительности, по сравнению с OpenGL. В демо-программе как раз и показывалась эта возможность — в ней используется до 5000 вызовов функций Draw Call, при этом частота кадров была около 44-45 FPS.

Но это все показывали еще на старых GPU. А что касается производительности именно Adreno 530, то компания Qualcomm утверждает, что новое видеоядро обеспечивает и бо́льшую производительность, и меньшее энергопотребление, что немудрено, учитывая будущее производство новой однокристальной системы с использованием FinFET-техпроцесса (предположительно — 14 нм на фабриках компании Samsung).

Для начала давайте рассмотрим среднюю производительность и потребление нового GPU в нескольких общепринятых мобильных 3D-бенчмарках, по сравнению с ядром Adreno 430, принятым за единицу. Как видите на следующей диаграмме, новое графическое ядро в среднем на 40% быстрее предыдущего топового, и требует настолько же меньше энергии при этом. Получается, что энергоэффективность нового Adreno 530 почти вдвое выше!

Также новый Adreno 530 обеспечивает высочайшую производительность и в неграфических вычислительных задачах (GPGPU). Инженеры компании Qualcomm улучшили эффективность вычислительных блоков для неграфических вычислений, а поддержка 64-битной виртуальной адресации позволяет использовать разделяемую виртуальную память, общую для CPU и GPU — для оптимизации гетерогенных вычислений.

Новый графический процессор полностью поддерживает как уже давно нам известный стандарт OpenCL 2.0, так и Renderscript — еще один API для интенсивных гетерогенных вычислений на мобильных устройствах, являющийся компонентом операционной системы Android.

Вычислительное ядро Adreno 530 обеспечивает большую скорость в вычислительных задачах, в том числе при обработке видеоданных, да еще и при меньшем потреблении энергии. Выше представлены лишь несколько подобных задач, подробности которых, впрочем, не раскрываются. Видно, что новый GPU может быть быстрее ядра предыдущего поколения и всего лишь на 20%, и в 2,5 раза — в зависимости от задачи.

Adreno 530 — универсальный вычислительный процессор, и при помощи OpenCL может многое. Например, компания Qualcomm разрабатывает несколько новых программных решений, которые используют GPU в неграфических вычислениях (точнее, связанных с изображением, но использующих GPU-вычисления как неграфические). Приведем в качестве примера алгоритм выделения фона («виртуального зеленого фона»), часто используемого в видеоиндустрии:

Данный алгоритм отделяет задний фон от основного объекта (человека) и размывает его, используя возможности CPU и GPU-ядер в однокристальных системах Snapdragon. Использование GPGPU-возможностей при помощи OpenCL 1.2 и FastCV более чем вдвое ускоряет выполнение алгоритма исключительно на CPU, а одновременное использование этих двух типов вычислительных ядер снижает уровень энергопотребления до 40%.

На стенде компании на Siggraph была представлена еще одна демонстрационная программа, использующая возможности Adreno при помощи OpenCL — программа для сшивки панорам. В будущих решениях она может обеспечить лучшее качество сшивки панорам (переходы между кадрами с меньшими искажениями) из-за более высокой производительности, также при меньшем потреблении энергии. Кроме этого, Qualcomm утверждает, что их алгоритм сшивки умеет учитывать движущиеся объекты, и устранять соответствующие артефакты в реальном времени.

Для повышения удобства разработки 3D-приложений, в компании Qualcomm разработали специальное ПО для профилирования трехмерных приложений, имеющее все необходимые возможности, аналогичные лучшим решениям, принятым в качестве стандартных при разработке игровых и профессиональных 3D-приложений в «старшей» индустрии настольных ПК.

Процессор обработки изображений Spectra ISP

Для обеспечения высокого качества изображения нужно улучшать его обработку во всем конвейере: от камеры мобильного решения до вывода изображения на экран. И в каждом случае есть свои узкие места. Для камеры это физические ограничения мобильных устройств по размеру сенсора и оптики (невысокое качество изображения с большим количеством шумов при недостатке света), а для экрана — физические же ограничения нынешних LCD- и LED-экранов (частичное отображение цветовой палитры, ограниченные контрастность и яркость).

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

Старшая модель однокристальной системы Snapdragon 820 отличается внедрением нового 14-битного процессора по обработке изображений Spectra ISP (image signal processing), который должен обеспечить серьезное улучшение в возможностях и производительности специальной обработки фотографий (вычислительная фотография), компьютерного зрения, виртуальной реальности и т. п.

В возможности Spectra ISP входят: улучшенный de-mosaic фильтр, предназначенный для новых сенсоров с мелкими чувствительными элементами, новые методы аппаратного шумоподавления и коррекции цветовых артефактов, фильтры предварительной обработки видеопотока, улучшенные алгоритмы гибридной автофокусировки (фазовая/контрастная/лазерная), использование GPGPU-вычислений в алгоритмах сшивки панорам и при качественном цифровом увеличении изображения. И все это — с одновременным снижением энергопотребления.

Применение Spectra ISP позволяет получить улучшенное качество изображений — снимки с расширенным диапазоном яркости, улучшенными цветами и натуральным цветом человеческой кожи. Специалисты Qualcomm уверяют, что новый Spectra ISP в составе Snapdragon 820 обеспечивает лучшую энергоэффективность и большую производительность при обработке изображений, по сравнению с предыдущими решениями. 14-битный сдвоенный сигнальный процессор поддерживает до трех камер одновременно (одна фронтальная и пара основных) с разрешением до 25 мегапикселей при скорости съемки в 30 кадров в секунду с почти отсутствующей задержкой перед получением снимка.

Представители компании рассказывают и о других применениях возможностей нового процессора для обработки изображений. В частности, его можно использовать в алгоритмах перефокусировки фотографий уже после того, как они были сделаны, с использованием карты глубины (depth map), которая содержит данные о расстоянии между камерой и объектами на снимке. Проще всего это показать на примере:

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

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



Работа таких алгоритмов улучшает итоговое качество снимков, которые в целом экспонированы верно, но содержат большие участки со слишком темным изображением. Но в случае простого повышения яркости на темных участках чаще всего вылазят неприятные шумы на картинке — для их удаления применяются возможности Spectra ISP по постобработке в виде быстрого и эффективного шумоподавления.

Новый блок в составе Snapdragon 820 отличается улучшенной энергоэффективностью, по сравнению с ISP предыдущих поколений, лучшей системой шумоподавления и возможностью предварительной обработки изображений, используемой в системах компьютерного видения. Для облегчения работы производителей конечных устройств, Qualcomm предлагает гибкий framework с поддержкой гибридной автофокусировки и специальные алгоритмы обработки изображений вычислительной фотографии.

Были дополнительно улучшены и уже известные нам по предыдущим решениям технологии компании: EcoPix и TruPalette, улучшающие общее качество изображения посредством осветления темных областей и исправления цветового баланса. На Siggraph были показаны весьма наглядные демонстрации работы этих технологий:

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

Цифровой сигнальный процессор Hexagon 680

В состав однокристальной системы Qualcomm Snapdragon 820 входит новый цифровой сигнальный процессор (DSP) под названием Hexagon 680. Этот процессор специализируется на высокопроизводительных вычислениях, типичных для мобильных устройств, а гетерогенные вычисления (когда используются возможности и CPU-ядер и специализированного DSP одновременно) способны обеспечить необходимую гибкость и предназначены для повышения производительности мобильной однокристальной системы при снижении энергопотребления и тепловыделения.

Вообще, в состав грядущей топовой модели Snapdragon 820 входит аж три специализированных цифровых сигнальных процессора, каждый из которых занимается исключительно своими задачами с максимальной эффективностью:

Главное отличие специализированных DSP от универсальных вычислителей вроде ядер CPU и графического процессора GPU в том, что цифровые сигнальные процессоры «заточены» под определенные задачи, и исполняют их с максимальной эффективностью с наименьшими затратами энергии. Так, «модемными» задачами в составе Snapdragon 820 занимается специальный модемный DSP, задачами, требующими невысокой, но постоянной вычислительной нагрузки — выделенный DSP, потребляющий очень мало энергии, а самой универсальной является совершенно новая разработка компании Qualcomm — цифровой сигнальный процессор Hexagon 680.

Основная особенность DSP заключается в том, что их архитектура предназначена для максимально эффективного выполнения некоего набора функций, и ярким примером таких вычислителей являются блоки по декодированию видеоданных. Хотя DSP также можно запрограммировать, они не обеспечивают такой же гибкости, как универсальные CPU, и могут выполнять только заранее определенные функции. В свою очередь, DSP все же программируются и они гибче аппаратного обеспечения, выполняющего исключительно фиксированные функции (fixed function).

Новая архитектура Hexagon обеспечивает куда больше возможностей и гибкости в таких задачах, как продвинутая обработка фотографий (вычислительная фотография), машинное зрение, виртуальная реальность и машинное обучение. При всем этом, требовательность к питанию у однокристальной системы даже уменьшается, так как многие вычислительно-интенсивные операции с CPU передаются на исполнение в Hexagon 680, который справляется с ними куда эффективнее.

Hexagon 680 — это уже третий по счету высокопроизводительный вычислитель в составе Snapdragon, после CPU и GPU. В отличие от других DSP в составе чипа, он является многопоточным вычислительным блоком, предназначенным для более широкого круга задач, обеспечивая весьма эффективное исполнение операций над звуком и изображением. Нужно особенно отметить, что для работы Hexagon 680 используются специальные векторные расширения HVX (Hexagon Vector eXtensions) — первые в индустрии wide vector SIMD-расширения для DSP, специально предназначенные для мультимедийных операций над звуком и изображениями.

При помощи этих расширений можно использовать имеющуюся мощь интегрированного Hexagon 680 для того, чтобы применить новые алгоритмы и техники при обработке фотоснимков и видеороликов, в задачах виртуальной и дополненной реальности, а также машинном зрении: определении и опознавании различных объектов. Один из примеров таких вычислений компания Qualcomm показывала на Siggraph 2015:

Специальным образом «обученное» (см. машинное обучение) программное обеспечение, использующее возможности современных однокристальных систем компании, умеет определять характер изображений и изображенные на них объекты. В случае мобильного ПО Qualcomm оно может понять, на улице было снято фото или в помещении, определять наличие людей на фото и находить на нем известные ему категории объектов: самолеты, люди, часы, животные, кошки и т. д.

Разработкой подобного ПО сейчас занимаются почти все крупные компании. В случае программы Qualcomm очень важно, что она полностью работает на мобильном устройстве с однокристальной системой Snapdragon, не используя подключение к интернету и внешние серверы. В теории, при помощи обработки большого количества фотографий ее можно «научить» опознавать ваших друзей, членов семьи и т. д.

Данное ПО распознает изображение с камеры планшета прямо в реальном времени — когда демонстратор на стенде просто подставил под камеру свою руку, то программа указала, что она «видит» руку и часы на запястье (правда, почему-то «людей» она не увидела — вероятно, имеется в виду отсутствие в кадре именно человеческих лиц).

Совместная работа анонсированного DSP с ядром Spectra ISP позволяет серьезно улучшить возможности по обработке видеоданных в условиях недостаточного освещения и обрабатывать HDR-видео в реальном времени, ведь в таких задачах новый DSP в несколько раз быстрее предыдущих решений.

Именно пример обработки видеороликов и фотографий, снятых в темноте, и приводит Qualcomm в качестве одного из главных предназначений Hexagon 680, который способен серьезно улучшить изображение ценой крайне небольших затрат энергии. Алгоритм компании, специально разработанный для Hexagon 680, адаптивно улучшает картинку, осветляя правильно экспонированное изображение, участки которого выглядят слишком темными.

Для этой задачи используется ускоренный при помощи HVX локальный процесс преобразования диапазона яркостей (tone mapping). И так как при этом появляется большое количество шумов на изображении, к этим же участкам применяется специальный шумоподавляющий фильтр, быстро и эффективно справляющийся со всеми артефактами. Результат работы алгоритма, исполняемого на Hexagon 680, был проиллюстрирован чуть выше, в разделе Spectra ISP, так как эти два блока взаимодействуют друг с другом при обработке изображений.

По данным компании Qualcomm, применение Hexagon 680 в задачах улучшения изображений, полученных в условиях недостатка освещения, обеспечивает ускорение до трехкратного при вдесятеро меньшем энергопотреблении, по сравнению с теми же задачами, исполняемыми на мощных многоядерных CPU (в данном случае — четырех ядрах Krait, да еще со специальной оптимизацией для SIMD-ускорителя NEON). То есть главное достижение даже не в увеличении производительности самом по себе, а в серьезном улучшении энергоэффективности, столь важном для мобильных устройств.

Сравним специализированный DSP с применением HVX, работающий на частоте в 725 МГц, с четырехъядерным процессором Krait, работающим на частоте 2,65 ГГц и полной оптимизацией для NEON, в задачах по обработке изображений чуть подробнее — на следующей диаграмме приведен более широкий круг задач, с которыми Hexagon 680 легко справляется:

Хотя преимущество нового DSP не всегда получается впечатляющим, но он в любом случае быстрее четырех ядер Krait, работающих на более высокой частоте, и обеспечивает значительное улучшение скорости даже по сравнению с мощным CPU — различные фильтры приносят от 90% до 320% прироста производительности. Еще более интересно сравнение энергоэффективности этих вычислительных устройств:

В данных тестах замерялось потребление энергии исключительно занятым в основной работе ядром, исключая остальную инфраструктуру однокристальной системы, такую как DDR-память и т. д. При сравнении энергоэффективности преимущество DSP над CPU в задачах обработки изображений составило от 4- до 18-кратного, и вот это уже можно назвать весьма впечатляющим результатом.

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

Посмотрите на еще один пример улучшения резкости изображения — в данном случае, для видеоролика сравнительно низкого разрешения в 1920×1080 пикселей, отмасштабированного при помощи высококачественного фильтра на экран 4K-разрешения. На наш взгляд, улучшение качества масштабирования и четкости налицо:

Вероятно, и в этом случае применение Hexagon 680 отличается меньшим энергопотреблением и/или увеличением производительности, хотя Qualcomm не приводит конкретные цифры. В любом случае, понятно, что специализированный сигнальный процессор, «заточенный» под обработку изображений, способен делать эту работу куда эффективнее, чем универсальные ядра CPU или графические ядра GPU, которые затратят куда больше энергии, что неприемлемо для мобильных чипов.

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

Если современные CPU имеют суперскалярную архитектуру и внеочередное исполнение команд (out-of-order execution), то DSP довольствуется выполнением инструкций по порядку (in-order) и имеет VLIW-архитектуру — уже одно это серьезно упрощает вычислительные блоки и снижает потребление энергии. Более того, CPU имеют сравнительно короткие векторные команды с большими накладными расходами, а широкие векторы в DSP их сглаживают.

Также CPU-ядра обычно оптимизированы для работы на высокой частоте с высокими токами утечек (leakage), а DSP оптимизирован для работы на низкой частоте и при низком напряжении с меньшими утечками. В общем, отличие от CPU, большая часть энергии в случае расчетов на DSP тратится именно на вычисления, а не на накладные расходы, связанные с высокой универсальностью CPU.

Еще одной причиной того, что задачи обработки изображений было решено переложить на Hexagon DSP, является сырость большинства алгоритмов вроде HDR-фото и видео, улучшения качества фотоснимков, полученных при недостаточном освещении и других подобных — они требуют постоянной доработки и обновления, и поэтому их нецелесообразно перекладывать на непрограммируемое fixed-function аппаратное обеспечение. Да, подобные задачи можно запустить на гибких и программируемых CPU или GPU, но они менее энергоэффективны, а этот показатель в мобильных устройствах важнее всего.

Векторные расширения HVX

Одной из ключевых особенностей Hexagon 680 являются векторные расширения Hexagon Vector Extensions (HVX), разработанные специально для больших объемов вычислений, вроде обработки фотографий и видеопотоков, приложений виртуальной и дополненной реальности и машинного зрения. Векторные расширения HVX отличаются предметно-ориентированной (domain specific) архитектурой, специализированной для конкретной области применения, но имеющей уже привычную программную модель и тесную системную интеграцию.

Предметно-ориентированная архитектура означает, что HVX-расширения предназначены для определенной области применения, в основном — для хорошо распараллеленной обработки больших массивов данных в виде различных изображений. Для этого используются широкие 1024-битные SIMD-инструкции, которые отлично подходят для таких задач, когда одни и те же команды применяются сразу для нескольких пикселей.

В архитектуре также применяется большой объем кэш-памяти для работы над данными приличного объема, а изображения обычно именно такие. Кроме этого, в HVX внимание акцентировано конкретно на вычислениях с фиксированной запятой пониженной точности (low precision fixed-point), что и позволяет получить высокую производительность малой ценой.

В специализированной системе команд HVX есть так называемые sliding window фильтры, обычно применяемые при обработке изображений, а также команды для работы с таблицами поиска (LUT) и гистограммами. Производительности блока Hexagon HVX вполне достаточно для постобработки видеопотока в 4K-разрешении или мгновенной обработки 20-мегапиксельных снимков с фотокамеры в режиме скоростной фотосъемки. Соответственно, применений для возможностей HVX можно придумать очень много.

Исполнительные блоки SIMD имеют VLIW-архитектуру (very long instruction word — одна инструкция содержит несколько операций, которые выполняются параллельно) шириной 1024-бита, они сгруппированы в четырехвекторные блоки, что дает 4096 результирующих бит за каждый цикл. Имеется 32 1024-битных регистра, а вычисления производятся исключительно с фиксированной запятой: 8-битные, 16-битные и 32-битные. Отказ от вычислений с плавающей запятой (floating-point) продиктован тем, что в большинстве задач машинного зрения и обработки изображений такие вычисления просто не нужны, зато это позволяет значительно уменьшить сложность DSP, снизив потребление энергии.

Обработка потоков данных в архитектуре HVX включает четыре параллельно работающих скалярных потока данных, каждый из которых построен по схеме 4-way VLIW, они имеют общую кэш-память первого и второго уровней (L1 и L2). Каждый из блоков работает на частоте в 500 МГц, что в результате эквивалентно 2 ГГц для одного скалярного блока. Есть в архитектуре Hexagon HVX и два векторных блока, управляемых любыми двумя скалярными потоками (остальные два потока могут параллельно выполнять скалярные операции). Они также работают на частоте 500 МГц, и их итоговая векторная производительность равна 1 ГГц.

DSP имеет VLIW-архитектуру, когда несколько исполнительных блоков исполняют одну и ту же инструкцию в параллели, а некоторые математические операции дополнительно ускорены при помощи специальных инструкций, чтобы обеспечить быстрое исполнение типичных операций при обработке сигналов — вроде быстрого преобразования Фурье (Fast Fourier Transform — FFT). Цифровые сигнальные процессоры фокусируются на параллелизме на уровне инструкций, а не большого количества потоков, и обычно имеют сравнительно небольшое количество исполнительных блоков, по сравнению с GPU, например.

С точки зрения подсистемы памяти, используется двухуровневое кэширование данных. Кэш-память второго уровня является первым уровнем памяти для векторных вычислительных блоков, что упрощает программирование и позволяет снизить накладные расходы от тайлинга, необходимого при использовании L1-кэша значительно меньшего объема. Кэш-память первого и второго уровня когерентны, есть потоковая предвыборка (prefetch) данных из DDR-памяти в L2-кэш, векторные блоки поддерживают несколько типов инструкций загрузки и сохранения данных (Load/Store).

В целом, Hexagon DSP с использованием HVX имеет программную модель, схожую с универсальными CPU, поддерживаются SIMD-команды и многопоточность, есть когерентные разделяемые кэши двух уровней, программирование осуществляется на языках C и C++ с так называемыми intrinsics-функциями. Есть и оптимизированные библиотеки с наиболее востребованными функциями — все почти как у старших братьев: CPU и GPU, возможно, в слегка облегченном виде.

Так в чем тогда отличия между CPU с SIMD-командами и Hexagon DSP с применением HVX? Они есть и их довольно много:

Если четырехъядерный CPU с NEON поддерживает 128-битные SIMD-команды с одним конвейером на ядро, то Hexagon DSP с HVX широкие 1024-битные SIMD и имеет четыре конвейера. Поэтому по пиковой производительности DSP будет иметь восьмикратное преимущество.

Четыре CPU-ядра имеют 32 КБ кэш-памяти первого уровня на SIMD-поток, а в случае Hexagon DSP потоки команд SIMD разделяют доступ к 512 КБ кэш-памяти (технически это кэш-память второго уровня, но она достаточно быстра и служит в качестве первого). Соответственно, Qualcomm снова отмечает восьмикратное преимущество HVX по объему быстрой памяти на поток. В дополнение в этому, потоки в DSP имеют доступ к общим данным.

И даже отсутствие возможности вычислительных блоков DSP выполнять вычисления с плавающей запятой в Qualcomm считают его преимуществом — собственно, для специализированных алгоритмов по обработке изображений это так и есть в большинстве случаев. Остается повториться, что Hexagon DSP с поддержкой только вычислений с фиксированной запятой имеет преимущество в меньшей сложности и сниженном потреблении энергии, по сравнению с CPU-ядрами.

Hexagon 680 отлично справляется с разгрузкой основных CPU-ядер от определенных задач, но не надо забывать, что DSP годится исключительно для узкого круга специализированных алгоритмов, а CPU — универсальное вычислительное устройство, которое обеспечивает куда большую гибкость. Но раз уж в современных однокристальных системах часто применяются алгоритмы обработки изображений, не требующих большой гибкости, то решение по выделению для таких задач отдельного DSP, как это сделано в Snapdragon 820, кажется совершенно логичным.

Для успешной работы производительных вычислительных блоков важна не только их пиковая производительность, но и полоса пропускания потоков данных и их устройство в однокристальной системе. В данном случае, предварительная обработка данных, получаемых с камеры без доступа к внешней DDR-памяти, позволяет дополнительно сэкономить энергию, а данные с сенсоров передаются в L2-кэш DSP на скорости до 1,2 гигапикселей/сек. Прошедшие обработку в DSP пиксели могут быть отправлены обратно в специализированный процессор обработки изображений с камеры (Camera ISP).

ARM-совместимый блок управления памятью (SMMU) позволяет получать совместный доступ данным для DSP и CPU без необходимости их копирования, а многопоточный DSP может обслуживать сразу несколько сессий (обработка звука, изображений, машинного зрения и т. п.) одновременно.

В деле новых архитектурных решений важна не только аппаратная, но и программная поддержка. Если выпустить просто однокристальную систему с новыми возможностями, но не дать программных методов их использования, то никто просто не сможет применить их в деле. Очень хорошо, что компания Qualcomm хорошо понимает важность качественной поддержки для разработчиков и планирует выпустить Hexagon SDK 3.0 для поддержки Hexagon DSP серии 600.

В SDK входят все необходимые для работы составляющие: компилятор, ассемблер, профайлер, дебаггер, библиотеки, модули, примеры, framework, симулятор и т. д. Применением новых возможностей Hexagon 680 заинтересовались уже многие компании, вот лишь неполный их список: ArcSoft, BDTi, Core Photonics, Morpho, Omron, Hexagon, Sony и многие другие. Представители Qualcomm утверждают, что уже более 100 компаний занимаются портированием кода на Hexagon DSP, и это только начало.

DSP для нетребовательных задач с низким энергопотреблением

Еще одним новым блоком в составе однокристальной системы Snapdragon 820 стал цифровой сигнальный процессор с низким энергопотреблением. Он размещен в специальном островке на чипе, который работает, когда весь остальной чип отключен. Low Power Island (LPI) разгружает вычислительные ядра Kryo в задачах обработки аудиоданных и сигналов с различных датчиков, вроде датчиков движения. В то время как Hexagon 680 используется для требовательных к производительности вычислений по обработке цифровых сигналов, выделенный DSP LPI делает не менее важную работу.

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

В составе однокристальной системы Snapdragon 820 подобными задачами будет заниматься LPI, а для более эффективного его использования у постоянно включенного DSP низкого энергопотребления имеются собственные линии питания низкого напряжения. То есть при его работе все остальные блоки Snapdragon 820 могут быть отключены, практически не потребляя энергии.

Интересно, что специалисты компании Qualcomm выбрали для таких задач DSP, а не вычислительное ядро вроде ARM Cortex-M, которое применяют для аналогичных задач некоторые из конкурентов. По их словам, при проведении специальных тестов внутри компании, при исполнении продвинутых алгоритмов DSP показали себя более эффективными, по сравнению с RISC-ядрами вроде Cortex-M.

Для работы с этим DSP компания предлагает программный framework и готовый набор алгоритмов для LPI с кодом определения движения, управления в играх при помощи встроенного в мобильные устройства гироскопа и т. д. То есть производителям конечных устройств нужно просто взять готовый код и использовать его в своих устройствах. А какие преимущества дает цифровой сигнальный процессор с низким энергопотреблением в цифрах?

Компания Qualcomm сравнивает работу своих однокристальных систем моделей Snapdragon 808 и 820. Более совершенная модель с выделенным блоком LPI обеспечивает втрое меньшее энергопотребление в задачах подсчета количества шагов и оказывается примерно вдвое эффективнее в задаче «Rotation Vector», используемой при определения позиционирования мобильного устройства в таких задачах, как управление в играх, например.

Блок вывода изображения Snapdragon 820

В блоке вывода изображения на дисплеи у Snapdragon 820 также есть поддержка новых возможностей, по сравнению с предыдущими решениями компании. Естественно, что новая однокристальная система имеет поддержку декодирования видеоданных в 4K-разрешении и формате HEVC при 60 кадрах в секунду, но их еще нужно куда-то вывести в высоком качестве.

Для этого рассматриваемой однокристальной системой поддерживается вывод в 4K-разрешении и на собственно экраны смартфонов и планшетов, и по HDMI 2.0 с частотой обновления до 60 Гц (у настольных GPU одной известной компании до сих пор нет такой возможности!), и даже при беспроводном подключении дисплея есть поддержка 4K-разрешения, хотя и «всего лишь» при 30 Гц (в том числе поддерживается прямая передача видеопотока на беспроводной дисплей без перекодирования).

Можно отметить и другие улучшения, в том числе все тех же уже упомянутых технологий EcoPix и TruPalette, динамически улучшающих итоговую картинку, добавим к этому поддержку расширенного цветового пространства по рекомендации ITU-R Rec. 2020 и продвинутого сжатия Display Stream Compression (DSC) 1.1 от VESA и сжатия полосы пропускания Universal Bandwidth Compression (UBWC).

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

Технология improveTouch

И хотя при помощи технологии improveTouch пока что невозможно обеспечить работоспособность под водой, в будущем Qualcomm собирается разработать и такое решение. А еще можно разработать различные алгоритмы, использующие контекст, когда какие-то области будут более восприимчивы к нажатию, чем другие. Но даже и просто комфортная работа в случае брызг на экране дорогого стоит:

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

Из возможных негативных эффектов можно было бы предположить бо́льшую нагрузку на вычислительные ядра CPU и увеличенные затраты энергии, но нет — представители Qualcomm уверяют, что нагрузка практически не возрастает, а потребление энергии интегрированным в Snapdragon блоком примерно такое же, что и у конкурирующих решений при худших характеристиках последних — в том числе потому, что при производстве однокристальных систем используются самые совершенные техпроцессы, в отличие от внешних контроллеров. Более того, у решения Qualcomm есть специальный режим ультранизкого потребления энергии. А низкое энергопотребление в мобильных устройствах, как мы уже не раз говорили, важнее всего.

Обзор Snapdragon 820 | Введение

Мобильную индустрию ждал сюрприз, когда компания Apple начала поставки iPhone 5s со специально разработанным 64-битным процессором. Переход на 64-бит был неизбежен, но никто не ожидал, что Apple сделает это так быстро. Не отстала и Qualcomm, чей 64-битный процессор был просто одной из точек на дорожной карте компании. Ввиду отсутствия собственного ядра, Qualcomm взяла штатные ядра ARM Cortex-A53 и Cortex-A57 для своего флагманского процессора Snapdragon 810 , появившегося в прошлом году.

Поскольку начальные условия для работы были далеко не идеальными, получился далеко не идеальный SoC. Еще до официальной премьеры Snapdragon 810 появились слухи о перегреве и проблемах с контроллером памяти. Наше собственное тестирование подтвердило информацию о перегреве, который явился результатом выпуска энергоемкого ядра A57 по технологическим нормам 20 нм на TSMC. Кроме того мы пока не видели 810-й чип, который использовал бы всю доступную пропускную способность памяти LPDDR4-1600, даже в версии v2.1.

Но даже несмотря на то, что 810-й SoC был лишь "пробным камнем", он оказался не так уж и плох. GPU Adreno 430 стал быстрее Adreno 420 в платформе Snapdragon 805 , чип смог сохранить лидерство Qualcomm по производительности ALU, а более быстрый LTE-модем Category 9 X10 переехал поближе к процессору.

Тем не менее, SoC 810 вызывает лишь чувство разочарования. Чрезмерный тепловой троттлинг сдерживал производительность, заставляя ядра A57 простаивать без нагрузки. В некоторых случаях старые чипы Snapdragon 801 и 805, а также системы A53 среднего уровня, предлагали эквивалентную или более высокую производительность. Положение для флагманского продута было незавидным.

С помощью нового чипа Snapdragon 820 и первого фирменного 64-битного вычислительного процессора Kryo, компания Qualcomm надеется избавиться от этих недостатков. Однако цель Snapdragon 820 заключается не только в повышении производительности. Он предлагает инновационные подходы взаимодействия с пользователем путем применения гетерогенных вычислений, сочетающих в себе уникальные способности каждого процессора – CPU, GPU, DSP и ISP для максимизации производительности и минимизации энергопотребления. Машинное зрение, передовые технологии изображения и виртуальная реальность – вот его целевые приложения.

Новые способности во многом стали возможны благодаря Zeroth (англ.) – API машинного обучения и зрения, за счет которой разработчики могут использовать преимущества Snapdragon 820 . Qualcomm называет ее "когнитивная вычислительная платформа", в дальнейшем она должна совершенствовать возможности виртуальных помощников на смартфонах, а также любых элементов, подразумевающих похожий на человеческий интеллект. Один из способов это сделать – имитировать, как люди учатся с помощью позитивной мотивации. Мы уже можем видеть, как мобильные устройства демонстрируют зачатки интеллектуального поведения, но они, как правило, используют вычислительную мощность облачных систем. Однако Qualcomm считает, что с появлением 820-го SoC эту обработку теперь можно выполнять локально на устройстве, как следствие, повышая конфиденциальность, поскольку все уникальные пользовательские данные не будут обрабатываться на чужих серверах.

Технология Qualcomm Scene Detect (обнаружение сцены) – это приложение Zeroth для машинного зрения. Используя гетерогенные вычисления, она применяет нейронные сети для обнаружения сцены, распознавания объектов и сведения шаблоном неподвижных изображений и видео с камеры устройства. Для этой технологии есть много применений, в том числе автоматическая подпись фотографий для облегчения поиска и дополненная реальность. Видеоролик выше демонстрирует основные возможности этой системы.

Smart Protect будет одним из первых "революционных приложений" на базе Zeroth. Эта технология выходит за рамки традиционной антивирусной защиты на основе сигнатур. С помощью машинного обучения и анализа поведения пользователя она сможет определить "ненормальное поведение", например, заметить, что телефон ведет съемку, когда экран заблокирован или отправляет SMS сообщения без взаимодействия с пользователем. Эта функция может быть использована для идентификации вредоносных программ нулевого дня или "трансформационного вредоносного ПО", которое создается для обхода популярных антивирусных программ.

Эта функция имеет компонент низкого уровня, работающий в ядре Android, и компонент, работающий в защищенной среде исполнения Qualcomm SecureMSM, который вредоносным программам будет намного труднее обойти. Кроме того, благодаря этим двум компонентам Smart Protect может эффективно контролировать системные ресурсы, связь приложений и т.д.

Примеры гетерогенных вычислений

Кроме Zeroth Snapdragon 820 использует гетерогенные вычисления для множества других передовых функций обработки изображения. Одна из демонстраций задействует API OpenCL 1.2 и FastCV для постобработки видеопотока в режиме реального времени, разделения и размывания фона в целях повышения конфиденциальности во время видеоконференции. Объединяя вычислительные мощности CPU и GPU, Qualcomm заявляет о повышении производительности более чем в два раза по сравнению с работой одного центрального процессора, а также о снижении потребления энергии до 40%. Эта же технология используется для улучшения качества панорамных изображений, устраняя швы и артефакты двоения, вызванные движущимися объектами. В дальнейшем приложения могут включать функцию предварительного просмотра видеоэффектов во время записи или улучшать дополненную реальность.

Демонстрация Qualcomm improveTouch

Функция Qualcomm improveTouch, которая также присутствует в SoC Snapdragon 810 , переносит обработку сигналов ввода с внешнего сенсорного контроллера на SoC. Используя DSP и ядра процессора с низким энергопотреблением, удается добиться снижения задержки сенсора и позволяет внедрять более сложные алгоритмы подавления "шумов" и ошибок ввода. Усовершенствованная обработка позволяет реализовать сложный механизм защиты от капель воды, который позволяет использовать экран, когда он мокрый, и улучшает чувствительность сенсора во время зарядки устройства, отфильтровывая электромагнитные помехи. Также есть функция пробуждения экрана по двойному касанию, потребляющая очень мало энергии.

Все эти специализированные процессоры эффективно связывает Qualcomm Symphony System Manager. Согласно Qualcomm, система Symphony предназначена для управления всей системой-на-чипе (SoC) в различных конфигурациях, в которых подбирается самая эффективная комбинация процессоров и специализированных ядер, чтобы работа выполнялась максимально быстро и с минимальным потреблением энергии. Это не простая задача, поэтому нам не терпится увидеть, как это отразиться на времени автономной работы на практике, когда первые продукты поступят в продажу.

Теперь, когда мы понимаем, как Qualcomm видит Snapdragon 820 и будущие SoC (если вы еще не догадались, они будут использовать гетерогенные вычисления), и их возможности, пришло время поближе взглянуть на само железо.

Обзор Snapdragon 820 | Архитектура

Qualcomm предпочитает не раскрывать подробностей строения своих последних процессоров. В отличие от открытой архитектуры ARM, Qualcomm в плане предоставления детальной информации ведет себя как Apple, особенно касательно GPU.

С усложнением мобильных задач развиваются и мобильные SoC. Одним из параметров, который постоянного меняется, является оптимальное количество процессорных ядер. Например, в Apple A9 используется два процессорных ядра, а в MediaTek Helio X20, установлено десять процессорных ядер в трехкластерной организации big.LITTLE. Вице-президент по маркетингу Qualcomm Тим Макдон говорит, что людям на самом деле не нужно больше четырех ядер. Хотя это заявление, скорее всего, вызовет жаркие споры, оно наверняка связано с тем, что в Qualcomm Snapdragon 820 используется четыре процессорных ядра Kryo в гетерогенной конфигурации из двух кластеров. Базовая архитектура каждого ядра процессора осталась прежней, но сами кластеры оптимизированы для работы на разных частотах и уровнях мощности, наподобие подхода ARM big.LITTLE. Два ядра Kryo в "серебряном" кластере с меньшей потребляемой мощностью работают на частоте до 1,6 ГГц и делят между собой кэш L2 объемом 512 Кбайт. Вторая пара ядер Kryo работает в высокопроизводительном "золотом" кластере с тактовой частотой до 2,2 ГГц и общим кэшем L2 объемом 1 Мбайт. Хотя два кэша второго уровня не распределены между золотым и серебряным кластером, они используют механизм отслеживания для когерентности. В отличие от Apple A9 в SoC Snapdragon 820 не используется кэш третьего уровня. По словам представителей Qualcomm в компании просчитывали возможность использования кэша L3, но в конечном итоге решили, что преимущества не оправдывают дополнительные расходы по потребляемой мощности и занимаемому пространству на кристалле. Qualcomm не разглашает подробности архитектуры Kryo, поэтому мы попытаемся сделать хоть какие-то выводы по результатам наших тестов.

Флагманские SoC Qualcomm Snapdragon 8xx

Snapdragon 820 Snapdragon 810 Snapdragon 805 Snapdragon 801
Производственный процесс 14nm FinFET 20nm HKMG 28nm HPm 28nm HPm
Архитектура ARMv8-A (32/64-bit) ARMv8-A (32/64-bit) ARMv7-A (32-bit) ARMv7-A (32-bit)
CPU Qualcomm Kryo (2x @ 2,15 ГГц + 2x @ 1,59 ГГц) ARM Cortex-A57 (4x @ 2,0 ГГц) + ARM Cortex-A53 (4x @ 1,5 ГГц) Qualcomm Krait 450 (4x @ 2,65 ГГц) Qualcomm Krait 400 (4x @ 2,45 ГГц)
GPU Qualcomm Adreno 530 @ 624 МГц Qualcomm Adreno 430 @ 630 МГц Qualcomm Adreno 420 @ 600 МГц Qualcomm Adreno 330 @ 578 МГц
Интерфейс памяти LPDDR4-1866 2x 32-bit (29,9 Гбайт/с) LPDDR4-1600 2x 32-bit (25,6 Гбайт/с) LPDDR3-800 2x 64-bit (25,6 Гбайт/с) LPDDR3-800/933 2x 32-bit (12,8/14,9 Гбайт/с)
Процессор сигнала изображения с камеры два ISP 14-bit (1,5 Гпикс/с, видеосенсоры до 2x 25 Мп) два ISP 14-bit (1,2 Гпикс/с, видеосенсоры до 55 Мп) два ISP 12-bit (1,2 Гпикс/с, видеосенсоры до 55 Мп) два ISP (930 Мп/s , видеосенсоры до 21 Мп)
Цифровой сигнальный процессор Hexagon 680 @ менее 1 ГГц Hexagon V56 @ 800 МГц Hexagon V50 @ 800 МГц Hexagon V50 @ 800 МГц
Интегрированный модем X12, LTE Cat 12/13, до 600 Мбит/с DL & 150 Мбит/с UL X10, LTE Cat 9, до 450 Мбит/с - MDM9x25, LTE Cat 4, до 150 Мбит/с

Информации по Kryo мало, а подробных сведений о строении графического процессора Adreno 530 вообще нет. Кроме названия нам известно лишь, что он будет работать при частоте 133-624 МГц. Расспрашивая Qualcomm о новом продукте, мы узнали, что компания сделала множество небольших архитектурных изменений в дизайне, то есть Adreno 530 представляет собой не полную переделку, а плавную эволюцию дизайна Adreno 430. Среди изменений было упомянуто более эффективное применение технологии сжатия данных при передаче информации с/на GPU с целью снижения потребления энергии.

← Вернуться

×
Вступай в сообщество «l-gallery.ru»!
ВКонтакте:
Я уже подписан на сообщество «l-gallery.ru»