Игры на андроид 4 ядра

Чем восемь ядер процессора смартфона лучше четырех?

Историк и программист. Соискатель ученой степени кандидата исторических наук. Увлечен высокими технологиями и развитием мобильной индустрии. Ведь это исторический процесс, который происходит на наших глазах с неимоверной скоростью. Даже компьютерам не удалось так же быстро охватить широкие массы, как смартфонам. Еще несколько лет назад умный телефон был огромной редкостью, а уже сегодня он есть почти у каждого. И об этом технологическом чуде хочется говорить и говорить, ловя каждый миг этой удивительной посткомпьютерной эпохи.

В чем различия между четырехъядерными и восьмиядерными процессорами смартфонов? Объяснение достаточно простое. В восьмиядерных чипах в два раза больше процессорных ядер, чем в четырехъядерных. На первый взгляд восьмиядерный процессор представляется вдвое более мощным, не так ли? На самом деле ничего подобного не происходит. Чтобы понять, почему восьмиядерность процессора не удваивает производительность смартфона вдвое, потребуются некоторые пояснения. Будущее в сфере процессоров смартфонов уже наступило. Восьмиядерные процессоры, о которых совсем недавно можно было только мечтать, получают все большее распространение. Но, оказывается, их задача состоит не в том, чтобы повысить производительность устройства.

Эти пояснения были опубликованы Йоном Манди (Jon Mundy) в статье «Octa-core vs Quad-core: Does it make a difference?» на страницах ресурса Trusted Reviews.

Четырех- и восьмиядерные процессоры. Производительность

Сами термины «восьмиядерный» и « четырехъядерный» отражают число ядер центрального процессора.

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

В четырехъядерном процессоре все ядра способны работать одновременно, обеспечивая быструю и гибкую многозадачность, делая более ровными 3D-игры и повышая скорость работы камеры, а также осуществляя другие задачи.

Современные восьмиядерные чипы, в свою очередь, просто состоят из двух четырехъядерных процессоров, которые распределяют между собой различные задачи в зависимости от их типа. Чаще всего в восьмиядерном чипе присутствует набор из четырех ядер с более низкой тактовой частотой, чем во втором наборе. Когда требуется выполнить сложную задачу, за нее, разумеется, берется более быстрый процессор.

Более точным термином, чем «восьмиядерный» стал бы «двойной четырехъядерный». Но это звучит не так красиво и не подходит для маркетинговых задач. Поэтому эти процессоры называют восьмиядерными.

Зачем нужны два набора процессорных ядер?

В чем причина сочетания двух наборов процессорных ядер, передающих задачи один другому, в одном устройстве? Для обеспечения энергоэффективности.

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

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

Но HD-видео, игры и работа с фотографиями такими задачами являются. Поэтому восьмиядерные процессоры достаточно практичны, хотя элегантным это решение назвать трудно. Более слабый процессор обрабатывает менее ресурсоемкие задачи. Более мощный — более ресурсоемкие. В итоге сокращается общее энергопотребление по сравнению с той ситуацией, когда обработкой всех задач занимался бы только процессор с высокой тактовой частотой. Таким образом, сдвоенный процессор прежде всего решает задачу повышения энергоэффективности, а не производительности.

Технологические особенности

Все современные восьмиядерные процессоры базируются на архитектуре ARM, так называемой big.LITTLE.

Эта восьмиядерная архитектура big.LITTLE была анонсирована в октябре 2011 года и позволила четырем низкопроизводительным ядрам Cortex-A7 работать совместно с четырьмя высокопроизводительными ядрами Cortex-A15. ARM с тех пор ежегодно повторяла этот подход, предлагая более способные чипы для обоих наборов процессорных ядер восьмиядерного чипа.

Некоторые из основных производителей чипов для мобильных устройств сосредоточили свои усилия на этом образце «восьмиядерности» big.LITTLE. Одним из первых и наиболее примечательных стал собственный чип компании Samsung, известный Exynos. Его восьмиядерная модель использовалась начиная с Samsung Galaxy S4, по крайней мере в некоторых версиях устройств компании.

Сравнительно недавно Qualcomm также начала применение big.LITTLE в своих восьмиядерных чипах Snapdragon 810 CPU. Именно на этом процессоре базируются такие известные новинки рынка смартфонов, как HTC One M9 и G Flex 2, ставший большим достижением компании LG.

В начале 2015 года NVIDIA представила Tegra X1, новый суперпроизводительный мобильный процессор, который компания предназначает для автомобильных компьютеров. Основной функцией X1 является его вызываемый консольно («console-challenging») графический процессор, который также основывается на архитектуре big.LITTLE. То есть он также станет восьмиядерным.

Велика ли разница для обычного пользователя?

Игры на андроид 4 ядра 4-ядерном аппарате

Велика ли разница между четырех- и восьмиядерным процессором смартфона для обычного пользователя? Нет, на самом деле она очень мала, считает Йон Манди.

Термин «восьмиядерный» вносит некоторую неясность, но на самом деле он означает дублирование четырехъядерных процессоров. В итоге получаются два работающих независимо четырехъядерных набора, объединенных одним чипом для повышения энергоэффективности.

Нужен ли восьмиядерный процессор в каждом современном смартфоне. Такой необходимости нет, полагает Йон Манди и приводит пример Apple, обеспечивающих достойную энергоэффективность своих iPhone при всего двухъядерном процессоре.

Таким образом, восьмиядерная архитектура ARM big.LITTLE является одним из возможных решений одной из самых важных задач, касающихся смартфонов — времени работы от одной зарядки батареи. По мнению Йона Манди, как только найдется другое решение этой задачи, так и прекратится тренд установки в одном чипе двух четырехъядерных наборов, и подобные решения выйдут из моды .

Знаете ли вы другие преимущества восьмиядерных процессоров смартфонов?

Чем восемь ядер процессора смартфона лучше четырех? by Олег Довбня

Зачем смартфону четыре ядра?

В сентябре минувшего года я разговорился с главным инженером одной из крупнейших компаний, занимающихся разработкой и производством CPU с архитектурой ARM. Во время доклада на конференции он показал слайд, из которого можно было сделать вывод о скором выходе 4-ядерных моделей. Я уточнил: планируется ли использовать их в смартфонах? «Нет», - уверенно ответил инженер, - «Четыре ядра предназначены только для планшетных ПК. В смартфонах они мало того, что бесполезны, так еще и просто вредны, сокращая и без того не рекордное время автономной работы».

Те, кто читает мой блог хотя бы пару месяцев, знают – с какой нежностью я отношусь к приложениям, использующим все возможности многоядерных процессоров. Проблема в том, что на смартфонах и планшетах таковых не наблюдается. Ну вот вообще. Единственная сфера реального применения двухъядерных процессоров – съемка видео в FullHD. Правда, лично мне кажется, что и 720p в данном случае более, чем достаточно, особенно если учитывать возможности матрицы и оптики. Но знаю несколько человек, считающих FullHD в смартфоне необходимостью, и мнение их уважаю.

А вот за пределами съемок домашнего кино два ядра простаивают. Вполне заметное, казалось бы, ускорение работы двухъядерных моделей легко объясняется рабочей частотой процессора, объемом кэша и ОЗУ. И еще – возможностями графического ядра. Мой тезис подтверждается, к примеру, очень шустрой работой «тяжелых» игр, вроде Need For Speed на принципиально одноядерных смартфонах, использующих платформу Windows Phone 7. Да и на Nokia N9 с MeeGo на борту все просто чудо как быстро. А еще в конце прошлого года одна компания выпустила флагманский продукт на Android с одноядерным процессором, и никто в Сети не смог обвинить его в неторопливости…

Впрочем, с двумя ядрами я согласен примириться – пригодятся для съемки видео и долгого вдумчивого осваивания разработчиками ПО. Параллельно можно и нужно совершенствовать технологии энергопотребления и техпроцессы, чтобы смартфон под нагрузкой работал не условный рабочий день, а хотя бы сутки. Казалось, что к этому все и идет. Но нет! На Mobile World Congress один за другим начали анонсировать смартфоны с четырехъядерными CPU! Разумеется, под громкие мантры о колоссальном росте производительности во благо пользователя! И еще обещают, что уровень энергопотребления останется на уровне двухъядерных решений… Ребята, ну вы чего, а? Даже в серьезных ноутбуках четыре полноценных ядра до сих пор редкость, потому что нечем их особенно занимать в мобильных компьютерах без ущерба для времени автономной работы и общего комфорта (нагрев нижней части корпуса, шум системы охлаждения и т.д.). Так чем же смартфоны провинились? На планшете я могу представить графический редактор уровня Adobe Photoshop с тысячами сложнейших эффектов, требующих немалых вычислительных мощностей. Но на смартфоне-то что делать? Рипы голливудских блокбастеров с разрешением 4К смотреть, искоса поглядывая на окружающих в надежде, что они заметят твою нечеловеческую продвинутость? Правда, до конца удастся досмотреть далеко не каждый фильм по причине кончины батарейки, но вдруг успеют оценить?

А между тем Intel Atom Z2460. который станет сердцем первых «атомофонов», превосходно обходится одним ядром. Некоторые ограничения этого блога не позволяют мне заняться сравнением его производительности с конкурентами, но вам-то никто не запретил воспользоваться поисковиком :). и узнать счет в пользуу Z2460.

Когда придумываешь что-то новое, очень полезно задаваться вопросом «Зачем?», даже когда идея кажется безупречной и прекрасной. И если сам не можешь убедительно на него ответить, значит идея еще нуждается в улучшении.

Если задать этот вопрос по поводу четырех ядер в смартфоне, ответы получатся уровня «потому что круто» и «да пусть будут». А еще «мы это сможем продать».

Не убеждает, знаете ли.

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

Константин Иванов

Уже с десяток лет в наших компьютерах стоят многоядерные процессоры, и в настоящее время это норма. Вначале ядер стало два, потом четыре, а сегодня компании вроде Intel и AMD предлагают high-end процессоры для настольных компьютеров с 6 или 8 ядрами. Та же история и с процессорами в смартфонах. Двухъядерные энергоэффективные процессоры от ARM появились около 5 лет назад, а вслед за ними и 4, 6 и 8-ядерные процессоры на архитектуре ARM. Между тем, есть разница между 6- и 8-ядерными настольными процессорами от Intel и AMD и 6- и 8-ядерными процессорами, основанными на архитектуре ARM. У большинства относящихся ко второй категории процессоров с больше чем 4 ядрами используются как минимум две различных конструкции ядра.

С некоторыми исключениями, в целом, восьмиядерный ARM процессор использует систему, известную как Heterogeneous Multi-Processing (HMP), в которой «гетерогенность» означает неравноценность ядер. В современном 64-битном процессоре это значит, что кластер с ядрами Cortex-A57 или Cortex-A72 используется в сочетании с кластером ядер Cortex-A53. A72 – высокопроизводительное ядро, в то время как у A53 большая энергоэффективность. Такое сочетание известно как big.LITTLE, поскольку здесь «большие» ядра (Cortex-A72) объединены с «маленькими» Cortex-A53. Это сильно отличается от 6- и 8-ядерных процессоров для ПК от Intel и AMD, поскольку проблема энергопотребления в этом случае не так актуальна, как на мобильном устройстве.

Когда многоядерные процессоры впервые попали на ПК, возникло много вопросов касательно преимуществ двухъядерного процессора перед одноядерным. Двухъядерный 1.6ГГц процессор «лучше» одноядерного 3.2ГГц процессора или нет? А что Windows? Сможет ли она максимально реализовать потенциал двухъядерного процессора? А игры? Они правда идут лучше с двухъядерным процессором? И надо ли при написании приложений делать это особым образом, чтобы они могли использовать дополнительные ядра? И так далее.

О мультипроцессорной обработке

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

Компьютерам отлично удается решение одной задачи. Вам нужно узнать первые сто миллионов простых чисел? Не вопрос, компьютер будет вычислять их целый день, снова и снова. Но тогда, когда вам нужно, чтобы он совершал два действия, например, выявлял те же простые числа с одновременно запущенным графическим интерфейсом, чтобы вы могли одновременно заниматься веб-браузингом, это оказывается несколько сложнее.

Не углубляясь в частности, существует технология, известная как вытесняющая многозадачность, которая позволяет разделять доступное процессорное время между несколькими задачами. «Кусочек» процессорного времени отводится одной задаче, «кусочек» другой и так далее. В основе операционных систем, таких как Linux, Windows, OS X и Android, лежит та часть технологии, что известна как планировщик и определяет, какому процессу достанется следующий «кусочек» процессорного времени.

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

Когда ядер больше одного, планировщик может отвести для одного процесса кусочек времени процессору 0, в то время как другой процесс получает кусочек времени процессора 1. Так планировщик и двухъядерный процессор позволяют двум задачам выполняться одновременно. Чем больше ядер, тем больше процессов могут выполняться одновременно.

Вы уже заметили, что планировщику хорошо удается разделять ресурсы процессора между различными задачами вроде того же вычисления простых чисел, запуска рабочего стола, использования браузера. Однако один процесс, такой как вычисление простых чисел, может быть разделен между несколькими ядрами. Или нет?

Некоторые задачи последовательны сами по себе. Чтобы испечь пирог, вам нужно разбить яйца, добавить муку, замесить тесто и так далее. Нельзя поставить пирог в духовку, пока не готово тесто. Так что даже если у вас на кухне два повара, сэкономить время на одной из задач не выйдет. Есть нерушимый порядок и последовательность действий. Можно решать несколько задач сразу и поручить одному повару пирог, а другому нарезку салата, но задачи с предопределенным порядком действий не выиграют ни от двухъядерного, ни даже от 12-ядерного процессора.

Не все задачи таковы, как описано выше. Многие операции, которые выполняет компьютер, можно разделить на несколько самостоятельных задач. Чтобы это произошло, основной процесс должен создать другой процесс и отдать ему на откуп часть работы. К примеру, если, используя алгоритм для вычисления простых чисел, вы не используете предыдущие результаты, не пользуетесь Решетом Эратосфена, можно разделить работу на две части. Один процесс вычисляет первые 50 млн чисел и второй – вторые 50 млн. Четырехъядерный процессор позволяет поделить работу на 4 части, и так далее.

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

Итак, мы почти добрались до сути, и прежде чем перейти к Android, нужно еще одно. От того, как написана ОС, зависит то, что некоторые выполняемые программы могут быть изначально многопоточными. Часто отдельные части ОС сами по себе представляют собой независимые задачи, и когда ваша программа осуществляет ввод и вывод информации или выводит что-то на экран, это может быть отдельным процессом в системе. Использование того, что называется non-blocking calls может внести многопоточность в программу, не создавая потоков специально.

Это важный аспект для Android. Одна из задач системного уровня в архитектуре Android – SurfaceFlinger. Это основа процесса вывода графической информации на дисплей в Android. Это отдельная задача, которой должно быть выделено процессорное время. Что означает, что определенные графические операции для выполнения предполагают запуск нового процесса.

Из-за процессов вроде SurfaceFlinger Android выигрывает от многоядерных процессоров без нужды в специальных многопоточных по сути приложениях. И поскольку множество вещей происходит в фоне, вроде синхронизации и виджетов, Android выигрывает от многоядерности и как единое целое. Эта ОС ожидаемо обладает способностью создавать многопоточные приложения. Чтобы узнать больше, посмотрите в раздел Процессы и Потоки в документации Android. Есть также многопоточные примеры от Google, а также имеется интересная статья от Qualcomm о программировании Android приложений для многоядерных процессоров .

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

Также может возникнуть вопрос относительно разницы между 4- и 8-ядерным процессором. В ПК или серверах восьмиядерные процессоры построены так, что чип состоит из одинаковых ядер. Для большинства восьмиядерных процессоров с архитектурой ARM существуют высокопроизводительные и энергоэффективные варианты ядер. И смысл в том, что более энергоэффективные ядра служат для выполнения более второстепенных задач, а высокопроизводительные – для работы в тяжелой весовой категории. Однако, как и в настольной версии, эти ядра могут использоваться одновременно.

Основное, что здесь стоит запомнить, это то, что восьмиядерный процессор big.LITTLE обладает восемью ядрами из соображений энергоэффективности, а не производительности.

Тестирование

В Android возможно получить сведения о том, сколько ядер система использовала в процессоре. Для подкованных, это можно посмотреть в файле /proc/stat. Был создан инструмент, который берет информацию об использовании ядер в Android, пока запущено приложение. Чтобы повысить его эффективность и уменьшить падение производительности, сведения собираются, только когда приложение активно. Анализ данных производится офлайн.

Используя этот инструмент, у которого пока нет названия, для теста запускали серии приложений разного типа (игры, веб-браузинг и т.п.) на телефоне с четырехъядерным процессором Qualcomm Snapdragon 801, а затем на телефоне с восьмиядерным Qualcomm Snapdragon 615. При сопоставлении данных получились графики использования процессора. Начнем с простого примера. Вот график работы ядер Snapdragon 801 при использовании браузера Chrome:

График показывает, сколько ядер использовали Android и браузер. Он не демонстрирует, насколько было задействовано ядро, только то, использовалось ли оно в принципе. Если бы Chrome был однопоточным, можно было бы ожидать, что задействуются одно или два ядра, может быть, третье или четвертое по случаю. Но мы этого не видим. Наоборот, задействованы четыре ядра, и только временами количество используемых ядер падает до 2. В тесте с браузингом не читались загруженные страницы, это не повлияло бы на использование процессора. Страницы просто прогружались, и можно было переходить к новым.

Вот график, который показывает, насколько задействовалось каждое ядро. Это усредненный график (в реальном путаницу вносит огромное количество линий). Это значит, что по меньшей мере, показаны пики использования. К примеру, пик на этом графике превышает 90%, однако изначальные данные показывали, что некоторые ядра достигали 100% много раз. Тем не менее, здесь хорошо видно, что происходило.

А что у нас с восьмиядерным процессором? Демонстрирует ли он ту же самую схему? Нет, как видно на графике ниже. Постоянно используется семь ядер, на пиках доходит до 8, иногда опускается до 6 и 4.

Также и средний показатель использования каждого ядра демонстрирует, что планировщик вел себя иначе, поскольку Snapdragon 615 – процессор big.LITTLE.

Можно видеть, что два или три ядра трудятся больше других, но так или иначе задействованы все ядра. Мы видим, как архитектура big.LITTLE может передавать потоки от ядра к ядру в зависимости от загруженности. И не забываем, что смысл дополнительных ядер – это энергоэффективность, а не производительность.

Мы можем спокойно говорить о том, что использование «андроидом» всего одного ядра – это миф. Это было ожидаемо с учетом того, что Chrome, как и Android, был разработан многопоточным, как и для настольных компьютеров.

Другие приложения

Итак, это был разработанный многопоточным Chrome, а что с другими приложениями? Вот, что получилось вкратце

Gmail – на 4-ядерном телефоне получились равные доли использования 2 и 4 ядер. Однако среднее использование ядра не поднималось выше 50% — ожидаемо для относительно легкого приложения. Восьмиядерный процессор давал скачки от 4 к 8 ядрам, но меньшее среднее использование ядра – менее 35%.

YouTube – на 4-ядерном процессоре использовались только 2 ядра, в среднем менее 50% загрузки. На 8-ядерном в основном 4 ядра, временами вырастало до 6 и падало до 3. Загрузка ядер в среднем была всего 30%. Интересно, что планировщик предпочитал большие ядра, а маленькие почти не использовал.

Riptide GP2 – 4 ядра – процессор Qualcomm большую часть времени использовал два ядра, а остальные два – очень мало. А в 8-ядерном варианте последовательно использовались 6-7 ядер, но основную работу выполняли только три.

Templerun 2 – эта игра – более яркий пример проблемы однопоточности, чем другие приложения в тесте. В 8-ядерном варианте задействовались 4-5 ядер последовательно с пиками до 7. И только одно ядро выполняло тяжелую работу. На телефоне с 4-ядерным Qualcomm Snapdragon 801 два ядра делили нагрузку примерно поровну, а двум другим доставалось очень мало. На телефоне с 4-ядерным процессором от MediaTek нагрузка распределялась между всеми четырьмя ядрами. Это показывает, насколько разные планировщики и разные ядра разительно меняют то, как используется процессор.

Вот выборка графиков для наглядности. График бездействия 8-ядерной системы добавлен в качестве отправной точки.

Восьмиядерный аппарат, активный экран, пользователь не совершает никаких действий:

YouTube, запущенный на 4-ядерном аппарате:

YouTube, запущенный на 8-ядерном аппарате:

TempleRun2, запущенный на 4-ядерном аппарате:

TempleRun2, запущенный на 4-ядерном аппарате с процессором MediaTek:

Игры на андроид 4 ядра ядро

Gmail, запущенный на 4-ядерном аппарате:

Gmail, запущенный на 8-ядерном аппарате:

Riptide GP2, запущенный на 4-ядерном аппарате:

Riptide GP2, запущенный на 8-ядерном аппарате:

Интересный результат получился в AnTuTu на 8-ядерном процессоре.

Как видите, последняя часть теста полностью загружает все ядра. Понятно, что бенчмарк искусственно создает высокую нагрузку, и поскольку все ядра работают на полную, чипсеты с большим количеством ядер выигрывают. С обычными приложениями такого не наблюдалось. Бенчмарки искусственно раздувают преимущество восьмиядерных аппаратов в производительности (больше, чем в энергоэффективности).

Почему легкие приложения используют 8 ядер?

Если вы посмотрите на приложения вроде Gmail, вы заметите интересный феномен. На 4-ядерном аппарате использование ядер поровну распределено между двумя и четырьмя ядрами, а на 8-ядерном – между четырьмя и восемью. Как Gmail может работать на 2 – 4 ядрах на 4-ядерном телефоне, а на 8-ядерном требовать как минимум четырех ядер? Бессмыслица какая-то.

Все дело снова в том, что ядра в телефонах с big.LITTLE неравноценны. В реальности мы видим, что планировщик использует ядра LITTLE, а когда нагрузка повышается, в дело вступают их собратья big. После некоторого времени совместной работы ядра LITTLE отправляются отдыхать. Когда нагрузка снижается, все происходит наоборот. Конечно, все это случается очень быстро, тысячи раз в секунду. Посмотрите на график, где сравнивается использование ядер big и LITTLE в Epic Citadel.

Посмотрите, вначале используются ядра big, а ядра LITTLE неактивны. Затем, около отметки 12 секунд, ядра big начинают использоваться меньше, и просыпаются ядра LITTLE. На 20 секундах big-ядра увеличивают активность снова, и LITTLE снижают ее почти до нуля. Это видно и на отметках 30, 45 и 52 секунды. В этих точках число использованных ядер колеблется. К примеру, в первые 10 с используются только 3 или 4 ядра (это ядра big), и на 12 с это число доходит до 6, затем снова падает до 4 и т.д. Так работает big.LITTLE. Этот процессор построен не так, как процессор для ПК. Дополнительные ядра позволяют планировщику выбирать для разных действий правильные ядра.

Все тесты, которые проводились, показали, что не нашлось ни одного реального приложения, которое использовало бы все 8 ядер на сто процентов. Так и должно было быть.

Подводим итоги

Прежде всего, подчеркнем, что эти тесты не отражают производительности телефонов, а лишь показывают, задействуют ли приложения Android несколько ядер. Не раскрывается преимуществ или недостатков многоядерности или чипсета big.LITTLE, как не сравнивается и работа частей приложения на двух ядрах при их использовании на 25% с использованием одного ядра на 50%, и так далее.

Затем, тесты еще не проводились для схемы Cortex-A53/Cortex-A57 или Cortex-A53/Cortex-A72. У Qualcomm Snapdragon 615 4-ядерный 1.7 ГГц ARM Cortex A53 кластер и четырехъядерный кластер 1.0 ГГц A53.

Интервал сканирования в этой статистике равен примерно трети секунды, т. е. около 330 миллисекунд. Если ядро сигнализирует об использовании на 25% в эти 300 миллисекунд и второе ядро – о том же самом, график покажет, что оба ядра используются на 25% одновременно, при этом одно ядро может задействоваться на 25% в течение 150 миллисекунд, то же и со вторым. Это означает, что ядра использовались последовательно, а не единовременно. В настоящее время меньшего интервала тест не предполагает.

При всем при этом, Android приложения очевидно способны использовать преимущества многоядерных процессоров и процессоры big.LITTLE позволяют планировщику выбрать наилучшую комбинацию ядер для текущей задачи. Поэтому если вы по-прежнему слышите от людей «Но смартфону не нужны 8 ядер!», вам остается только развести руками в отчаянии. Ничего-то эти люди не понимают.

Теги: 

Рекомендуем также прочитать

Игры, похожие на Diablo III Информация
Anger Of Stick 4 на Андроид
Dog hotel: My boarding kennel Описание игры Dog hotel: My boarding kennel (Собачий отель: Моя гостиница для собак) :