LINUX.ORG.RU

Двукратный прирост произодительности Android

 ,


1

1

Инженеры из консорциума Linaro, созданного компаниями ARM, Freescale, IBM, Samsung, ST-Ericsson и Texas Instruments с целью улучшения поддержки архитектуры ARM в Linux и разнообразных открытых приложениях, провели работу по оптимизации производительности Android 4 (Ice Cream Sandwich). Отчёт о проделанных улучшениях размещён на YouTube в форме видеоролика, который демонстрирует работу оптимизированной и неоптимизированной ОС для смартфонов на идентичном наборе оборудования — системе на основе SoC Texas Instruments PandaBoards (OMAP4430).

В обоих случаях оборудование, версия Android и ПО для измерения производительности (oxBench) идентично. По результатам тестирования версия Android с оптимизациями показывает 60 кадров в секунду, тогда как оригинальная версия только 30. Для измерения был выбран тест, который упирается в производительность процессора, ибо оптимизация для графики невозможна по причине закрытости драйверов для видеоакселератора.

Увеличения скорости удалось достигнуть за счёт внесения в компоненты платформы Android специфичных для ARM оптимизаций и использования более новой версии программного обеспечения для сборки (GCC 4.7) в сочетании с более агрессивными опциями для компилятора (выключение -fno-strict-aliasing и включение -O3).

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

★★★★

Проверено: JB ()
Последнее исправление: Aceler (всего исправлений: 3)

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

Ричард двадцать лет назад трахнул Линуса и получилось это =)

Goury ★★★★★
()

Что то я не понял при чем тут GCC если там жаба и жабопрограммы запускаются и JIT компилируются жава компилятором. Если жабу скомпилировать с другими опциями программы же не станут под ней быстрее работать, разве нет ?

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

exas Instruments. К слову, TI одна из немногих компаний, которая изначально ведёт разработку Андроида полностью открытой: http://omapedia.org http://review.omapzoom.org

Ага, ага, и где скачать исходники кодеков?

Кстати зааутсорсеные на ITTIAM кодеки таки в индуском стиле (

AF ★★★
()

Ну да, so enterpice...

/me знает много коммерческих проектов, которые работают из Debug версии с принципом «оно запускается»

Bridgit
()
Ответ на: комментарий от AF

Ага, ага, и где скачать исходники кодеков?

С этим беда, согласен.

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

При том, что на жабе там только далвиквм, да и то не весь, да всякие виджеты. Весь остальной софт по большей части сразу же кинулись писать на плюсах, как только к тамошней жабе прикрутили jni и отрелизили NDK. А потом и всякие проекты вроде Xamarin подтянулись. Ну и речь шла о ядре андроида, которое на C написано.

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

dalvik на С, раньше был отдельно проект назывался daniel вроде, так вот это был тот же далвик но на жабе

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

там на жабе не так уж и много если сравнивать во всеми иходниками.

Boy_from_Jungle ★★★★
() автор топика

http://www.theinquirer.net/inquirer/news/2182710/intel-claims-android-ready-m...

Now Intel has revealed in their testing that even in the latest version of the Android operating system, Android 4 ICS, having multiple cores remains of little benefit most of the time and can even be detrimental to performance.

According to Mike Bell, GM of Intel’s Mobile and Communications Group, Android’s thread scheduler simply isn’t ready for multi-core processors.

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

You make my day

facepalm.. учи английский.

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

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

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

TI одна из немногих компаний, которая изначально ведёт разработку Андроида полностью открытой

Разве не Google ведет разработку Android изначально под открытой лицензией MIT ? Наверно вы путаете разработку BSP/SDK с разработкой ОС :)

bakugan
()

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

А что, ARM-овские машины с полностью свободными дровами в природе есть? Надо было такие брать, а членам консорциума следует открыть все дрова какие они могут

Xenius ★★★★★
()

Bernhard Rosenkränzer?

Розенкрейцеры? Ну... эти ещё и не то могут...

внесения в компоненты платформы Android специфичных для ARM оптимизаций

Возможно.

использования более новой версии программного обеспечения для сборки (GCC 4.7)

Вероятно, но спорно...

с более агрессивными опциями для компилятора (выключение -fno-strict-aliasing и включение -O3)

-O3 это более специфично для плюсов (там есть некоторые вещи, которые с -O3 лучше оптимизируются). Для С, скорее наверное -O2 с рядом дополнительных -f* опций. Ну или код на плюсах писан...

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

Да пес с ней с явой. Интерфейс в андройде не асинхронный. Естественно будет залипать. Ключевые компоненты интерфейса, которые должны откликаться за доли секунды, иногда тормозят адски - а ведь все решил бы банальный mlock() или mlockall().

Короче, вся эта гуглошпана просто не умеет программировать.

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

Он писал, что женитьба и дети отнимают время, из-за чего просто времени не будет достаточно на пропаганду СПО.

Quasar ★★★★★
()
Ответ на: Bernhard Rosenkränzer? от mr_noone

Кстати, да...

Он, как ни странно, говорит о «CPU staff»... Т.е., он, получается, пересобрал новым toolchain'ом систему? Хммм... Ну, будем подождать очередного апдейта. Посмотреть будем.

mr_noone
()

внесения в компоненты платформы Android специфичных для ARM оптимизаций

А раньше, что, не было отпимизаций?

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

Интерфейс в андройде не асинхронный. Естественно будет залипать

Подробнее можешь?

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

Были, но, видимо,

А раньше, что, не было отпимизаций?

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

mr_noone
()
Ответ на: комментарий от AF

У TI этих исходников никогда и не было.

Откуда информация? Intel вон тоже лицензируют PowerVR у Imagination Technologies, но сорцы для разработки Intel EMGD (Embedded Media and Graphics driver) для Windows и Linux, поддерживающего PowerVR SGX 535 (Intel GMA500) у них вполне есть.

RussianNeuroMancer ★★★★★
()

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

maxt
()
Ответ на: Были, но, видимо, от mr_noone

Вероятно, дело не в риске, а в том, чтобы побыстрее выпихнуть на рынок. И получается, что жрёт батарею и в прошивке куча левой неудаляемой байды по типу фэйсбуков etc

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

Вот и чудненько, ждем окончания гарантии моего телефона и установки туда cyanogenmod :3

Зачем ждать? Перепрошивка не убивает гарантию.

tazhate ★★★★★
()

Таки к андроиду по части производительности вопросов то и не было особо. Были вопросы по отзывчивости интерфейса. Причем я гдет читал что связано с самой архитектурой системы изначально не рассчитанной немного на те особенности применения которые имеют место сейчас.

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

Есть риск, что телефон сломается и нужно будет везти на гарантию. Он не будет включаться, поэтому я не смогу вернуть прошивку. А там его отремонтируют, запустят, увидят прошивку и выставят мне счет.

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

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

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

И это отчасти.

Но всё-таки, даже по опыту gentoo скажу что например рекомендуемые по умолчанию -O2 -march=native -fomit-frame-pointer весьма консервативны. Просто сравниваем выхлоп grep flags /proc/cpuinfo (именно доступные флаги) и gcc -march=native -Q --help=target. Разница как правило (по умолчанию это так) будет в неиспользовании mmx, sse* и прочего-прочего-прочего. Вопрос в том, надо ли включать -mmmx -msse -msse2 -msse3 -mssse3 -msse4_1 -msse4_2 --mfpmath=sse,387 или можно просто забить.

Кто-то может сказать что дескать всё это на фиг не нужно, ибо не используется. Кто-то будет говорить что всё это нужно, т.к. нефиг компилятор ограничивать. Я думаю что даже при условии того, что что-то может и не собраться, включить эти опции лучше, т.к. я лично не могу проверить — используются ли эти флаги в одном-двух пакетах или они используются по мере необходимости во всех пакетах, входящих в систему. У меня всё как-то собирается... И мой код и не мой.

Здесь точно так же всё по-моему. Есть опасность срыва сроков выхода на рынок, значит, не особо точим софт. Заработало — и ладно. А что там с батарейкой или ещё чем будет — это проблемы пользователя. Тут Вы безусловно правы. Сравнивая N900 и Айзер А100, даже в части интерфейса, я откровенно не могу понять чем А100 лучше.

mr_noone
()
Ответ на: комментарий от Boy_from_Jungle

Не факт. Если могут отремонтировать, то так и сделают.

vurdalak ★★★★★
()
Ответ на: И это отчасти. от mr_noone

Кстати, да...

малость подумав...

Лучше флаги -mmmx и далее включать не в строке CFLAGS в таком виде, а в строке USE=«mmx ...», исключение составляет только флаг -mfpmath=sse, который лучше оставить в строке CFLAGS.

mr_noone
()
Ответ на: комментарий от tazhate

Пруф? На всех девайсах вплоть до роутеров и читалок видел пункт, что перепрошивка даже на родную прошивку вручную (а не в СЦ) убивает гарантию.

Девайс от хтц, Украина.

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

неделю ставил?

с нетбучных то недопроцессором.

проверь, да, интересно. Подозреваю, что не больше 10%.

thunderamur
()

OMAP4430 говорите? А ведь это и Samsung Galaxy S II, и Samsung Galaxy Tab 2, и LG Optimus 3D =)

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

Mali будет лучше

Речь не о том, что лучше, а об утверждении «У TI этих исходников никогда и не было.»

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

Пруф? На всех девайсах вплоть до роутеров и читалок видел пункт, что перепрошивка даже на родную прошивку вручную (а не в СЦ) убивает гарантию.

Я пруф. Я рутовал и перешивал миллион раз все свои девайсы. Один раз убил htc desire ей, меняли мамку в итоге по гарантии.
Плюс хтц открыли загрузчик. Единственное, зачем это пишут - чтобы тонны хомяков не орали потом в СЦ, но опять же - чтобы убить телефон перепрошивкой - надо очень круто постараться.

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