LINUX.ORG.RU

Android переходит на ART

 


3

2

В ветке репозитория AOSP приняты изменения активирующие для выполнения приложений новую среду выполнения ART и отключающие использование виртуальной машины Dalvik.

ART позволяет в нативном виде, без использования виртуальной машины, запускать приложения, скомпилированные в момент установки. Это позволяет заметно повысить производительность программ.

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


Поддержка ART была добавлена в выпуске Android 4.4, но требовала изменения настроек для активации. Переход на ART в AOSP говорит о том, что в следующем мажорном выпуске Android эта технология будет применяться по умолчанию.

>>> Подробности

★★★★★

Проверено: fallout4all ()
Последнее исправление: cetjs2 (всего исправлений: 2)

Ответ на: комментарий от vurdalak

Кстати, а как на иос решают проблему архитектуры? Собирают под все архитектуры по бинарнику? Или на всех устройствах архитектура одна?

Учитывая что iPod это тот же iPhone без запчастей? Ну а так да зоопарк там тоже порядочный но они и собирают то статической линковкой ( „все включено“ ога… ). А вот как они опакечивают и распространяют другой вопрос. Но я думаю пересобирать индивидуально под каждого зверя из всего зоопарка - дураков там мало.

init_6 ★★★★★
()
Ответ на: комментарий от makoven

Если проблема надуманная, то где же все эти прекрасные планшеты на архитектурах, отличных от ARM? И купил ли бы ты один из таких, зная что два из трех приложений не запустятся?

У меня планшет на Intel Atom Z2580, приложения работают отлично, включая использующие ndk.

xapienz
()
Ответ на: комментарий от init_6

Но я думаю пересобирать индивидуально под каждого зверя из всего зоопарка - дураков там мало.

Почему дураков? Не вручную же это делают, один билдскриптик и готово.

vurdalak ★★★★★
()
Ответ на: комментарий от vurdalak

Не вручную же это делают, один билдскриптик и готово.

Да нет же они собирают один единственный билдик под минимальную версийку и готово.

init_6 ★★★★★
()
Ответ на: комментарий от vurdalak

стопстопстоп. это же айось а не андроид какой-то. \\ на самом деле там чаще только ресурсы для ретинов и неретинов разные формируют.

Thero ★★★★★
()
Ответ на: комментарий от init_6

Этот некто — единственный разработчик и единовластный владелец ОС Андроид, используемой на большинстве смартфонов в этом мире. Никто не помешает ему окончательно выпилить дальвик.
Все новые телефоны будут выходить на базе этих дефолтных настроек. Жизненный цикл смартфона сейчас очень короток и через пару лет большинство смартфонов в мире будет на ART. Эта информация не достойна новости? лол.

anonymoos ★★★★★
()
Ответ на: комментарий от anonymoos

Этот некто — единственный разработчик и единовластный владелец ОС Андроид, используемой на большинстве смартфонов в этом мире.

ЛОЛ пиши исчо!

Никто не помешает ему окончательно выпилить дальвик.

Никто и ничто кроме здравого смысла и баааааблища которого он начнет получать гораздо меньше из-за того что ПО под ART тупо не работает, его техподдержку неестественно сношают и толпами валят на другие мобильные решения коих придостаточно…

Жизненный цикл смартфона сейчас очень короток и через пару лет большинство смартфонов в мире будет на ART.

Сейчас в условиях того что практически ВСЁ под ART вообще не работает новость о том что кто-то перешел на «ART по дефолту» выглядит более чем странно.

Эта информация не достойна новости?

Обсуждения в толксах. Материал и его подача как раз соответствуют.

init_6 ★★★★★
()

Блин, только дошло — если этот AOT будет отрабатывать при каждой установке приложения, то отладка может сильно замедлиться. Надеюсь что хоть для отладочного режима старый dalvik-режим оставят.

crowbar
()
Ответ на: комментарий от makoven

Недавно анонсировали Golang нативно под андроид, вполне подходит под llvm-ndk.

anonymous
()
Ответ на: комментарий от Thero

ну хорошим тоном считается.. а так как минимум айпад от айфона делят же.

Ну так и ифон от ифона тоже отличают ...по разрешению.

andreyu ★★★★★
()
Ответ на: комментарий от makoven

Еще один. LLVM IR не является платформонезависимым. И никогда таким не будет. By design.

anonymous
()
Ответ на: комментарий от crowbar

Какая разница? Далвик компилировал на лету (при запуске приложения) АРТ компилирует при установке.

FireFighter ★★★
()

ART позволяет в нативном виде, без использования виртуальной машины

Клевета.

Lavos ★★★★★
()
Ответ на: комментарий от note173

Автоматического подсчета ссылок современным программистам уже не хватит? Слабые ссылки расставлять не умеют?

Макросов ассемблера современным программистам уже не хватит? nop'ы расставлять не умеют?

rand
()
Ответ на: комментарий от init_6

программ которые нормально работают как в дальвике так и в АРТе всё еще единицы.

90% проблем с артом решается либо переустановкой программы, либо чисткой кэша. Такие дела.

И да, art заметно быстрее далвика как минимум на моём Xperia ION с кастомной прошивкой.

devl547 ★★★★★
()
Ответ на: комментарий от devl547

90% проблем с артом решается либо переустановкой программы, либо чисткой кэша. Такие дела.

Лично для мня пока что аргумент в виде:

CyanogenMod 11 NIGHTLY

ART не поддерживается CyanogenMod. Эта опция является экспериментальной и может повлечь нестабильную работу, ошибки, потерю данных или даже препятствовать загрузке устройства. Посетите страницу «Введение в ART» (на английском языке) для получения подробных сведений.

Мы просим не присылать баг-репорты, если вы выбрали ART в качестве среды выполнения системы.

Выглядит куда весомее сказок о том, что с ART-ом все просто замечательно.

И, если что, да что такое ART я знаю не по наслышке - у меня самого CyanogenMod 11 с android 4.4.4 и переустановки и чистки кеша это конечно все хорошо… Но лично мне в случае ART-а оно не помогает вообще никак. Хотя да стоит заметить что собственно то что идет в самой прошивке работает относительно неплохо. Но даже здесь „относительно“ потому что баги в приложениях есть даже на dalvik-е а с ART-ом, по крайней мере пока-что, все очень сыро и еще хуже.

И то что для ART-а активно исправляют я сам это прекрасно вижу. Еще с пол года - год и он будет тортом!

init_6 ★★★★★
()
Ответ на: комментарий от init_6

CyanogenMod 11 с android 4.4.4

У меня 4.4.2.

Но даже здесь „относительно“ потому что баги в приложениях есть даже на dalvik-е а с ART-ом

Для меня плюсы арта перевешивают его возможную несовместимость.

devl547 ★★★★★
()

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

vurdalak ★★★★★
()
Ответ на: комментарий от andreyu

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

Thero ★★★★★
()
Ответ на: комментарий от vurdalak

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

Thero ★★★★★
()
Ответ на: комментарий от Thero

скорость холодного запуска в среднем на 30% выше..

На каком приложении это лучше всего проверить из популярных свободных?

vurdalak ★★★★★
()
Ответ на: комментарий от vurdalak

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

Thero ★★★★★
()
Ответ на: комментарий от Thero

Обзоры обзорами, а мне бы профит получить. Я конечно понимаю, что стоковые прошивки говно и на них может профит больший быть, но уж на моём стареньком телефоне могло бы и проявиться :)

vurdalak ★★★★★
()
Ответ на: комментарий от vurdalak

Обзоры обзорами, а мне бы профит получить

„ART это модно“ ©™ - профит.

init_6 ★★★★★
()
Ответ на: комментарий от vurdalak

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

Собственно да +100500!!! Подписываюсь и лайкаю!

Перешел вчера, потестил и остался на ART-е. Кстати на прошлых версиях на ART-е дела обстояли куда хуже. Тогда больше половины приложений просто пропадали начисто… И это еще учитывая то что у меня из магазина гугла всего 7 программ установлено. Сейчас все Ок и шустренько. На вид даже шустрее чем на dalvik-е но на фоне и так реактивной CyanogenMod это не сильно то и заметно. Но на относительно тяжелых приложениях это очень хорошо видно.

А в целом та же ерунда.

init_6 ★★★★★
()
Ответ на: комментарий от init_6

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

vurdalak ★★★★★
()
Ответ на: комментарий от vurdalak

Оно ускоряет только запуск приложений и чукчточку экономит батарейку (за счет меньшей нагрузки на проц в момент запуска приложения).

Lavos ★★★★★
()
Ответ на: комментарий от vurdalak

Пришлось поудалять часть приложений.

Ну у меня таких проблем нет. У меня из приложений только самый необходимый минимум. Игрушек и прочей ерунды попросту нет. А так фактически все то же самое что и в „стоковом“ CyanogenMod-е ну и + минимальные gapps-ы + по паре приложений из маркета и из f-droid.

Кстати „Киностудия“ она у всех упоротая или у одного меня? Может оно есть где пофикшенное? А то надо снести эту дрянь да и дело с концом.

init_6 ★★★★★
()
Ответ на: комментарий от init_6

У меня тоже минимум, но у меня девайс старый. Там 1 гиг встроенной памяти всего, из них часть занята системой.

vurdalak ★★★★★
()
Ответ на: комментарий от Lavos

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

vurdalak ★★★★★
()
Ответ на: комментарий от Lavos

Оно ускоряет только запуск приложений и чукчточку экономит батарейку (за счет меньшей нагрузки на проц в момент запуска приложения).

У меня и без этого на dalvik-е CyanogenMod 11 живет по 4-ре пять дней на одной подзарядке и это еще батарея старая… Причем „старая“ в данном случае это около 5ти лет.

init_6 ★★★★★
()
Ответ на: комментарий от vurdalak

Хром. Но на самом деле проще походить с ART дня 4, а потом переключить обратно на далвик - тут же все почувствуешь.

ArtKun ★★★★★
()
Последнее исправление: ArtKun (всего исправлений: 1)
Ответ на: комментарий от anonymous

Нексус7 пока не тестировал, не хочется у девушки игрушку отнимать.

На Nexus4 (еще раз привет, qualcomm) прирост от арта есть.
Но там еще более интересно - на xda есть оптимизированные самим квалкомом бинарники libdalvik и libm. С ними далвик резко рвёт вперёд.

devl547 ★★★★★
()
Ответ на: комментарий от note173

Каким вообще упоротым недоумком надо быть, чтобы сравнивать полноценный компактифицирующий GC с убогим подсчетом ссылок.

anonymous
()
Ответ на: комментарий от Bioreactor

Тебе вообще сколько лет, а? Не стыдно в программистишках ходить в таком возрасте? Кодерить - дело для малолеток, взрослым дядям там делать нечего.

anonymous
()
Ответ на: комментарий от vurdalak

Я переключи, оно пересобрало все приложения, а разницы в скорости никакой

У меня тоже самое.

cipher ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.