Как Apple добилась плавной анимации в iOS 12

104

Пользователи, установившие iOS 12 на свое устройство, могли заметить возросшую производительность новой операционной системы. Инженеры Apple не только увеличили скорость запуска приложений, но и смогли добиться плавной работы интерфейса. Как это им удалось, было рассказано на одной из лекций в рамках WWDC 2018.

В первую очередь, разработчики тщательно изучили предустановленные приложения, где могли наблюдаться падения кадров при перелистывании списков. Исходя из этого, было внесено несколько изменений. Была улучшена работа алгоритма Cell Prefetch, который введен еще в iOS 10 и был призван избавить интерфейс от падения кадров путем предварительной загрузки контента в фоновом режиме. Несмотря на то, что изначально этот API справлялся с своей задачей неплохо, падания кадров все равно могли наблюдаться при одновременном выполнении двух задач процессором.

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

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

Все эти изменения позволили добиться значительного прироста в производительности, так заметного на старых устройствах. Напомним, что iOS 12 будет доступна пользователям осенью этого года.

Лучший комментарий

104 комментария Оставить свой

  1. 16
    eugene_biryukov

    Android: «так, сколько у нас ещё свободных слотов для RAM?”

  2. -21

    На старых устройствах может и добавилось что то но вот на айфоне Х что то незаметно да и с магазина приложений загрузка идет дольше…

  3. 16
    ilya_afinogenov

    На самом деле я в приятном шоке от iOS 12. До конца не верилось в слова Apple о увеличении производительности. А ведь это только первая бета, предвкушаю что же будет дальше, когда ее допилят!

  4. -3

    А чо бы и сразу так не сделать? ?

    • -4
      Nomernoy_

      funky, Действительно

    • -1
      Антон

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

  5. -3
    Антон

    Ребята, извините, я один кто не разобрался как посмотреть сколько отработал смартфон от одного заряда? Я про режим использования, если что.

  6. -4
    cyan_magenta

    Хоть на своем se прироста и не ощутил, но то, что бета работает как минимум не хуже релиза, уже обнадеживает.

  7. -4
    nikolaytolstkh

    Интересно ,у меня у одного встречаются проблемы с центром уведомлений ?бывают какие то баги и прочее такое

  8. -2
    Mihrusha78

    А это только у меня экран слишком засвечен, или это первая бетка такая?

  9. 0
    Mihrusha78

    А я ещё обнаружил, что сортировка отзывов в апп стори не фурычит ?

  10. -1
    Антон

    А кто-нибудь пишет feedback, и на каком языке?

  11. 0
    Mihrusha78

    А ведь ещё же в настройках вместо «Экранное время» написано «Экранное имя» )))

  12. -5

    Не знаю почему все восхищаются этой Ios 12.Лично мне ios 12 beta 1 не понравилось тем что у меня не закрывались приложения и лагал VK и YouTube.Подожду релиза ios 12 либо ios 12 beta 2. Если что у меня Iphone 7.

  13. 0
    yura1489

    В сторонних приложениях типа твиттера или ютуб или Новости яндекс есть лаги при прокручивании. В целом айос работает плавно.

  14. 0

    Ребят, подскажите, плиз, стоит накатить 12 бету? Ниразу беты не накатывал) если да пришлите ссылку как сделать, пожалуйста

  15. 1

    Обновил iOS 11.4 до 12 beta 1 в первый же вечер на iPhone 7 Plus. Система сразу забегала раза в два быстрее. Я первое время даже как-то за ней не успевал ? Почти сразу нашел все перечисленные баги (не закрыть приложение телефон; имя, а не время; GPS не работает; плюс некоторые проблемы с airdrop)
    Сценарий использования один и тот же.
    Где-то на третий день использования при прослушивании в приложении Оадио Рекорд через 3G/LTE и периодическое фотографирование, в том числе в режиме Портрет, у меня за три часа айфон сел с 95% до 33%. Это было раза в 2-3 быстрее, чем если бы на iOS 11.4. Тогда я решился откатиться, настроив iPhone как новый.

    • 1

      aymac, По сравнению с 11.4 действительно лучше управление оперативной памятью.
      Потом я нашел один неудобный баг в 11.4, который раньше отсутствовал. Это при том, что айфон был настроен с нуля, как новый. Видимо, система встала не совсем корректно ?‍♂️.
      Я рискнул ещё раз обновиться до 12 beta 1, так как некоторые улучшения были «дороже», например, отсутствия геолокации.
      В этот раз система работает плавно, но не так стремительно, как в первый раз. Батарея пока держит примерно так же. Правда по тестам Geekbench есть разница. 11.4 за полчаса теста разрядилась с 98%до 82%, а 12 beta 1 — с 98% до 80%. Пункт «Dim screen» в обоих тестах был включён.

      • 0
        Антон

        aymac, Для вас отсутствие геолакации это хорошо?

      • 3

        aymac, В итоге — смешанное чувство.
        Настроенный с нуля 11.4 на iPhone 7 Plus работал по ощущениям так же плавно, но возможно немного медленнее 12 beta 1. Однозначно порадовало управление оперативной памятью в 12 beta 1.
        И более наглядное использование аккумулятора с графиком заряда/разряда телефона. Про все найденные баги написал feedback. Получилось по-моему пять писем. Так же написал, что было бы здорово, если счётчик времени использования как и раньше обнулялся после полного заряда.
        А то график наглядный, а цифры — нет ?

        • 0
          Антон

          aymac, Однозначно порадовало управление оперативной памятью в 12 beta 1. Где вы это нашли?

          …было бы здорово, если счётчик времени использования как и раньше обнулялся после полного заряда. А вот это верно, нужно чтобы хотя бы он обнулялся, а то лично меня это вводит в ступор.

    • 2

      aymac, А шо там с геолокацией. А то я вчера ехал автомобилем по навигатору и все норм было. И на фото геотег работает отлично. 8+

      • 1

        Kurver, Неоднократно слышал, что геолокация у многих некорректно работает.
        Сам заметил, что без WiFi или 3G/LTE не работает. Например, в авиарежиме.
        На 11.4 работала, если что.
        Может проблема, конечно, не у всех присутствует ?

      • 1
        sparcogold

        Kurver, Заметил некоторые неточности при использовании карт от Google. В старте маршрута стрелка летает за 300 метров от фактического положения. Рядом сидел товарищ с Гнусмасом и у него творилось тоже самое. Подумали на карты от Гугл. Странно. Это только в первый день после обновления на бэту. Сейчас все хорошо и с геолокацией тоже. В целом намного более доволен от использования 8+ с этой бэтой. И кстати, аккумулятор держит гораздо лучше, чем на 11.3-11.4. А и в антуту 228к

  16. -3

    ???????

  17. 1

    На se без изменений , сафари бывает тормозит

  18. 2

    Экранное время даже не запускается

  19. -7
    kastryulya

    Интересует другое, как Эппл добилась такой косячной и тормозной оси?

    • 0
      Антон

      kastryulya, какой именно косячной оси, назовите цифру.

      • 0

        Антон, 11 же,не? Или вы хотите сказать,что у ios 11 все хорошо со стабильностью и плавностью? Можно ли вообще оправдать 11 ось,если она,даже после 4 патча большого(11.4),отстает в скорости работы от первой беты 12 оси. ПЕРВОЙ БЕТЫ.

        • 2
          Антон

          Lame942, согласен вообще-то

        • 2

          Lame942, Просто стала слишком тяжелая система с плохим управлением работой процессора и оперативки. В 12 поправили. Все элементарно.

          • 0

            qsad, Только стала она такой не только из-за 11 оси,а потому что с 8 версии забивали на оптимизацию и тащили старые баги в новые версии. В 11 их количество просто достигло критической отметки,когда эпл уже пришлось успокаивать пользователей тем,что в 12 будет нормально. А если бы они шквал критики не получили,то и 12 такую же выпустили,как 11,потому что зачем оптимизация,если есть: эмодзи,мемодзи и анимодзи.

  20. 0

    Меня вот что интересует, а где можно посмотреть другие презентации с wwdc2018?

  21. 0
    heredinov

    В iOS 12 скайп выкидывает

  22. 0
    Антон

    iPhone X завис сегодня когда просто хотел открыть страницу в браузере Safari.
    iOS 12 beta 1.

Авторизуйтесь Чтобы оставить комментарий