Что такое аппаратное ускорение на Android и зачем оно нужно

Аппаратное ускорение — это специальная опция, которую вы, возможно, замечали в меню различных приложений на многих своих устройствах, включая смартфон на Android. Хотя оно и не всегда доступно в большинстве мобильных приложений, аппаратное ускорение используется в ряде популярных Android-приложений, включая YouTube, Chrome, Facebook и других.

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

Что такое аппаратное ускорение

Название говорит само за себя — аппаратное ускорение использует специальное аппаратное обеспечение для ускорения определенной задачи, чтобы она выполнялась быстрее и/или более эффективно, чем это происходит при использовании одного лишь центрального процессора (CPU). Чаще всего в игру при таком сценарии вступает графический процессор (GPU), цифровой сигнальный процессор (DSP), или какой-либо другой аппаратный блок, который специализируется на выполнении какой-то конкретной задачи.

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

Одним из наиболее распространенных вариантов использования аппаратного ускорения является кодирование и декодирование видео. Например, вместо того, чтобы декодировать видеопоток на центральном процессоре (ЦП), который не очень эффективен, видеокарты или другое оборудование часто содержат выделенные блоки кодирования/декодирования видео, которые могут выполнять задачу намного более эффективно. Аналогично, распаковка аудиофайла часто может выполняться быстрее на DSP или звуковой карте, чем на процессоре.

Другое очень распространенное использование для аппаратного ускорения — ускорение 2D-графики. Например, пользовательские интерфейсы часто содержат много графики, текста и анимации для рендеринга. Все это может быть выполнено центральным процессором, но графический процессор (GPU) или дисплейный процессор намного быстрее справятся с таким типом операции. Задачи могут включать применение фильтра сглаживания к тексту, чтобы он выглядел более плавным, или наложение полупрозрачного слоя поверх другого элемента, такого как видео. Другие примеры продвинутой графики включают оптимизацию физики и трассировку световых лучей.

Почему аппаратное ускорение важно

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

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

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

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

Делитесь своим мнением в комментариях под этим материалом и в нашем Telegram-чате.

Теги
Читайте также
Мы стоим на пороге нового противостояния мобильных процессоров

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

Читать далее
Почему я не пользуюсь бенчмарками для Android и вам не советую

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

Читать далее
Смартфоны с какими процессорами лучше не покупать. Они врут о своей производительности

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

Читать далее

Новый комментарий