Материалы с подобными громкими заголовками широко растиражировали многочисленные техноблоги, использовав в качестве источника статью «iPhone performance benchmarks after Spectre security update» за авторством доселе малоизвестного блогера Melv1n (Melvin Mughal). Суть проста: Apple выкатила патч, призванный закрыть уязвимость Spectre в iOS; после его установки бенчмарк продемонстрировал значительное снижение производительности iPhone 6. Cсылка на пост была размещена на одном из крупных ресурсов, маленький standalone-блог Мелвина рухнул под «хабраэффектом», а интернет-аудитория принялась обсуждать очередную страшилку и клеймить позором Apple. Ну а что всё-таки с патчем и с производительностью?

Чтобы проверить утверждение Мелвина, достаточно провести простой эксперимент по описанной в посте методике: провести замеры в бенчмарке Geekbench 4 до установки апдейта и после него на устройстве без jailbreak, закрыв все запущенные приложения.

iPhone 7 Plus демонстрирует однозначное (хоть и небольшое) увеличение производительности (или, точнее, счёта в бенчмарке) сразу после обновления iOS c 11.2 до 11.2.2: «попугаи» до апдейта, после апдейта, прямое сравнение (результаты мои).

image

Аналогичные репорты от юзеров iPhone 6s/7/8 (Plus), X и даже 5s регулярно встречаются в комментариях к подобным статьям: баллы в Geekbench немного выросли. Но, возможно, проблема затронула только SoC Apple A8, использующуюся в iPhone 6?

У меня нет шестого айфона, но есть iPad Air 2 — в нём используется трёхъядерный вариант A8, A8x. К сожалению, я забыл измерить его в попугаях до обновления, поэтому будем ориентироваться на средние значения с сайта Geekbench: 1796 баллов в тесте на одном ядре и 4161 — в многоядерном режиме. Прогон бенчмарка сразу после установки iOS 11.2.2 показал печальные результаты:

image

Неужели Мелвин прав? Результат в single-core приемлемый, но куда делась добрая тысяча баллов в multi-core?

Меня смутило, что после обновления айпад был тёплым (не горячим, но и не совсем холодным). Я повторил измерение на следующий день и получил совершенно нормальные результаты (чуть выше средних):

image

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

Неизвестно, совпадение ли, что iPhone 7 Plus на SoC A10 показал нормальные (и даже более высокие) баллы уже спустя минуты после установки патча, а iPad Air 2 (и, очевидно, iPhone 6 у Мелвина Мугхала) на A8(x) запускал какие-то оптимизационные процессы, на время снизившие производительность. Я почти уверен, что эта особенность никак не связана с защитой от Spectre, скорее всего, просто «наведение порядка» в системе.

Итог: оба протестированных девайса не продемонстрировали хоть сколько-нибудь значительной и (или) стойкой деградации производительности после установки iOS 11.2.2. К сожалению, крупные порталы с миллионными посещениями, имеющие множество устройств для тестов и обзоров, не удосуживаются выполнять простейшие проверки материала, если есть шанс собрать побольше трафика на резонансной теме. Обновляйтесь смело — как минимум, если вы уже на iOS 11 и не используете джейлбрейк.

Комментарии (25)


  1. fedor1210
    13.01.2018 01:16

    Как писала Apple, данное обновление уменьшило вероятность применения Spectre исключительно в WebKit (Safari и другие браузеры, использующие его). К сожалению, по поводу ядра ничего не сказано, поэтому все изменения производительности касаются, похоже, лишь оптимизации, что автор и предположил в тексте статьи.


    1. Mairon
      13.01.2018 15:26

      Тогда надо не в гикбенче замерять, а в чем сейчас попугаев в бразерах меряют?


  1. natan555
    13.01.2018 02:15

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


    1. TipTopych
      13.01.2018 12:37

      Вот Вам субъективная оценка, Айфон 7, 11.2.2, падения производительности не было замечено ни в играх, ни в приложениях, ни в интерфейсе системы. Специально пол дня драконил телефон после той статьи :)


    1. NetBUG
      13.01.2018 13:47
      +1

      Срочно побежал делать свой бенчмарк, эксплуатирующий чтение из кэша.
      Ах, это практически невозможно применить на практике? Сейчас придумаем, как!


  1. FreeManOfPeace
    13.01.2018 07:33

    Вот что меня удивляет в современной тенденции что с iOS, что с Android, так то что гаджеты по сути живут своей жизнью, в случае устройств с iOS производительность гаджетов на одном чипе может сильно различаться в зависимости от состояния батареи (и версии libastral.so) и пользователь никак не может на это повлиять, устройство может некоторое время что то переваривать после обновлений (интересно что же, вот вывели бы уведомление нажав на которое можно посмотреть подробности, сложно что ли) и так далее. А при стандартных настройках устройство ещё и лезет качать ти самые обновления, как своей прошивки так и программ по каждому чиху.

    При чём всё это сделано довольно непрозрачно. Лично у меня есть андроид с выпиленными гуглосервисами, и он ничем подобным не страдает принципиально. Но тенденции не могут не напрягать, с каких пор устройство считает себя умнее пользователя?


    1. sumanai
      13.01.2018 11:56

      с каких пор устройство считает себя умнее пользователя?

      С выхода Windows Vista в 2007.


      1. gerahmurov
        13.01.2018 21:12

        iPhone тоже вышел в 2007.


        1. sumanai
          13.01.2018 23:43

          Знаковый год.


      1. Vitalley
        15.01.2018 01:11

        На Win XP уже началась эта тенденция, Win 2000 была самая дружелюбная к пользователю.


    1. Marsikus
      14.01.2018 10:38

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


    1. izzzgoy
      15.01.2018 10:31

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


  1. kozyabka
    13.01.2018 07:58

    Я верно понимаю, что чтобы этим Meltdown и Spectre выудить хоть что-то полезное из хеша на деле нужно с каждым клоком весь хеш мониторить тем самым просаживая проц на 100%? Фактически неюзабельные дыры?


    1. SinsI
      13.01.2018 13:59

      Meltdown волне юзабельная, потому что эксплоится неверное предсказание для самой программы-агрессора и за одну попытку можно выудить несколько байт, причём не оставляя никаких следов.
      Spectre — можно считать за уязвимость конкретной атакуемой программы, потому что агрессор должен вначале передать ей данные (причём так, чтобы предсказатель полез куда не надо), а потом попытаться получить с неё же данные и по задержке этого определить буквально один единственный бит. При этом она, естественно, будет оставлять множественные следы в системе. Юзабельность в обычных условиях крайне сомнительная.


      1. kozyabka
        13.01.2018 18:13

        Да, но «условный» пароль то хранится в процессоре всего пару клоков, это же не озу и чтобы агрессору находить пароль нужно каждый клок сканировать память проца. Как агрессор узнает что пароль именно сейчас там находится?


        1. SinsI
          13.01.2018 20:53

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


  1. za90
    13.01.2018 08:25

    если вы уже на iOS 11

    А если еще на 10?


  1. svilgelm
    13.01.2018 12:37

    Субъективно — iPhone 10 без изменений.
    iOS 11.2.1: Single 4248; Multi 10167
    iOS 11.2.2: Single 4235; Multi 10076
    Измерял в Airplane Mode и на зарядке, на 10.2.2 измерял сразу после апгрейда, телефон теплый. Попробую попозже еще один раз.


  1. Enzo_Sterro
    13.01.2018 13:11

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


  1. sasha4176
    13.01.2018 13:26

    На моих iPhone 5s и iPhone 6s разницы между 11.2.1 и 11.2.2 в бенчмарках не обнаружено.


  1. kymylep
    13.01.2018 14:47

    У Air 2 неплохой результат, нагуглил, картинку, где на iOS 8 на самом старте продаж Air2 набирал 1810/4472 на geekbench 3.

    www.ferra.ru/images/407/407918.png


  1. izzholtik
    13.01.2018 16:52

    Это не хабраэффект, есть более общий термин.
    https://ru.m.wikipedia.org/wiki/Слешдот-эффект


  1. kAIST
    13.01.2018 21:23

    Хм… у меня iPad Air первый. Жалел что обновился на iOS, так как планшет стал очень тормозить при работе с браузерами (только для этого и использую). Но с этим обновлением все стало работать нормально. Может они тормоза убрали из за старого аккумулятора?


    1. Terverus
      15.01.2018 11:42

      Обновился на iOS? А раньше Android стоял?)


  1. agran
    14.01.2018 20:36

    Мои данные тестирования моего iPhone 6 в GeekBench:
    iOS 11.2.1:
    Single core: 1520
    Multi core: 2662

    iOS 11.2.2:
    Single core: 1548
    Multi core: 2658

    Производительность нисколько не снизилась.

    Интересно, если я опубликую в своём личном блоге запись, что все телефоны Samsung после исправления уязвимости замедляются в 10 раз, то все новостные ресурсы тоже распространят эту информацию без всяких разбирательств и перепроверок?