Майк Бэлл, вице-президент корпорации Intel, заявил во время конференции, где бы представлен смартфон Orange San Diego, что операционная система Google Android плохо оптимизирована для многоядерных процессоров. Поводом для такого заявления стали многочисленные вопросы журналистов, выясняющих, как Intel со своим одноядерным Intel Medfield собирается противостоять многоядерным процессорам, интегрированным в популярные SoC (NVIDIA Tegra 3, Qualcomm Snapdragon S4 и другие).
По мнению Бэлла, планировщик потоков в Android никак не адаптируется производителями микросхем для конкретных систем на чипе, что приводит к низкой производительности.
Откровенно говоря, то, как сейчас спроектирована система Android, не позволяет эффективно использовать несколько ядер. В исходных кодах просто нет этих инструментов по тонкому управлению многоядерными процессорами. Эта работа возлагается на производителей чипов и устройств для потребителя, но они предпочитают этой проблемой не заморачиваться.
Если вы посмотрите на рынок, то на нём огромное количество многоядерных смартфонов, но при использовании дополнительного ядра возрастает вероятность утечки ресурсов, а пороговая мощность относительная низкая, поэтому не очень понятно, какую пользу можно получить, переключившись на второе ядро. В своей лаборатории мы провели несколько своих замеров производительности, из которых получили, что второе ядро может работать даже во вред из-за отсутствия планирования потоков.
Менеджер Intel не называет конкретных чипов и версии систем, на которых проводились замеры, но есть веские основания не считать слова Майка актуальными. У Intel есть собственная платформа Medfield Z2460, имеющая в своём составе одно ядро на высокой частоте с поддержкой фирменной технологии HyperThreading. Чип используется в смартфонах Lenovo K800, Orange San Diego, Lava XOLO X900, которые управляются Android 2.3. В этой версии системы Google не проводил никаких оптимизаций системы под многоядерные процессоры, так как первые коммерческие многоядерные чипы вышли несколько позже релиза системы — первые устройства на NVIDIA Tegra 2 вышли вообще с версией Froyo 2.2. Производители выкручивались сборкой ядра с флагами SMP PREEMPT, но сама система оказалась неготова к многоядерности, поэтому слова Майка для большей части 2011 года, конечно, имели бы под собой почву.
Но вот с выпуском Galaxy Nexus ситуация изменилась. Одной из основных фич Android 4.0 ICS стала как раз адекватная поддержка многоядерности. В Intel-же, несмотря на заключённый в 2011 году договор с Google на оптимизацию Android 4.0 под x86-архитектуру, до сих пор не может вывести на рынок устройства с уже предустановленной Ice Cream Sandwich. Это приводит к ситуации, в которой на версии 2.3 Medfield превосходит своих многоядерных конкурентов, а вот на 4.0 уже начинаются сложности. Что касается чисто визуального восприятия работы Lenovo K800, то лично у меня работа Android на чипе Medfield не вызвала восторгов. Он точно так же подтормаживал, как и огромное количество других смартфонов на Gingerbread, хотя, возможно, это инженеры Lenovo несколько перестарались со своей оболочкой.
Возникает вопрос, насколько топ-менеджер Intel прав в отношении Android и не кривит ли он душой, выгораживая несколько припозднившийся Medfield?
Источник: The Inquirer.
Автор: Mairon