2. ПРОЦЕСОРИ
• Процесорите са важна част от
хардуера, която отговаря за
производителността на у-вата.
• Броят на ядрата изглежда е
важен показател за
потребителите в момента.
• Тази презентация ще Ви даде
основа за разбирането на
мултиядрената технология.
3. МИТОВЕ ЗА ПРОЦЕСОРИТЕ
• Двуядрените процесори са
двойно по-мощни от
едноядрените, а
четириядрените са четири
пъти по-мощни
• Двуядрените и
четириядрените процесори
могат да обработват няколко
програми едновременно, а
едноядрените само една
програма
4. МУЛТИЯДРЕНОСТ
• Процесорът се състои от редица
функционални елементи, само един
от които е ядрото. Ядрото отговаря за
обработката на приложенията.
• Мултиядреният процесор съдържа
мовече от едно ядро...обикновено
две или четири, но няма техническо
ограничение за бройката.
• Всяко ядро може да обработва
приложения, независимо от
останалите, но с някои ограничения.
5. ДИЛЕМАТА С МОЩНОСТТА
• Най-лесният начин да подобрим
производителността на процесора е
да увеличим клок-скоростта му (MHz,
GHz)
• Увеличаването на тази скорост
увеличава консумацията на енергия
и топлоотделянето, което е
противопоказно в мобилната
индустрия
• Производителите на чипове са
потърсили други решения да
увеличат производителността и едно
от тези решения е да използват
мултиядрената технология.
6. АРГУМЕНТИ ЗА НЯКОЛКОТО ЯДРА
• Няколкото ядра дават
възможност приложенията да
работят на повече от едно
ядро в един и същи момент
• Няколкото ядра спестяват
енергия, тъй като могат да
работят на по-ниска честота
(потреблението на енергия
нараства екпоненциално с
увеличение на клок-
скоростта)
7. ХАРДУЕРНИ ОГРАНИЧЕНИЯ
• Теоретично двуядрените и
четириядрените процесори би
трябвало да имат съответна
мощност. На практика обаче се
удвоява само броят на ядрата.
• Устройството разполага с една
памет, един графичен процесор,
един интерфейс, едно от всичко
останало.
• Какво се случва ако удвоим само
броя на ядрата?
• Нека използваме един пример…
8. АНАЛОГИЯТА С КАФЕНЕТО Системни
ресурси
• Едно- и мулти- ядрените процесори
могат да бъдат представени чрез Ядро
аналогия с едно квартално кафене.
• Клиентите (програмите) искат кафе
(системни ресурси) и служителите
(ядрата) им го предоставят
• Служителят сипва кафе на всички
клиенти от една машина, която не
може да прави повече от едно кафе
по едно и също време.
Приложение 1
Приложение 2
9. ПРОБЛЕМ С ПРОИЗВОДИТЕЛНОСТТА
• Ако едновременно дойдат
повече клиенти, може да
възникне ситуация, в която
служителят не може да
обслужи клиентите
достатъчно бързо
• В този случай клиентите ще
трябва да изчакат за кафето си
• За да удовлетворим клиентите
има няколко възможности
10. ПО-БЪРЗ СЛУЖИТЕЛ
• Едно от решенията е да
принудим служителя да
работи по-бързо, за да
може да сервира кафето
според нуждите на
клиентите
• Проблемът е, че търчането
между клиентите и кафе-
машината може да изтощи
нашия служител
11. ОЩЕ СЛУЖИТЕЛИ
• Друго решение е да добавим
още служители (или ядра) –
да удвоим или учетворим
броя на служителите
• Аргументът е, че повече
служители ще могат да
обслужват повече клиенти
едновременно, така че нито
един служител да не се
насилва отвъд физическите си
възможности
12. БОРБА ЗА РЕСУРСИ
• Увеличаването на броя на
служителите си има цена. Все
още има само една кафе-
машина и ако служителите
сервират едновременно, някои
от тях ще трябва да изчакат,
докато другите сипват кафе
• При ограничени други ресурси,
добавянето на служители ще
подобри донякъде
положението, но това
подобрение не е линейно.
13. ХАРДУЕР И СОФТУЕР
• Мултиядреността си има
ограничения и от
софтуерна гледна точка
• Какво означава за
приложенията да работят
в мултиядрена среда?
14. МУЛТИЯДРЕНИ ПРИЛОЖЕНИЯ
• Хардуерът и операционните
системи могат да бъдат сравнително
бързо пригодени към
мултиядреността
• Софтуерът, а именно приложенията
са по-сложни за “осъзнаване” на
мултиядреността. Нещата са
взаимосвързани
• За да могат приложенията наистина
да се възползват от
мултиядреността изисква умение и
много работа
15. ОТ ПОСЛЕДОВАТЕЛНОСТ КЪМ
ПАРАЛЕЛНОСТ
• Проблемът с мултиядреното
програмиране (или parallel
processing) е, че нещатапрограмната
логика) се движи последователно
• Хората правят по едно нещо в един и
същи момент. Приложенията се
нуждаят от предишно състояние, за
да се придвижат към следващото.
• Така че понякога е много трудно да
се използва предимството, което
няколкото ядра предлагат.
16. ПРОГРАМИ И ЯДРА
• В момента почти всички приложения
са програмирани без значение от
броя на ядрата
• Тези приложения работят
използвайки само едно от ядрата(в
повечето случаи). Така
мултиядреността няма съществено
отражение върху скоростта на
отделните програми
• Общо казано процесорите с по-
големи клок-скорости обработват
най-бързо отделните приложения
17. ПРИ ИДЕАЛНИ УСЛОВИЯ
• Разбира се има случаи, в които
мултиядреността е важна
• Модерните операционни с-ми за
смартфони поддържат процеси
във фонов режим, които могат
да бъдат обработвани от
второто ядро, когато първото е
заето от по-важна програма
• Някои програми (обработка на
графики, сканиране за вируси и
игри с високи системни
изисквания) могат да
оползотворят отлично няколкото
ядра
18. МУЛТИЯДРЕНО ПРАВИЛО
• Като правило допълнителните ядра
добавят намаляваща възвръщаемост
на производителността, използвайки
правилото на 60-те %
• В четириядрените процесори това
означава, че средно само 22% от
потенциала на четвъртото ядро може
да бъде използван
• Това обяснява защо няма голяма
полза от още увеличаване на броя на
ядрата в смартфоните или
компютрите
19. ПРИМЕР
• Ако оставим настрани останалите
компоненти, можем да изчислим
производителността на процесора,
изполвайки правилото на 60-те %
• Lumia 900 с едноядрен процесор
1400 MHz = 100%x1.4 = 140
• iPhone 4S с двуядрен процесор
800 Mhz = 100%x0.8+60%x0.8 = 128
• Това дава обща представа за
хардуерното представяне (за чипове
от едно поколение)
20. ПРОИЗВОДИТЕЛНОСТ/КАПАЦИТЕТ
• Вместо производителността,
мултиядреността подобрява
капацитета на системата да
извършва работа
• Мултиядрените системи може
да не увеличат скоростта на
приложенията, но са способни
да поддържат едни и същи нива
на производителност при
различни нива на натоварване
• Мултиядрените системи са Две Ферарита по-бързи ли са от
едно Ферари?
способни да извършват повече
работа, но консумират и повече
енергия
21. СРАВНЕНИЕ МЕЖДУ ПРОЦЕСОРИ
• Сравнението между едноядрени,
двуядрени и четириядрени
процесори е валидно само между
подобни процесори. То е
безпредметно, когато сравняваме
различни чипове.
• Само бенчмарк-тестовете и
реалната употреба може да покаже
истинската производителност на
процесора
• Основно правило е, че колкото по
нов е процесорът, толкова по-бързо
работи, без значение от броя на
ядрата. Това е следствие от Закона
на Мур
22. МУЛТИЯДРЕНОСТ В СМАРТФОНИТЕ
• Първото поколение излезе на пазара
през 2010
• Макар и наистина бързи, недостатък
при тях бе, че ако едно от ядрата е
необходимо, то и другото се
включваше автоматично. Така
консумираха повече енергия
• В същото време нямаше достатъчно
програми, които да могат да
оползотворят няколкото ядра.
Софтуерът винаги се движи след
хардуера.
23. МУЛТИЯДРЕНОСТ В СМАРТФОНИТЕ
• Второто поколение
мултиядрени процесори ще е
с оптимизирано ниво на
консумация на енергия
• Програмистите също полека
напредват с оптимизирани
приложения
• Колкото повече мултиядрени
телефони излизат на пазара,
толкова повече приложения,
които да се възползват от тях
ще излизат
24. ПОГЛЕД В БЪДЕЩЕТО
• Мултиядрената технология узрява
бавно в смартфоните. Софтуерът
също полека напредва и през 2013
мултиядреността би трябвало да е
повече от маркетингов трик
• Софтуерът за две ядра се случва
първи, този оползотворяващ
четирите ще отнеме повече време
• Отиването отвъд четирите ядра само
по себе си не прелага нищо
революционно и вероятно
“мултиядрената истерия” на пазара
ще премине с масовото навлизане на
мултиядрените процесори, както в
света на компютрите.