Cât de puternic este un procesor?

imaginea utilizatorului Serafim

A fost o vreme în care întrebarea de bază era „câți megaherți are”. Acum, această întrebare nu mai prea are sens. De ce? Să ne gândim cam așa. Frecvența unui procesor este cam ca și turația unui motor. Este importantă într-o măsură oarecare dar nu este cea care dă puterea unui motor sau viteza maximă a unei mașini. Sunt multe alte lucruri care se iau în calcul.

De exemplu, numărul de cilindri. În cazul procesoarelor de calculator, sau a microprocesoarelor, asta se traduce prin numărul de core-uri. Un procesor dual-core la 1GHz ar putea fi considerat aproape ca un procesor single-core la 2GHz. Și spun „aproape” pentru că nu este chiar atât de simplă conversia. În cazul în care procesorul are de procesat un singur lucru cum ar fi un calcul liniar foarte complicat și neparalelizabil, două sau mai multe core-uri nu-l ajută. Legea lui Amdahl descrie mult mai pe larg acest lucru. În schimb dacă face mai multe lucruri odată, dacă lucrează pe mai multe thread-uri sau mai multe procese sau multi-tasking, mai multe core-uri fac o diferență mai mare decât pare.

Gâdiți-vă că aveți de rezolvat o problemă la matematică, de citit un roman și de făcut o traducere. Dar nu le faceți complet secvențial ci la fiecare minut puneți deoparte foaia pe care faceți rezolvarea, și luați romanul pentru a continua să citiți, apoi, după încă un minut lăsați jos cartea și vă apucați de traducere și din nou de rezolvare. Pusul jos și apucatul a ceea ce ai nevoie pentru următoarea acțiune se numește schimbare de context. În mod normal procesoarele fac asta foarte repede, dar când o faci de câteva milioane de ori pe secundă, se adună niște timpi care ar putea fi cheltuiți mai eficient. Dacă în loc să faceți 3 lucruri odată ar fi 3 oameni care s-ar ocupa de asta, totul s-ar termina mult mai repede și cu mult mai putin stres, nu? Intervin multe probleme și aici pentru că dacă lucrează la părți diferite dintr-o aceeași problemă trebuie să aibă un sistem foarte bine pus la punct de comunicare. Asta însă ține de lucrul în echipă. La fel este și la tehnologiile multi-core.

Contează numărul de tranzistori pe centimetru pătrat din fiecare procesor și din fiecare core. Legea lui Moore spune că acest număr se dublează la fiecare 18 luni. Se pare că ajungem foarte aproape de punctul în care nu se mai poate dubla numărul de tranzistori pe centimetru pătrat pentru că se apropie tranzistorii de dimensiuni moleculare. Probabil dezvoltarea microprocesoarelor va fi guvernată de noi legi pe viitor. Dar ideea este că un număr mai mare de tranzistori poate face mai multe lucruri într-o singură bătaie a ceasului. La canotaj, vom vedea oare viteze mai mari și anduranța mai bună la 2+1, la 4+1 sau la 8+1? Contează și ritmul pe care-l impune acel +1 dar contează și câte vâsle intră în apă la fiecare bătaie. Dacă s-ar putea și nu s-ar rupe schiful și ar putea coordona eficient o echipă mare, probabil ar încerca unii și 24+1 sau mai mult.

Nu sunt astea singurele lucruri care influențează puterea procesorului. La un motor, contează dacă este într-un singur timp, în doi timpi sau în patru timpi. Și la procesoare contează dacă lucrează în tehnologie RISC sau CISC. Multă vreme design-ul CISC a fost considerat mai performant, motiv pentru care toată arhitectura x86 este făcută pe CISC. Relativ recent s-a ajuns la concluzia că atâta vreme cât se scrie și se compilează cod specific pentru arhitecturi RISC, performanța este mult superioară pe acestea. Din acest motiv cam toate telefoanele mobile și tabletele au procesoare RISC în ziua de azi. De prisos să spunem că un telefon mobil cât de cât performant, are procesor mai puternic decât un calculator obișnuit de acum 7-8 ani.

Contează de asemenea dacă are un coprocesor matematic sau nu. Cam toate procesoarele în ziua de azi au coprocesor matematic dar merită totuși menționat. Dacă rezolvați probleme complexe probabil vă prinde bine dacă aveți un calculator de birou alături pentru înmunlțiri și împărțiri cu multe cifre. Le puteți face și fără el dar durează mai mult, nu? Dacă problema pe care o rezolvați este una de geometrie prinde bine dacă aveți toate ustensilele necesare. Liniare, raportoare, compasuri, echere și toate celelalte. Evident, dacă nu le aveți puteți improviza și tot veți face desenul dar durează ceva mai mult timp.

Turația unui motor nu poate fi crescută la infinit din cauza limitărilor mecanice. Nici frecvența microprocesoarelor nu poate crește la infinit. Legile fizicii arată că la o frecvența de aproximativ 4GHz ceea ce în punctul 0 este la finalul ciclului la 7.5 cm distanță este abia la început. Sau mai exact, la 3.75 cm distanță ar fi în antifază. Motiv pentru care nici nu s-au construit procesoare la mai mult de 3.6GHz iar ulterior limita a fost coborâtă și mai mult din cauza problemelor de design încât am revenit la procesoare de maxim 2.6GHz, îmbunătățind alte calități ale motorului/procesorului și nu turația/frecvența.

Cine ar mai compara în ziua de azi un motor cu aburi cu unul cu ardere internă sau cu un motor cu reacție? Nici la procesoare nu prea încape comparație între generații cu specificația că în cadrul microprocesoarelor s-au schimbat doar în ultimii 20 de ani mai multe generații decât am fi visat vreodată că vom avea generații de motoare, incluzându-le aici și pe cele din filmele SF.

Eficiența nu este de neglijat în cele mai multe situații. Probabil că un motor cu randament mai bun este preferabil unuia cu randament mai scăzut. Și un procesor care poate face treabă fără să se încălzească prea tare este superior unuia care transformă curentul electric în căldură în loc să-l transforme în calcule. Orice reșou poate face căldură dar pentru rezolvarea problemelor este preferabil să ai un calculator chiar dacă nu este de neglijat confortul căldurii în zilele mai reci. În plus reșoul este mult mai ieftin, prin urmare poate că nu ar fi foarte înțelept să cumpărăm un calculator pentru încălzire.

Cât de puternic este un anumit procesor? Nu este o întrebare care să aibă un răspuns simplu, la fel cum știind puterea motorului, turația lui, numărul de cilindri și cuplul de forță pe care-l dezvoltă, nu veți putea spune dacă veți fi mulțumit de mașina în care este pus. Am ajuns zile în care diverși parametri luați individual nu înseamnă nimic. Zile în care motoare v8 sunt înlocuite cu motoare electrice, mult mai silențioase pentru care numărul de cilindri sau numărul de trepte de viteză nu mai înseamnă nimic. La fel, frecvența procesorului nu spune absolut nimic despre cât de bine se mișcă un anumit calculator cu atât mai mult cu cât nu spune nimic nici măcar despre puterea reală a procesorului.

Share this

Comentarii

Frecventa

Si eu inca mai aud oameni care imi spun .. procesorul asta e slab ca are frecventa de 1.8 sau asta-i bun ca are 2.4 cu toate ca cel de 2.4 era un AMD dual iar cel de 1.8 un Intel i5...
Totusi ce nu inteleg: de ce AMD au politica asta de a bloca unul sau mai multe nuclee. Eu am un Sempron (single) pe care folosind UCC l-am transformat in Athlon (dual). De ce asta?

imaginea utilizatorului Serafim

Întreabă-i :)

Părerile din exterior sunt împărțite, Probabil e mai simple să-i întrebi pe ei :)