Инженеры из консорциума Linaro (http://linaro.org/), созданного компаниями ARM, Freescale, IBM, Samsung, ST-Ericsson и Texas Instruments с целью улучшения поддержки архитектуры ARM в Linux и разнообразных открытых приложениях, провели (http://www.cnx-software.com/2012/06/03/linaro-android-puts-s.../) работу по оптимизации производительности Android 4 (Icecream Sandwich). Отчёт о проделанных улучшения размещён на YouTube в форме видеоролика (http://www.youtube.com/watch?v=mrQRYmYip6Q), который демонстрирует работу оптимизированной и неоптимизированной ОС для смартфонов на идентичном наборе оборудования - системе на основе SoC Texas Instruments PandaBoards (OMAP4430).
В обоих случаях оборудование, версия Android и ПО для измерения производительности (oxBench) идентично. По результатам тестирования версия Android с оптимизациями показывает 60 кадров в секунду, тогда как оригинальная версия только 30. Для измерения был выбран тест, который упирается в производительность процессора, ибо оптимизация для графики невозможна по причине закрытости драйверов для видео акселератора.
Увеличения скорости удалось достигнуть за счёт внесения в компоненты платформы Android специфичных для ARM оптимизаций и использования более новой версии программного обеспечения для сборки (GCC 4.7) в сочетании с более агрессивными опциями для компилятора (выключение -fno-strict-aliasing и включение -O3). Разработчики проекта CyanogenMod, в рамках которого независимым сообществом развивается основанная на коде платформы Android прошивка для телефонов и планшетов, заявили (http://review.cyanogenmod.com/#/c/17358/) о намерении использовать представленные оптимизации в будущем релизе своей прошивки (CyanogenMod 9).<p align="center"><iframe src="http://www.youtube.com/embed/mrQRYmYip6Q" frameborder="0" height="360" width="640"></iframe>
Кроме того, можно отметить проведение (http://www.pcpro.co.uk/news/375019/intel-improving-android-b...) компанией Intel похожей работы, направленной на увеличение производительности Android 4. Сообщается о реализации значительных улучшений, связанных увеличением производительности для многоядерных систем и процессоров Atom. К сожалению, в отличие от консорциума Linaro, сразу публикующего весь код для своих улучшений, компания Intel придерживается иной тактики и пока не открыла свои наработки. С одной стороны Intel заявляет, что придерживается философии возврата изменений в открытые проекты. Но с другой стороны, по словам Майка Белла (Mike Bell), директора по мобильным разработкам, в условиях когда лицензия на Android не обязывает открытие кода, компания пока взвешивает все аргументы "за" и "против", не желая уступать реализованные преимущества конкурентам, не вкладывающим свои ресурсы в разработку Android.
URL: http://www.cnx-software.com/2012/06/03/linaro-android-puts-s.../
Новость: http://www.opennet.me/opennews/art.shtml?num=34074
мужик на видео - сама доброта. я смотрел и улыбался ^_^
милашка. :)Почему-то напомнил вот этого, справа - http://kinozavr.kz/userfiles/images/politsejskaya-akademiya-...
> справа - http://kinozavr.kz/userfiles/images/politsejskaya-akademiya-..."Зет", вроде так его зовут.
На видео Bernhard Rosenkränzer, linux/KDE евангелист
ну да. только одышка у него уже. совсем себя забросил.
доброта-добротой, а про спорт забывать не стоит. кто-ж андроиды будет оптимизировать?
молодцы! В правильном направлении двигаются!
Пусть теперь еще яву выбросят и разгонят все еще в 3 раза, вот тогда станет хорошо :)
При чем здесь ява?
Догадайтесь с 3 раз :)
гражданин Аноним знает, что такое нативный код? Аноним будет сильно удивлён...
> гражданин Аноним знает, что такое нативный код? Аноним будет сильно удивлён...Гражданин знает. А еще он знает что большая часть программ и заметная часть системы писана на тормозной яве. По поводу чего оно и жрет батарейку в три горла.
Оно умеет JIT уже давно, и в результате исполняется тоже нативный код, кто же ест батарейку ?
будеть есть, но поменьше, конечно. но больше, чем в бинари, сгенерированной из плюсов, или си. тому есть некоторые причины. просто тут речь как раз шла о JIT, как вы правильно заметили, а вот гражданин аноним этого так и не понял.
У кого есть устройство на андроиде ???У меня батарейку жрут:
1) Голосовые вызовы;
2) Экран;
3) WiFi.
Это 90% в сумме.Если в жесткие игры играть, то больше жрёт нативный код, рендерит и т.п. Ребята из новости как раз оптимизировали НАТИВНЫЙ код.
Нефига про яву чушь нести. В андроид Dalvik, для начала, и жрёт он меньше 10%, наконец.
Догадаюсь с одного - ни при чём.
Вывод очевидный. Так же как в сельском хозяйстве. Можно увеличивать производительность увеличением площадей (памяти, скорости процессора), а можно орошением, выведением новых сортов (делать приложения оптимизированные для процессора и т.п.). Но так никто не делает, ибо сейчас дешевле купить память, мощнее процессор и т.д.
ничего, будут делать в скором времени, так как всё в аккумулятор упирается. т.е. хочешь высокой производительности и чтобы телефон больше дня работал -- придется делать оптимально. не зря же NDK выпустили, когда стало ясно, что ява "не тянет". а оптимизации (на уровне ядра по крайней мере) делают постоянно, там где это еще возможно
В Android явы нет.
Воистину нет.
дело в том, с такой постановкой вопроса горе-программисты не занимаются совсем разбором работы алгоритмов, тонких мест. работет, да и ладно.
и вдруг, вместо того, чтобы слить всего в пару раз по произволительности, программа сливает в несколько сотен раз. и может даже больше.
новый gcc, -O3, прям gentoo-way
Неа.
Гентувеу — это когда ты ставишь какой угодно -О.
А вот если что-то навязывают, то это федора.
Что, варезфилы (ой извините, любители PPA) почуяли угрозу от нормальных дистрибутивов с подписанными пакетами в репозиториях? Вот беда, трояны просто так не втюхать...
> Что, варезфилы (ой извините, любители PPA) почуяли угрозу от нормальных дистрибутивов с
> подписанными пакетами в репозиториях?Прикольный набор взаимоисключающих параграфов, учитывая что в PPA пакеты подписаны ключом автора :)
> новый gcc, -O3, прям gentoo-wayДа, гентушники тоже - сначала себе тормознули систему руления портажами питоном, а потом истошно оптимизируют в других местах. Андроид тоже сначала тормознул себе все что можно тормозной JVM а теперь истошно надрывают зад с оптимизациями.
Сам-то понял, что написал? Где питон в генту, где JVM в андроиде? В огороде бузина, а в Киеве дядька, ох уж эти школьники.
А далвик типа не с сановской (тогда ещё) жвм слизан?
типа нет
> типа нетНо яп типа случайно получился немного похожим на яву :)
Где Вы такие [цензура] растёте? ;) Язык там и есть Java только он выполняется не JVM и даже не его форком, Java классы потом преобразуются в другой бинарный формат и выполняются Dalvik-ом.
Язык там не Java. Чтоб называться Java, языку(а точнее его реализации) нужно пройти обязательную сертификацию у Oracle.
А просто так называть что попало Java нельзя - java -зарегистрированная торговая марка Oracle -a(кстати как b javascript).
А теперь угадай проходил ли dalvic сертификацию, а точнее может ли он ее пройти?
А зачем dalvik-у проходить сертификацию на Java если он - не Java?
> Где Вы такие [цензура] растёте? ;)Вы не заметили бы скарказм даже если бы это был карьерный самосвал, прущий прямиком на вас. "Где Вы такие [цензура] растёте? ;)"
> Сам-то понял, что написал? Где питон в генту, где JVM в андроиде?
> В огороде бузина, а в Киеве дядька, ох уж эти школьники.file `which emerge`
echo "твой кролик написал!"Ну и ebuild в sys-apps/portage как-бы намекает)
Вообще существует отличное развлечение "снеси питон и попробуй вернуть его назад" =_
С другой стороны из минусов - только скорость, но и это лечится, если использовать eix и equery.И JVM в андроиде есть в виде dalvik.
Но так же есть NDK, который позволяет выполнять Сишный код (а иначе как 3d игрушки работали бы).Вот такая правда жизни =)
>И JVM в андроиде есть в виде dalvik.Вот это перл!
>Но так же есть NDK, который позволяет выполнять Сишный код (а иначе как 3d игрушки работали бы).
А как в Windows Phone 7 3D игрушки работают без NDK ???!!!
> А как в Windows Phone 7 3D игрушки работают без NDK ???!!!Как, как... хреново. А чего ожидать от тормозного рантайма на ограниченной платформе с хилым по современным меркам железе? Все гамезы с нормальной графикой - дружно требуют тегру. Которую WP7 вообще не поддерживает ни разу, бггг...
> Вообще существует отличное развлечение "снеси питон и попробуй вернуть его назад" =_скачать готовый last-stable в PREFIX=/usr/local/, пересобрать гентушный, снести скачанный.
ДА, ЭТО СЛОЖНО.
Отлично! OpenWRT использует Linaro тулчейн для своих сборок. Нужное дело делают. )
> Отлично! OpenWRT использует Linaro тулчейн для своих сборок.Linaro в основном по части ARM заморачивается, а сетевые железки чаще все-таки на MIPS, хотя как говорится, it depends.
> использования более новой версии программного обеспечения для сборки (GCC 4.7) в сочетании с более агрессивными опциями для компилятора (выключение -fno-strict-aliasing и включение -O3)отличная работа проделана! :-)
> К сожалению, в отличие от консорциума Linaro, сразу публикующего весь код для своих улучшений, компания Intel придерживается иной тактики и пока не открыла свои наработки
*FACEPALM*
Чёй-то не понял йумора> Инженеры из консорциума Linaro, созданного компаниями ARM,
> Freescale, IBM, Samsung, ST-Ericsson и Texas InstrumentsЖалуются на закрытые дрова для своих видюх?
> Чёй-то не понял йумора
>> Инженеры из консорциума Linaro, созданного компаниями ARM,
>> Freescale, IBM, Samsung, ST-Ericsson и Texas Instruments
> Жалуются на закрытые дрова для своих видюх?А точно "для своих"?
> А точно "для своих"?OMAP == Texas Instruments
> OMAP == Texas InstrumentsКапитан!
"в условиях когда лицензия на Android не обязывает открытие кода, компания пока взвешивает все аргументы 'за' и 'против', не желая уступать реализованные преимущества конкурентам"плюсы либеральных лицензий, как они есть
В любом случае это вопрос доброй воли, при желании и AGPL можно обойти.
> плюсы либеральных лицензий, как они естьГраааажданин! Вы хотели сожрать 35% рынка и не делиться с теми благодаря кому вы это смогли? Вы плохой, негодный человек.
>> плюсы либеральных лицензий, как они есть
> Граааажданин! Вы хотели сожрать 35% рынка и не делиться с теми благодаря
> кому вы это смогли? Вы плохой, негодный человек.Скорее с теми, "благодаря" которым это 35%, а не 70%.
> Скорее с теми, "благодаря" которым это 35%, а не 70%.Так кто ж не дает - не пользуйтесь поделиями этих негодных школяров. Сделайте свое и захватить 70%. Если сможете :)
и когда это чудо ждать на моем асус трансформере?
> и когда это чудо ждать на моем асус трансформере?Начинать ждать можете уже сегодня)
В официальных прошивках оно появится, скорее всего, через полгода - год.
В cyanogen - раньше.
В принципе, вы можете уже сейчас скачать сырцы андроида (они открыты) и скомпилить под свой девайс.
Так и не понял что прооптимизировали. Поставили другую опцию компиляции и более новую версию компилятора ? X_x
еще в mainloop ядра убрали 50% nop-ов
> еще в mainloop ядра убрали 50% nop-овРеквестирую ссылочку на diff :)
Использовали свежую версию гцц со своими патчами для арма. Почистили код андроида, чтоб можно было использовать более агрессивные параметры оптимизации.
Мужик на видео реальный программер (Что косить под Столлмана стало модно?). Ах да, =')
Вероятние, мужик на видео даже не знает кто такой Столлман
Действительно - пусть Intel свой код не открывает. Больше будет ARM хороших и разных ;)
Что-то кроме галимого 3D работает быстрее?
Для тех кто не в курсе - на андроиде весь рендернг идёт через OpenGL. То есть касается вообще любой отрисовки - вопрос только в степени.
Вот, единственный грамотный человек оказался ;-)>Для тех кто не в курсе - на андроиде весь рендернг идёт через OpenGL.
А это самый настоящий нативный код. Если написать OpenGL-приложение без NDK, то процессор будет 90% ресурсов тратить не на виртуальную машину, а на выполнение нативного кода OpenGL-библиотеки.
Как оказалось, бенчмарк ущербный и на самом деле там прирост не такой уж и большой. Просто они хотели народу в доступной форме показать, что они неплохо наоптимизировали, но данный конкретный тест, показанный на видео, -- суть обманка. Хотя если верить им -- то всё же их оптимизации в других областях очень неплохи.Подробности тут: https://plus.google.com/105007947798310229700/posts/7B2vaZq8ekZ