Еволюцията на днешния смартфон

Или как количествените натрупвания водят до качествени изменения

По-нататъшното нарастване на размера на дисплеите вече няма смисъл: смартфоните станаха толкова големи, че както се казва в един стар анекдот, вече идва време за куфарите. Както всички виждаме, размерите на смартфоните започват да граничат с тези на компактните таблети. А като правило последните вече могат и също да "звънят" (а нерядко са и по-евтини) и увеличаването на размера на дисплеите е просто глупаво. Тази забавна ситуация няма да продължи повече от половин до една година, защото след това вече няма и да е забавна.

Резолюцията на екраните? Пределът бе достигнат още преди една година. При нормалните за "умните" телефони диагонали на екрана и прословутата Full HD резолюция са налице 400+ пиксела на инч, което устройва напълно болшинството потребители. Разбира се, може да се направи още по-малко зърното (някои производители през тази година представиха модели с резолюция 2560x1440), но разликата с Full HD ще трябва да се търси със съдействието на микроскоп - за да разберете смисъла на Quad HD при 5"-6", също ще се наложи да се използва този уред.

Може би пък е време да се подобри нещо в камерите? Не би било лошо. Но какво точно не трябва да се прави - това е нарастването на количеството мегапиксели. В края на краищата след като Nokia достигна 41 Mpix, по-нататъшният ръст може да се възприема само като фарс. Никой от производителите не иска да им се присмиват, така че всички, без да се наговарят, са установили резолюцията в пределите от 8 Mpix до 20 Mpix. (Бел. ред.: Ако сме напълно откровени, даже и горната граница предизвиква подигравателни усмивки.)

С процесорите също е сложно. Технологията им на производство се развива сравнително бавно, тяхното усъвършенстване преминава през всички пътища и дивидентите, които носят, са все по-малко. На хоризонта се задава физическа бариера, която при използване на добрия стар силиций, няма как да се премине. При увеличаване на тактовата честота, започвайки от някаква определена стойност, енергопотреблението нараства по неприлично крива линия. На теория отдавна бихме могли да получим например чипове за смартфоните, работещи на 3 GHz, но на практика един такъв процесор би "изсмукал" батерията за не повече от половин час.

Още повече че капацитетът на батериите за единица обем при смартфоните практически също не нараства. Може единствено да се направят батериите по-големи, отчасти за сметка на освобождаване на място вътре в корпуса, но в повечето случаи това ще е за сметка на увеличаване на размерите на самите устройства (да, да, диагоналите на екраните през последните години до голяма степен заради това нарастваха - именно поради това в последно време компактността на смартфоните стои непроменена), както и увеличаването на тяхното тегло.

При смартфоните не може да се каже, че нямат необходимост от нарастване на производителността. Процесорите им, както и преди, силно отстъпват на изчислителната мощност на процесорите на персоналните компютри. А именно същият този Интернет e адаптиран за последните - не трябва да ни учудва фактът, че съвременните тежки уебстраници се отварят на смартфоните не толкова бързо, както би ни се искало.

В отсъствието на ръст при тактовата честота остават само два пътя. Първият - мащабиране на производителността за сметка на използване на все по-голямо количество от ядра. Тук обаче има два проблема: от една страна е необходимо сериозно участие на производителите на софтуер. От друга страна, далеч не всички задачи, особено "стандартните", могат добре да се паралелизират. Така че повече от 8 ядра в близките 5 години едва ли ще видим. Даже и този брой е прекалено голям предвид мултитрединг способностите на настоящия софтуер, който в повечето случаи се възползва от не повече от две ядра.

Вторият път - усъвършенстване на архитектурата и повишаване по този начин на производителността за MHz. Това е най-перспективното направление за развитие, но и то не е толкова лесно. Мощните изчислителни ядра с висока продуктивност са все още доста лакоми, а в действителност не искаме само да увеличим производителността, но и живота на батериите, капацитета на които си спомняме, че не расте.

Компанията ARM, архитектурата на която цари на пазара на мобилни процесори, в крайна сметка стигна до заключението, че най-доброто решение на тази дилема е използването на хетерогенна архитектура big.LITTLE, която едновременно използва "тежки" ядра за изискващите производителност задачи и "леки" ядра за тези задачи и тези моменти, когато енергията е по-добре да се пести.


Еволюцията на днешния смартфон

© PCWorld България, pcworld

Общият принцип на ARM big.LITTLE. Обърнете внимание на графиката - колко стръмна става в най-горната си част

Не трябва да мислим, че с това приказката свършва, след което всички заживяват дълго и щастливо. Работата е в това, че клъстерите на "леките" и "тежките" ядра могат да се използват по-различно. Например първото физическо въплъщение на big.LITTLE – псевдо-осемядреният процесор Samsung Exynos 5 Octa 5410 - работеше по най-простия (но не и оптимален) начин чрез включване и изключване на клъстери на "леките" и "тежките" ядра.

В MediaTek не стояха със скръстени ръце и постъпиха по друг начин. Представеният няколко месеца след чипа на Samsung процесор MT8135 също беше базиран на архитектурата big.LITTLE. Но вместо по проста и неефективна клъстерна миграция работеше на принципа на настоящата хетерогенност (HMP) - в състояние е да използва всички ядра едновременно или всяка една необходима комбинация при текущо натоварване от "леки" и "тежки" ядра.


Еволюцията на днешния смартфон

© PCWorld България, pcworld

Три възможни варианта на реализация на big.LITTLE

Попътно MediaTek разработи CorePilot - пакет от технологии, предназначени за подобряване на баланса на енергопотреблението и производителността в хетерогенните процесори. Компонентите на CorePilot са достатъчно много.

Най-напред трябва да споменем този факт, че заради правилното разпределение на натоварването между ядрата на MediaTek се е наложило да замени модула за планиране на изпълняваните задачи (CFS - Completely Fair Scheduler). Вместо стандартния CFS за повечето Linux ядра, и в цялост Android, компанията използва собствения: HM Scheduler, правилно разпределящ задачите между нееднородните ядра и RT Scheduler, обслужващ тези задачи, за които се изисква висок приоритет на изпълнение в режим на реално време.

На второ място трябва да споменем, че е предвидена технология за изключване на неизползваните ядра - в терминологията на MediaTek тя носи наименованието HotPlug. Както беше отбелязано вече, ядрата могат да бъдат изключвани или преведени в режим на изчакване в произволна комбинация. Това например е удобно в тези случаи, когато едновременно е необходимо да се използва едно или няколко "тежки" ядра под някакво ресурсоемко приложение и едно-две "леки" ядра за фонови задачи. В HMP такова съчетание е напълно възможно, докато при клъстерната миграция ще се наложи да се използва мощно ядро и за фоновите задачи - безсмислено хабене на енергия.



Еволюцията на днешния смартфон

© PCWorld България, pcworld


Съвкупност на технологията MediaTek CorePoint

Разбира се, на трето място има възможност за гъвкаво регулиране честотата в зависимост от текущото натоварване на процесора. За мобилните чипове това е стандарт, но за всеки случай да го припомним.

Освен това на четвърто място MediaTek използва подобрен алгоритъм за регулиране на честотата в зависимост от текущото топлоотделяне (Adaptive Thermal Managment). Принципът с няколко думи е следният: вместо твърдо зададен температурен праг, след достигането на който процесорът влиза в режим на тротлинг (намаляване на тактовата честота) и известно време остава в него, системата определя оптимален температурен коридор, който позволява чипът да балансира на границата на тротлинга и да не се задържа дълго на ниска честота.



Еволюцията на днешния смартфон

© PCWorld България, pcworld


Като цяло, за сметка на оптимизациите за разпределение на натоварването и гъвкавото управление на всички системи на разположение, системата CorePilot позволява да се постигне едновременно и повишаване на производителността, и намаляване на енергопотреблението. По тези показатели спрямо система без CorePilot (чиповете, които използват клъстерна матрица) подобрението съставлява около 20-25%.

Както се вижда, не всяка многоядреност е еднакво полезна, а това определено е нещо, което не трябва да забравяме, когато избираме смартфон.

Twitter icon Facebook icon
Този сайт използва бисквитки (cookies). Ако желаете можете да научите повече тук.