Всегда использовать gpu при компоновке экрана что это
Перейти к содержимому

Всегда использовать gpu при компоновке экрана что это

  • автор:

Эффективное использование GPU

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

Настроить параметры GPU визуализации

Если ваше приложение тормозит, значит часть или все кадры обновления экрана обновляются больше чем 16 миллисекунд. Чтобы визуально увидеть обновления кадров на экране, можно на устройстве включить специальную опцию Настроить параметры GPU визуализации (Profile GPU Rendering).

У вас появится возможность быстро увидеть, сколько времени занимает отрисовка кадров. Напомню, что нужно укладываться в 16 миллисекунд.

Опция доступна на устройствах, начиная с Android 4.1. На устройстве следует активировать режим разработчика. На устройствах с версией 4.2 и выше режим по умолчанию скрыт. Для активации идёт в Настройки | О телефоне и семь раз щёлкаем по строке Номер сборки.

После активации заходим в Опции разработчика и находим пункт Настроить параметры GPU визуализации (Profile GPU rendering), который следует включить. В всплывающим окне выберите опцию На экране в виде столбиков (On screen as bars). В этом случае график будет выводиться поверх запущенного приложения.

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

Рассмотрим увеличенную версию графика.

Зелёная линия отвечает за 16 миллисекунд. Чтобы уложиться в 60 кадров в секунду, каждый столбец графика должен рисоваться ниже этой линии. В каких-то моментах столбец окажется слишком большим и будет гораздо выше зелёной линии. Это означает торможение программы. Каждый столбец имеет голубой, фиолетовый (Lollipop и выше), красный и оранжевый цвета.

Голубой цвет отвечает за время, используемое на создание и обновление View.

Фиолетовая часть представляет собой время, затраченное на передачу ресурсов рендеринга потока.

Красный цвет представляет собой время для отрисовки.

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

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

Отладить показатель GPU overdraw

Другая настройка позволяет узнать, как часто перерисовывается один и тот же участок экрана (т.е. выполняется лишняя работа). Опять идём в Опции разработчика и находим пункт Отладить показатель GPU overdraw (Debug GPU Overdraw), который следует включить. В всплывающим окне выберите опцию Показывать зоны наложения (Show overdraw areas). Не пугайтесь! Нкоторые элементы на экране изменят свой цвет.

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

Если цвет в приложении не изменился, значит всё отлично. Нет наложения одного цвета поверх другого.

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

Зелёный цвет — перерисовывается дважды. Нужно задуматься об оптимизации.

Розовый цвет — перерисовывается трижды. Всё очень плохо.

Красный цвет — перерисовывается много раз. Что-то пошло не так.

Вы можете самостоятельно проверить своё приложение для поиска проблемных мест. Создайте активность и поместите на неё компонент TextView. Присвойте корневому элементу и текстовой метке какой-нибудь фон в атрибуте android:background. У вас получится следующее: сначала вы закрасили одним цветом самый нижний слой активности. Затем поверх неё рисуется новый слой от TextView. Кстати, на самом TextView рисуется ещё и текст.

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

Маленький совет. Поместите после метода setContentView() вызов метода, который уберёт перирисовку экрана цветом темы. Это поможет убрать одно лишнее наложение цвета:

 getWindow().setBackgroundDrawable(null); 

Всегда использовать gpu при компоновке экрана что это

Изображение

Обсуждение ZTE Blade 20 Smart
ZTE Blade 20 Smart
Описание | Обсуждение » | Прошивки »

Технические характеристики

Технология 2G 850/900/1800/1900
Технология 3G 850/900/2100
Технология 4G LTE FDD B1/B3/B5/B7/B8/B20 LTE TDD B38
Емкость стандартного аккумулятора 5000 мАч, поддержка быстрой зарядки 18Вт
Bluetooth 4.2
Доступные цвета темный изумруд/черный гранат
Поколение связи 4G LTE
Разъем для наушников, мм3.5
Операционная система Android 9.0 Pie
Размер 162.9*76.6*8.5
Поколение SIM Nano SIM
Количество SIM 2
Интерфейс USB type C
Вес, г190
Стандарт Wi-Fi 2.4/5.0 GHz 802.11 g/b/ac/a/n
Камера
Фронтальная камера, мП 13Мп, f/2.0
Основная камера, мП Тройная основная камера 16Mп, AF+8Мп+2Mп
Количество камер 4
Дисплей
Диагональ экрана, дюйм 6.49
Тип матрицы IPS
Разрешение экрана 1560×720
Соотношение экрана 19.5:9
Тип экрана HD+ 2.5D
Конфигурация
Объем встроенной памяти 128 Гб
Поддержка карт памяти Micro SD
Процессор MediaTek Helio P60
Объем оперативной памяти 4 Гб
Максимальный объем карты памяти 512 Гб
Особенности
Дополнительная информация OTG, NFC, Поддержка VoLTE, VoWi-Fi, Звук DTS
Датчик приближения, Отпечаток пальца, Акселерометр, Распознавание лиц, Датчик освещенности
Спутниковая навигация Glonass, GPS

Фотографии

Прикрепленное изображение

Прикрепленное изображение

В теме нет куратора. По вопросам наполнения шапки обращайтесь к модераторам раздела через кнопку под сообщениями, на которые необходимо добавить ссылки.

Сообщение отредактировал Artperov — 23.12.20, 12:21

Причина редактирования: Правка
Скрыть шапку
18.03.22, 10:50 | #5722


Активный
Реп: ( 0 )

Привет народ, подскажите, проблема с дисплеем,подвисает иногда не реагирует ни на что,после блокировки/разблокировки все работает,телефону год всего,ничего не менялось,дисплей не разбит,

18.03.22, 10:52 | #5723


Постоянный
Реп: ( 93 )
mypom33, в теме ищите
18.03.22, 15:22 | #5724


Постоянный
Реп: ( 1 )
mypom33 @ 18.03.22, 09:50
Привет народ, подскажите, проблема с дисплеем,подвисает

проблема распространенная. шаманство с разнообразными настройками не помогают-судя по потугам людей побороть эту проблему. как вариант попробовать программу touchscreen repair

Сообщение отредактировал vitaliy123110 — 18.03.22, 15:37

18.03.22, 15:54 | #5725


Постоянный
Реп: ( 122 )

После смены лаунчера до нового года, с тех пор ни единого разу у меня не вис..
ZTE Blade 20 Smart — Обсуждение (Пост almaz3201 #113524667)

О быдлокодерах из Google

Купил я себе на днях Meizu M2 mini. Ну и сижу устанавливаю на него софт. Установил клиент Google Play Музыка, после установки вылезло уведомление о том, что он для запуска требует обновления Google Play. Жмакнул пальцем в уведомление, через несколько секунд получил новое уведомление о том, что все готово.

Говнокод в действии

Во-первых, после обновления Google Play стал падать при вводе текста в строку поиска. Беглый гуглеж показал, что это лечится. обновлением Google Play! И правда, глянул в настройках текущую версию, оказалось, что две минуты назад оно обновилось до 5.4 (или 5.6, точно не помню) при актуальной версии 6.0.5, и нужно заново обновить его, тапнув по номеру версии. Какого хрена оно не могло сразу до последней версии обновиться? Какого хрена для принудительного обновления нужно тапнуть по текущей версии в настройках? Еще менее очевидного способа не придумали?

Во-вторых, даже в бюджетных смартфонах нынче достаточно мощные камни для плавной работы современных ОС. Даже если эта ОС — Android (пусть и с довольно легкой оболочкой Flyme). Но Google Play музыке этого мало. Все анимации в интерфейсе этого монстра ощутимо подлагивают, отрисовываются рывками. При этом остальные приложения (тот же Firefox например) работают идеально. Я уж думал, что придется мириться с этими лагами (благо хоть музыку играет нормально), но сегодня залез в настройки для разработчиков и увидел там две опции, о существовании я знал, но давно забыл: всегда ускорять 2d на GPU и всегда использовать GPU при компоновке экрана. Отключенными. Как и на прошлом смартфоне. И на большинстве других (если не всех), судя по интернетам, заваленным советами включить их. После их включения все лаги исчезли. Какого хрена отображение фоток исполнителей и обложек альбомов так тормозит? Какого хрена в 2015 году до сих пор интерфейс по умолчанию отрисовывается на CPU? Какого хрена? КАКОГО ХРЕНА.

templarrr ★★★★★
11.01.16 23:13:07 MSK
1 2 →

Виноват совсем не гугл, а вендор. Уже не в первый раз убеждаюсь, что лучший девайс на Android — Nexus линейка. У меня N7 II живет уже 2 года, будучи выпущенным с 4,3 спокойно вертит 6,0 и за это время я не напоролся ни на один косяк. Так что пинай свой «легкий фляйм»

Jefail ★★★★
( 11.01.16 23:16:40 MSK )
Последнее исправление: Jefail 11.01.16 23:18:08 MSK (всего исправлений: 1)

Ну а че, дров то нет

sehellion ★★★★★
( 11.01.16 23:17:25 MSK )

до сих пор интерфейс по умолчанию отрисовывается на CPU?

Потому что GPU не нужны. Пруф: у тебя везде, кроме криво написанной google-музыки хватало отрисовки на CPU. Если не пользоваться хреновым софтом, то переплачивать за GPU и вовсе не надо.

t184256 ★★★★★
( 11.01.16 23:17:42 MSK )
Ответ на: комментарий от Jefail 11.01.16 23:16:40 MSK

Автор андройда (то есть гугол), очевидно, ни в чем не виноват. Вендор виноват в том, что выбрал для своего устройства андройд (сам выбрал, сам должен нести за это ответственность). Покупатель виноват в том, что выбрал это устройство от этого вендора (сам выбрал, сам должен нести за это ответственность).

Что же, определенная логика в этом есть.

Manhunt ★★★★★
( 11.01.16 23:18:55 MSK )
Последнее исправление: Manhunt 11.01.16 23:19:33 MSK (всего исправлений: 1)

Ответ на: комментарий от Jefail 11.01.16 23:16:40 MSK

У меня N7 II живет уже 2 года, будучи выпущенный с 4,3 спокойно вертит 6,0 и за это время я не напоролся ни на один косяк.

За время с апдейта на 6.0 я полагаю? Склонен верить, если ты обновлялся в 2016ом.

t184256 ★★★★★
( 11.01.16 23:19:03 MSK )

Я конечно понимаю всю Вашу бомбёж по этому поводу. Но постараюсь немножко сгладить вину Google.

На счет первого ничего не могу сказать. На счет второго, возможно, скорее всего, они не включают GPU по умолчанию, что бы тот не съедал батарейку и не вызывал у пользователя мнения, что «ой фу он садится за 1 час работы всё плохо всё п****ц».

proton_protonov
( 11.01.16 23:19:29 MSK )
Ответ на: комментарий от Jefail 11.01.16 23:16:40 MSK

К Google Play вендор никакого отношения не имеет. И кроме него летало _все_.

templarrr ★★★★★
( 11.01.16 23:19:50 MSK ) автор топика
Последнее исправление: templarrr 11.01.16 23:25:29 MSK (всего исправлений: 1)

Ответ на: комментарий от t184256 11.01.16 23:17:42 MSK

Если не пользоваться хреновым софтом, то переплачивать за GPU и вовсе не надо.

Ну они-то знают, что их софт хреновый. Уж хотя бы ускорили его.

templarrr ★★★★★
( 11.01.16 23:20:39 MSK ) автор топика
Ответ на: комментарий от Manhunt 11.01.16 23:18:55 MSK

Вендор виноват в том, что выбрал андройд

хороший вендор виноват только в этом. в отличие от вендора смарта ТСа.

t184256 ★★★★★
( 11.01.16 23:21:09 MSK )
Ответ на: комментарий от templarrr 11.01.16 23:20:39 MSK

лучше бы еще затормозили, а то ты ведь так с него и не слез.

Как за пару минут разогнать любой Android-смартфон: активируйте эту секретную настройку

Ничего скачивать или устанавливать не нужно – все необходимые инструменты уже встроены в систему.

Как ускорить любой телефон Android с помощью секретной настройки / фото REUTERS

Если сравнивать iOS и Android, то «яблочная» операционная система всегда считалось более стабильной и оптимизированной, нежели «гугловская». В то же время, юзеры ОС от Google имеют больше свободы в плане настроек и модификации, позволяя им настраивать систему под себя.

Одной из таких «фишек» является режим разработчика, доступ к функционалу которого может получить любой Android-юзер. Все, что для этого нужно – немного покопаться в настройках.

Как ускорить любой Android-смартфон: ультимативная настройка

Чтобы разблокировать скрытые опции, зайдите в настройки смартфона, откройте «Сведения о телефоне», затем – «Сведения о ПО». Дальше найдите пункт «Номер Сборки» и нажмите на него 7 раз подряд. Несколько раз система сообщит вам о текущем прогрессе включения режима, а затем уведомит о его активации.

После этого для пользователей станет доступным режим разработчика – нужно вернуться на предыдущую страницу и найти в меню пункт «Параметры разработчика».

Скриншот

В первую очередь, ускорить смартфон можно, изменив настройки графического ускорителя. В меню параметра «Аппаратное ускорение отрисовки» нужно поставить галочку напротив пункта «Ускорить работу GPU». Можно еще поставить галку напротив пункта «Отключение аппаратного наложения» и «Включение 4x MSAA».

Еще один пункт меню режима разработчика, который нам интересен – это настройка анимации в параметре «Отрисовка». По умолчанию на всех устройствах Android значения пунктов «Анимация окон», «Анимация переходов» и «Длительность анимации» установлены на «1х». Если нужно ускорить открытие окон, стоит уменьшить это значение до 0,5х или и вовсе отключить анимацию полностью.

Скриншот

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

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

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

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

Какой недорогой смартфон купить в 2023: названы лучшие модели по цене и качеству

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

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

Вас также могут заинтересовать новости:

  • Китайские производители Android-смартфонов упростили «переезд» с одного телефона на другой
  • Представлены первые в мире смартфоны с двусторонней спутниковой связью
  • В смартфонах iPhone найден еще один «пожиратель» батареи: смело отключайте его

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *