Приложения Android на «Авроре», Windows на ChromeOS. О процессорах и песочницах

Привет.

Смотришь очередную презентацию какой-нибудь компании, которая показывает планшет или смартфон, а тебя в буквальном смысле заваливают данными о производительности процессора. Это хорошо видно на примере Apple, у компании появилась традиция постоянно подчеркивать рост вычислительной мощности процессоров, не вдаваясь в детали того, что использовать ее в большинстве приложений просто невозможно. И покупатель iPad Pro последнего поколения на процессоре Apple M4 не увидит никаких отличий в производительности от планшета на процессоре M2. Конечно, радуют некие виртуальные попугаи в бенчмарках, они позволяют бороться с жабой внутри каждого из нас, вроде бы деньги потрачены не просто так. На деле никакого смысла в покупке самого-самого быстрого процессора для большинства нет, так как он не используется даже на половину своих возможностей. Ниже — скриншот из презентации Apple, где мы видим очередные рекорды.

Большинство людей не знают, что интерфейсы современных мобильных ОС уже больше пяти лет настолько быстры, что их приходится искусственно ограничивать в скорости работы. Если отменить задержку для графики, то вам просто будет неприятно смотреть на то, что происходит перед вами на экране, картинки будут меняться со скоростью калейдоскопа, глаз просто не будет успевать за их сменой. Конечно, случаются проблемы со скоростью работы, когда что-то в системе подвисает, окна прорисовываются с задержкой. Видел такое на всех системах без исключения, тут нет какого-то правила, что тормозит конкретно такая-то система, и только. Но большую часть времени все работает более-менее хорошо, быстро. В Apple все так же, как и раньше, стараются почти незаметно, на доли миллисекунды замедлять старые аппараты, чтобы новинки работали чуточку быстрее и человек хотел сменить свое устройство на новое. Но причин технического толка для этого нет, хотя для внешнего наблюдателя, конечно же, есть логичное объяснение — новые версии операционной системы «тяжелее», потребляют больше ресурсов. Факт в том, что все находки для интерфейса уже таковы, что замедлить устройство практически невозможно. Эмпирически можно сказать, что любой смартфон или планшет с 8 ГБ оперативной памяти, а также свободным местом в памяти в размере от 10 ГБ, будет работать довольно быстро. Даже бюджетные решения, где не самая быстрая оперативная память, не самый быстрый UFS 2.2. Смотрю на смартфон Infinix, который стоит около 20 тысяч рублей, и не вижу никаких проблем со скоростью работы, сравниваю со своим Galaxy S24 Ultra. Миф о том, что бюджетные устройства медленные, живуч, он будет с нами еще много лет. И причина тут в том, что нам кажется самоочевидным, что когда ты платишь сто тысяч рублей за смартфон или в пять раз меньшую сумму, ты должен получить разницу в скорости работы. Факт в том, что скорость работы более-менее сравнима, а разницы между любым iPhone и аналогичным по стоимости Android-смартфоном давно нет, более того, как правило, Android-смартфон имеет больше памяти и реже проявляет норов, нет никаких микролагов в принципе.

Новое время диктует необходимость добавления в чипсеты NPU, то есть отдельных блоков, которые отвечают за AI-алгоритмы, ускоряют их работу. Традиционные процессоры вне зависимости от их архитектуры, будь то ARM или х86, наращивают свои возможности, но не меняются кардинально. Год к году изменения в производительности не так заметны, зачастую достигаются приростом числа ядер, а не производительности одного ядра.

Целый месяц следил за своим Galaxy S24 Ultra, мне было интересно, как часто чипсет задействует самое быстрое ядро Cortex-X4 (частота до 3.39 ГГц) или Cortex- A720 с повышенной частотой. Оказалось, что за месяц обычных задач, когда я вел привычный образ жизни, а именно фотографировал, немного снимал видео, играл в игрушки, участвовал в видеоконференциях и сидел в социальных сетях, переписывался в мессенджерах, мой телефон не использовал быстрые ядра почти никогда. За целый месяц работы использование быстрых ядер заняло только 2% от всего процессорного времени. Что-то мне подсказывает, что я очень активный пользователь телефона, у большинства людей результат, видимо, будет более-менее сходным. Если выполнять какие-то «тяжелые» задачи, например, постоянно конвертировать 4К-видео либо играть в тот же Genshin Impact, то использование быстрых ядер резко возрастет. Статистика — штука упорная, и она утверждает, что пользователей, играющих в такие игры на телефонах, не так много, в основном это молодежь, и она в подавляющем меньшинстве (пара процентов от числа пользователей этого смартфона).

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

Недавно Google приобрела компанию Cameyo, которая выпускает приложение виртуализации для ChromeOS, позволяющее запускать х86 приложения, написанные для Windows.

Подход Cameyo близок идее Chromebook, фактически тонкого клиента со слабым процессором, который отличает невысокая цена. Большинство таких устройств стоят 200-300 долларов, и за счет этого они крайне популярны в сфере образования (речь про рынок США, у нас этот сегмент просто не развит). Компания начала свой путь еще в 2018 году, когда в потребительской электронике не было мощных процессоров, отсюда выбранная архитектура — создание облачного решения, когда приложения запускаются на серверах, а на пользовательское устройство транслируется видеопоток. То есть вам требуется постоянное интернет-соединение, чтобы работать в Windows-приложениях на ChromeOS.

Появись Cameyo сегодня, и решение могло бы стать совсем другим, например, создание чего-то, сходного с Rosetta для MacOS, когда приложения, написанные для х86-архитектуры, прекрасно запускаются на ARM-процессорах. И опыт Apple показывает, что такие приложения работают достаточно быстро, нет никаких серьезных ограничений в их производительности. Это обратная сторона роста производительности процессоров, которые могут использоваться для таких задач. И обычно производительность через дополнительную прокладку в виде той же Rosetta 2 падает, посмотрите на результаты тестов.

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

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

В Huawei планируют отказаться от совместимости с Android-приложениями в Harmony Next, следующей версии своей ОС, которая выйдет в этом году в Китае. При этом компания создала песочницу, где такие приложения все равно будут запускаться, но акцентировать на этом внимание она не будет. Попробовал такую песочницу на одном из будущих устройств, работает по тому же принципу, что Gbox на Android-устройствах компании вне Китая, принцип более-менее тот же, хотя сам продукт сложнее на порядок.

В прошлом ограничением для создания локальных песочниц была производительность процессоров на устройствах, они просто не тянули такие возможности, приходилось урезать все до минимума. Сегодня у нас есть множество вариантов решения проблемы: размещение приложений в облаке (путь ChromeOS), создание локальных вариантов приложений, умеющих работать в чужой среде. И есть вероятность того, что приложения, созданные для одной системы, в скором будущем вполне себе будут запускаться на чужих системах. Понятно, что они не будут работать так же быстро и, возможно, в них будут проблемы. Возможно. Но это точно даст толчок для рынка железа, когда всеядность новых устройств окажется для многих огромным преимуществом. Представляете, что произойдет, если на Android вы сможете запускать iOS-приложения без особых проблем? Думаю, что одно из преимуществ системы от Apple исчезнет. Сама логика развития рынка подталкивает к этому, но в силу разных причин такой сценарий может и не случиться. Факт в том, что многие компании сегодня снова попытаются подойти к этому вопросу и создать свои решения. Возможно, что в этот раз у них получится что-то дельное, так как ограничений в виде малой производительности процессоров больше нет.

Хотите, чтобы ваш смартфон умел запускать приложения с других ОС?

[email protected]
наверх