- Что значит отказ от поддержки 32-битной архитектуры в будущих процессорах ARM
- Константин Иванов
- А разве Android еще не 64-битный?
- Что известно о 64-битных процессорах ARM
- Перевод «Подготовьте ваши приложения к 64-бит требованиям»
- 64-бит требования: что это означает для разработчиков
- Подготовка к 64-бит требованиям
- Как узнать, работает ли устройство на 32-битном или 64-битном Android
- 64 бита в смартфонах и планшетах: есть ли польза?
- Удвоение вычислительной мощности
- Совместимость со всеми приложениями
Что значит отказ от поддержки 32-битной архитектуры в будущих процессорах ARM
Константин Иванов
Во время выступления на конференции Arm DevSummit Пол Вильямсон, вице-президент и глава клиентского подразделения ARM, заявил, что новые процессоры Arm Cortex-A, то есть те самые, что служат основой платформы для чипсета вашего смартфона, к 2022 году будут поддерживать только 64-битную архитектуру. Это означает, что на аппаратном уровне поддержки 32-битных приложений в будущем не будет, а следовательно, это небольшой, но весьма значимый шаг для будущего смартфонов и ОС Android.
Если вы волновались насчет поддержки приложений, то напрасно. Компания Google с августа 2019 года требует, чтобы все приложения в магазине Google Play были 64-битными. Со стороны ARM также подчеркивают, что около 60% приложений уже совместимы с 64-битной архитектурой. Большая часть тех, что 64-бита не поддерживают, находятся за пределами западных экосистем, созданных Apple и Google. Так что большинство приложений или уже 64-битные, или у их создателей есть еще масса времени для обеспечения такой поддержки. Худший вариант – это старые приложения, у которых уже нет поддержки. Они просто перестанут работать.
А разве Android еще не 64-битный?
Технически ОС Android уже 64-битная. Поддержка 64-битных приложений была внедрена еще в 2014 году с обновлением до версии 5.0 Lollipop, но ОС Android и ядра ARM сохраняют поддержку 32-битных приложений. Так что называть ОС Android полностью 64-битной системой будет неверно. Это наследство в виде поддержки старой архитектуры просуществует до 2022 года с точки зрения аппаратной части, так что нет предпосылок к тому, чтобы из Android его исключили заранее. Так что для пользователей переход должен быть бесшовным.
Польза от перехода полностью на 64-битную архитектуру должна включать улучшение производительности для приложений, игр и операционной системы. В некоторых случаях оно может достигать 20%. Разработчикам больше не потребуется заботиться о поддержке двух архитектур, и они смогут сосредоточиться исключительно на 64-битной. Возможно, это даст некоторое ускорение в выпуске обновлений.
В большинстве случаев переход к 64-битной архитектуре будет заурядным событием. Смартфоны и приложения находятся в переходном периоде уже несколько лет. Так что и с точки зрения аппаратной и программной части переход давно пора завершить. В конце концов, в Apple еще в 2017 году уже сделали iOS 11 полностью 64-битной.
Что известно о 64-битных процессорах ARM
Важной новостью от Arm является то, что они наконец-то смогут избавиться от лишней части своих процессоров, которая требуется исключительно для поддержки 32-битной архитектуры. Это сэкономит полезную площадь при печати, что означает меньший физический размер ядра и его меньшую теплоотдачу, ну или большую производительность при тех же размерах.
Кодовые названия ядер Arm для 2021 и 2022 года – Matterhorn и Makalu. И вот у второго уже не будет поддержки 32 бит. Компания Arm обещает 30% прирост в производительности между ядрами 2020 года Cortex-A78 и Makalu, так что не заметить улучшение будет сложно. Переход к полностью 64-битной архитектуре начнется с больших ядер Cortex-A. При этом сам переход не будет непременно сопровождаться новой архитектурой самого ядра, такой как ArmV9. Другими словами, скорее всего, мы увидим дизайн кластера ядер, в котором будут присутствовать как полностью 64-битные Makalu, так и меньшие ядра с поддержкой 32/64-бит, такие как Cortex-A55. Хотя финальный продукт с точки зрения пользователя и разработчика будет исключительно 64-битным.
Так что до того, как появятся чипсеты, работающие исключительно с 64-битами, нам придется подождать, чтобы появились малые ядра в полностью 64-битном исполнении. Это оставляет пространство для менее производительных устройств, которые используют только меньшие ядра. Они смогут обеспечивать поддержку 32-битной архитектуры несколько дольше. И есть даже предпосылки к тому, что обновление данного типа ядер произойдет до этого момента. Это будет более новая модель в сравнении с Cortex-A55, но у нее все еще будет поддержка и 32, и 64-бит, так что тут переход будет еще более плавным.
Переход полностью на 64-бита – это важный шаг для ОС Android и компании Arm. Его значение – в упрощении в сравнении с современным состоянием, когда требуется поддержка наследия 32-битной эры. Однако не нужно воспринимать его как фундаментальное изменение экосистемы или радикальное обновление пользовательского опыта, поскольку вся сложность перехода ложится исключительно на плечи разработчиков. А простые пользователи устройств, скорее всего, вообще ничего не заметят.
Источник
Перевод «Подготовьте ваши приложения к 64-бит требованиям»
Перевод статьи Get your apps ready for the 64-bit requirement (от 15.01.2019) блога «Android Developers Blog».
Современные 64-бит процессоры увеличивают скорость и обогащают опыт ваших пользователей. Добавление 64-бит версии приложения даёт улучшение производительности, открывает пути для будущих инноваций и настраивает на устройства только с 64-бит «железом»
Мы хотим помочь вам быть готовыми, и знаем что вам нужно планировать время. Мы поддерживаем 64-бит CPU начиная с Android 5.0 Lolipop, и в 2017 году мы впервые анонсировали, что приложения использующие нативный код, должны иметь 64-бит версию (в дополнение к 32-бит версии). Сегодня мы представляем более детальную информацию и временной график, чтобы сделать этот переход как можно более лёгким в 2019 году
64-бит требования: что это означает для разработчиков
Начиная с 1 августа 2019
- все новые приложения и обновления приложений, которые содержат нативный код, должны иметь 64-бит версию в дополнение к 32-бит версиям при публикации в Google Play
- Дополнение: Google Play до августа 2021 продолжит принимать 32-бит версии только в части обновления существующих игр использующих Unity версии 5.6 или младше
Начиная с августа 2021
- Google Play остановит обслуживание приложений без 64-бит версий на 64-бит совместимых устройствах, т.е. они перестанут отображаться в Play Store на этих устройствах
- это будет касаться в том числе игр использующих Unity версии 5.6 или младше
Эти требования не применяются для:
- приложений предназначенных исключительно для Wear OS или Android TV, т.к. они имеют форм-фактор не поддеживающий в настоящее время 64-бит код
- приложений не предназначенных для распространения на устройствах работающих на Android 9 Pie или выше
Мы не меняем наши условия поддержки 32-бит. Play будет продолжать доставлять приложения на 32-бит устройства. Это требование лишь означает что приложения с 32-бит нативным кодом должны будут дополнительно иметь 64-бит версию
Подготовка к 64-бит требованиям
Мы ожидаем что для большинства разработчиков, переход на 64-бит будет простым. Многие приложения написаны полностью на не-нативном коде (например на Java или Kotlin) и не потребуют изменения кода.
ВСЕМ РАЗРАБОТЧИКАМ: вот обзор шагов который вам необходимо проделать для 64-бит совместимости. Для большей информации обратитесь к нашей подробной документации
- проверьте ваше приложение на наличие нативного кода. Вы можете проверить наличие .so файлов с помощью APK Analyzer. Определите состоят ли они из вашего собственного кода или импортированного из SDK или используемой вами библиотеки. Если у вас нет каких-либо .so файлов в вашем APK, то вы 64-бит совместимы
- включите 64-бит архитектуры и пересоберите нативный код (.so файлы) импортированный из вашего собственного кода. Для большей информации см. документацию
- обновите все SDK и библиотеки до 64-бит совместимых версий, если необходимо. Обратитесь к владельцу SDK или библиотеки если такие версии недоступны. Мы работаем с владельцами ведущих библиотек над их 64-бит совместимостью
- проверьте на наличие локальных проблем после пересборки вашего приложения
- разверните ваши тесты используя tasting track для тщательного тестирования
РАЗРАБОТЧИКАМ ИГР: все три наиболее используемых движка в настоящее время поддерживают 64-бит (Unreal и Cocos2d с 2015 года, Unity с 2018). Мы понимаем что миграция стороннего игрового движка это затратный процесс требующий много времени
- т.к. Unity только недавно начала предоставлять 64-бит поддержку в версиях 2017.4 и 2018.2, мы делаем исключение существующим играм использующим версию 5.6 или более раннюю до августа 2021 года. Unity подготовила руководство которое может помочь вам в обновлении для 64-бит совместимости
ВЛАДЕЛЬЦАМ SDK И БИБЛИОТЕК: обновитесь для 64-бит совместимости по возможности скорее чтобы дать разработчикам приложений время на адаптацию, и дайте знать об этом разработчикам. Зарегистрируйте ваш SDK для получения обновлений последних инструментов и информации которая может помочь обслуживать ваших пользователей
Источник
Как узнать, работает ли устройство на 32-битном или 64-битном Android
Наступает время в жизни каждого пользователя Android, когда нужно ответить на важный вопрос: мое устройство работает под управлением 32- или 64-разрядной операционной системы? Это может быть трудное, тревожное время, если Вы не знаете, как ответить на этот вопрос. Мы поможем Вам понять, что делать, если возникнет такой вопрос.
Вот как узнать, устройство работает под управлением 32- или 64-разрядной операционной системы.
Итак, первое, что Вам нужно сделать, это загрузить и установить AnTuTu Benchmark. Мы не будем запускать какие-либо тесты, просто используйте его, чтобы получить информацию о процессоре.
После того, как Вы установите его, откройте его и затем нажмите вкладку «Инфа» внизу.
Найдите в этом списке строку с надписью «Android» — это должна быть третья запись. Справа от него будет показана версия Android, а также разрядность ОС.
Хотя это не обязательная информация, которую Вам нужно знать, но всегда полезно знать, как получить доступ к этой информации, если Вам это понадобится. Например, если Вы загружаете стороннее приложение и оно зависит от версии.
Источник
64 бита в смартфонах и планшетах: есть ли польза?
Скоро смартфоны и планшеты станут мощнее: в устройствах высшего и среднего класса появляются 64-разрядные процессоры. CHIP рассказывает об их преимуществах.
Что общего у iPhone 6, Nexus 9 и HTC Desire 510? Все три устройства оснащены 64-разрядными процессорами. Если на рынке настольных компьютеров переход с 32-битной на 64-битную архитектуру уже давно завершился, то среди мобильных гаджетов этот процесс только начинается.
HTC Desire 510 на базе 64-разрядной системы на чипе Snapdragon 410
64-разрядные процессоры могут взаимодействовать более чем с 4 Гбайт ОЗУ, однако в современных смартфонах и планшетах пока используется не более 3 Гбайт. Преимущества, обеспечиваемые 64-битным мобильным процессором, другие, и далее мы о них расскажем.
Технически 64-разрядная архитектура означает, что процессор за один такт может одновременно обрабатывать восемь байтов (64 бита) информации, 32-разрядная же система работает с четырьмя байтами за такт. Уже только данная особенность сама по себе является большим преимуществом.
Например, производители смогут намеренно занижать тактовую частоту процессора: скорость работы смартфонов при этом не упадет (с оговорками, о которых рассказано ниже), зато значительно уменьшится энергопотребление.
Чтобы обеспечить 64-разрядный процессор необходимым количеством данных, нужно принять во внимание некоторые другие факторы. Так как информация передается на процессор через шины, каждая из них тоже должна иметь ширину в 64 бита.
Внутреннее устройство Snapdragon 810. Лидер рынка чипов для мобильных устройств Qualcomm воплотила в своем новом продукте топового уровня целый ряд новшеств, требующих большой вычислительной мощности и выигрывающих от поддержки 64-разрядного режима.
Удвоение вычислительной мощности
Определяющим фактором для 64-битной тенденции в мире мобильных устройств стало решение ARM (разработчика архитектуры большинства всех мобильных процессоров) перейти с архитектуры ARMv7 на 64-разрядную архитектуру ARMv8. Первым же 64-битным ARM-процессором является чип Apple A7, который установлен в смартфоне iPhone 5s.
Продукты конкурентов, где реализована архитектура ARMv8, не заставили себя долго ждать. Сейчас на рынке появляются 64-разрядные однокристальные системы от Qualcomm и других. Но осуществить переход на 64 бита в сжатые сроки невозможно, поскольку в настоящее время подавляющее количество смартфонов и планшетов оснащены 32-разрядными процессорами и операционными системами. Ни одно из стандартных 32-разрядных приложений в «чистой» 64-разрядной среде работать не будет, поэтому ARM внедрила в ARMv8 своего рода мост между обеими архитектурами: 32-разрядные приложения запускаются в 32-разрядном режиме, операционная система и 64-разрядные приложения — в 64-разрядном, причем пользователь этого совершенно не замечает.
Характеристики некоторых новых мобильных чипов
Ассортимент 64-разрядных систем на кристалле (SoC) растет. Мы рассказываем, на что способны эти новые мобильные процессоры.
Система на чипе | Exynos 7 Octa | MT6735 | Snapdragon 615 | Snapdragon 810 | Snapdragon 410 | Tegra K1 | A8X | A8 |
---|---|---|---|---|---|---|---|---|
Разработчик | Samsung | Mediatek | Qualcomm | Qualcomm | Qualcomm | NVIDIA | Apple | Apple |
Дата выхода | уже на рынке | начало 2015 г. | уже на рынке | середина 2015 г. | уже на рынке | уже на рынке | уже на рынке | уже на рынке |
Пример устройства | Galaxy Note 4 | нет | HTC Desire 820 | нет | HTC Desire 510 | Nexus 9 | iPad Air 2 | iPhone 6 |
Процессор (частота) | Cortex A57 (1,9 ГГц), Cortex A53 (1,3 ГГц) | Cortex A53 (1,5 ГГц) | Cortex A53 (1,8 и 1 ГГц) | Cortex A57, Cortex A53 | Cortex A53 (1,2 ГГц) | Denver (2,5 ГГц) | Cyclone 2 (1,5 ГГц) | Cyclone 2 (1,5 ГГц) |
Количество ядер CPU | 8 | 4 | 8 | 8 | 4 | 2 | 3 | 2 |
Архитектура | ARMv8 | ARMv8 | ARMv8 | ARMv8 | ARMv8 | ARMv8 | ARMv8 | ARMv8 |
ОЗУ | LPDDR3 800 | LPDDR3 800 | LPDDR3 800 | LPDDR4 1600 | LPDDR3 533 | LPDDR3 933 | LPDDR3 1333 | LPDDR3 1333 |
Видеоядро | Mali-T760 | Mali-T720 | Adreno 405 | Adreno 430 | Adreno 306 | Kepler | PowerVR GX6650 | PowerVR GX6450 |
Техпроцесс | 20 нм | 28 нм | 28 нм | 20 нм | 28 нм | 28 нм | 20 нм | 20 нм |
Совместимость со всеми приложениями
В ARMv8 на адресацию ОЗУ из 64 битов используется 48, то есть новая архитектура способна взаимодействовать с 256 Тбайт памяти. Но самым большим преимуществом ARMv8 является 64-разрядный набор команд A64. Разработчики основательно переделали ARMv7, избавившись от всего лишнего, что препятствовало достижению оптимальной скорости работы. Длина всех команд теперь составляет ровно 32 бита, так что в 64-разрядном командном слове теперь можно комбинировать две команды.
В ARMv7 допускается различная длина команд — звучит лучше, но на практике это вызывает дополнительную нагрузку на процессор при декодировании команд.Так как отныне длина всех команд составляет 32 бита, их обработка занимает меньше времени. Благодаря постоянной длине команд прогноз условных переходов в исполняемой команде выполняется проще, и кроме того, он меньше подвержен ошибкам.
ARM снабдила 64-разрядную архитектуру немалым количеством регистров. Регистров общего назначения и регистров с плавающей точкой теперь в два раза больше, благодаря чему увеличивается производительность. От этого в первую очередь выигрывают различные ресурсоемкие приложения, а также фоновые динамические JIT-компиляторы, преобразующие байт-код в машинный язык непосредственно во время работы программы. Благодаря этому увеличивается скорость работы веб-программ, активно использующих JavaScript.
Не отстает ARMv8 и в вопросах безопасности: архитектура добавляет аппаратное шифрование AES и поддержку алгоритмов хеширования SHA-1 и SHA-256.
Сравнение архитектур ARMv7 и ARMv8
ARMv8 | ARMv7 | |
---|---|---|
Архитектура | 64 бита (AArch64) | 32 бита (AArch32) |
Набор команд | А64 | А32 |
Поддержка 32-/64-разрядного ПО | да/да | да/нет |
Разрядность регистра | 64 бита | 32 бита |
Регистры общего назначения, шт. | 31 | 16 |
Регистры с плавающей точкой, шт. | 31 | 14 |
Длина команды | 32 бита | непостоянная |
Объем физического адресного пространства/адресуемая ОЗУ | 48 бит/ 256 Тбайт | 40 бит/ 1 Тбайт |
Объем виртуального адресного пространства/адресуемая ОЗУ | 64 бита/ 16 Эбайт | 32 бита/ 4 Гбайт |
Шифрование | да | нет |
Однако воплощение 64-разрядной архитектуры в технической составляющей — это только половина дела, на практике также нужна поддержка со стороны операционной системы и приложений. Хорошая новость для пользователей: в iOS 8 и Android 5.0 эта функция уже есть. Apple нащупывает почву и в Apple Store. Так, в новые приложения, которые будут выгружаться в магазин с 1 февраля 2015 года, в обязательном порядке должна быть включена поддержка 64-разрядной архитектуры.
Фото: компании-производители; Инфографика: Doreen Heimann
Источник