Процесори са више језгара: да ли је више увек боље?

Додавање неколико језгара једном процесор нуди значајне предности захваљујући мултитаскинг природи савремених оперативних система. Међутим, за неке сврхе, постоји горња практична граница колико језгара доноси побољшања у односу на цену њиховог додавања.

Напредак технологије за више језгара

ПАЕ-НКС-ССЕ2-ЦПУ-Виндовс
ТобиасД / Пикабаи

Вишејезгарни процесори су доступни у персонални рачунари од раних 2000-их. Дизајн са више језгара бавио се проблемом процесора који су достигли плафон свог физичког ограничења у погледу њихових брзина такта и колико ефикасно се могу хладити и одржавати тачност. Преласком на додатна језгра на једном процесорском чипу, произвођачи су избегли проблеме са брзинама такта тако што су ефективно умножавали количину података којом би могли да обрађују Процесори.

Када су првобитно објављени, произвођачи су нудили само два језгра у једном ЦПУ-у, али сада постоје опције за четири, шест, па чак и 10 или више. Поред додавања језгара, симултане вишенитне технологије — као што је Интелов Хипер-Тхреадинг — могу удвостручити виртуелна језгра које Оперативни систем види.

Процеси и нити

А процес је специфичан задатак, попут програма, који се изводи на рачунару. Процес се састоји од једне или више нити.

А конац је једноставно један ток података из програма који пролази кроз процесор на рачунару. Свака апликација генерише сопствену једну или више нити у зависности од тога како ради. Без обављања више задатака, процесор са једним језгром може да обрађује само једну нит истовремено, тако да систем брзо прелази између нити да би обрадио податке на наизглед истовремени начин.

Предност постојања више језгара је у томе што систем може истовремено да рукује са више од једне нити. Свако језгро може да обрађује посебан ток података. Ова архитектура у великој мери повећава перформансе система који покреће истовремене апликације. Пошто сервери имају тенденцију да покрећу многе истовремене апликације у датом тренутку, технологија је првобитно развијена за корпоративни клијенти — али како су лични рачунари постајали сложенији и повећавали број задатака који обављају више задатака, и они су имали користи од тога додатна језгра.

Сваким процесом, међутим, управља примарна нит која може заузети само једно језгро. Дакле, релативна брзина програма као што је игра или видео рендерер је тешко ограничена на способност језгра које прима примарна нит. Примарна нит апсолутно може делегирати секундарне нити другим језграма — али игра не постаје двоструко бржа када удвостручите језгра. Према томе, није необично да игра у потпуности максимизира једно језгро (примарна нит), али види само делимично коришћење других језгара за секундарне нити. Никакво удвостручење језгра не заобилази чињеницу да је примарно језгро ограничавач брзине за ваше апликација, а апликације које су осетљиве на ову архитектуру радиће боље од апликација које нису.

Зависност од софтвера

Иако концепт процесора са више језгара звучи привлачно, постоји велико упозорење за ову технологију. Да бисте уживали у правим предностима више процесора, софтвер који ради на рачунару мора бити написан тако да подржава вишенитност. Без софтвера који подржава такву функцију, нити ће се првенствено одвијати кроз једно језгро, чиме се смањује укупна ефикасност рачунара. На крају крајева, ако може да ради само на једном језгру у четворојезгарном процесору, можда ће бити брже покренути га на процесору са два језгра са већим основним брзинама такта.

Сви главни актуелни оперативни системи подржавају могућност вишенитног рада. Али мултитхреадинг такође мора бити уписан у апликативни софтвер. Подршка за мултитхреадинг у потрошачком софтверу се побољшала током година, али за многе је једноставна програма, подршка за вишенитност још увек није имплементирана због сложености софтвера градити. На пример, програм за пошту или веб претраживач вероватно неће имати велике користи од вишенитног рада као што би то чинили програми за уређивање графике или видеа, где рачунар обрађује сложене прорачуне.

Добар пример за објашњење ове тенденције је поглед на типичну компјутерску игру. Већина игара захтева неки облик машине за рендеровање да прикаже шта се дешава у игри. Поред тога, нека врста вештачке интелигенције контролише догађаје и ликове у игри. Са једним језгром, оба задатка се извршавају пребацивањем између њих. Овај приступ није ефикасан. Када би систем имао више процесора, рендеровање и АИ би могли да раде на посебном језгру - идеална ситуација за процесор са више језгара.

Да ли је 8 > 4 > 2?

Прелазак преко два језгра представља мешовите предности, с обзиром на то да одговор за сваког купца рачунара зависи од софтвера који он или она обично користи. На пример, многе класичне игре и даље нуде малу разлику у перформансама између два и четири језгра. Чак и модерне игре — од којих неке наводно захтевају или подржавају осам језгара — можда неће радити боље од машине са шест језгара са већа брзина основног такта, с обзиром да ефикасност примарне нити управља ефикасношћу вишенитне перформансе.

С друге стране, програм за кодирање видео записа који транскодира видео ће вероватно имати огромне предности као индивидуално приказивање оквира може бити прослеђено различитим језграма, а затим поређано у један ток помоћу софтвер. Стога ће имати осам језгара још корисније него имати четири. У суштини, примарној нити нису потребни релативно богати ресурси; уместо тога, може да преда напоран рад на ћерке нити које максимизирају језгра процесора.

Брзине сата

Менаџер задатака који приказује искоришћеност процесора

Уопштено говорећи, већа брзина такта ће значити бржи процесор. Брзине такта постају нејасније када узмете у обзир брзине у односу на више језгара јер процесори крче више података нити захваљујући додатним језграма, али свако од тих језгара ће радити на нижим брзинама због термичких ограничења.

На пример, процесор са два језгра може да подржава основне брзине такта од 3,5 ГХз за сваки процесор, док процесор са четири језгра може ради само на 3,0 ГХз. Само гледајући једно језгро на сваком од њих, процесор са два језгра је 14 процената бржи него на са четири језгра. Дакле, ако имате програм који је само једнонитни, процесор са два језгра је заправо ефикаснији. А опет, ако ваш софтвер може да користи сва четири процесора, онда ће четворојезгарни процесор заправо бити око 70 процената бржи од тог процесора са два језгра.

Закључци

Већином је боље имати процесор са већим бројем језгара софтвер а типични случајеви употребе то подржавају. У већини случајева, процесор са два или четири језгра биће више него довољна снага за основног корисника рачунара. Већина потрошача неће видети никакве опипљиве користи од преласка преко четири процесорска језгра јер тако мало неспецијализованог софтвера то користи. Најбољи случај употребе процесора са великим бројем језгара односи се на машине које обављају сложене задатке као што су уређивање видео записа на десктопу, неки облици врхунских игара или компликовани научни и математички програми.

Погледајте наша размишљања о Колико брз рачунар ми треба? да бисте добили бољу представу о томе који тип процесора најбоље одговара вашим рачунарским потребама.