Ce este multiprocesarea simetrică?

Multiprocesarea simetrică (SMP) este un tip de arhitectură de computer în care două sau mai multe unități centrale de procesare (CPU) au o legătură comună cu aceeași memorie. A fost dezvoltat inițial în anii 1960 și de atunci a fost folosit în diverse configurații. Orice procesor dintr-un sistem SMP poate accesa și rula software din orice porțiune a memoriei partajate. Popularitatea acestei configurații a fluctuat de-a lungul anului, pe măsură ce tehnologia a evoluat și piețele s-au schimbat, dar este încă printre cele mai comune forme de tehnologii cu multiprocesor.

SMP a apărut la începutul anilor 1960 ca o modalitate de a conecta mai multe procesoare printr-o conexiune de mare viteză și de a le permite să aibă acces la același set de module de memorie. Deoarece memoria este partajată între procesoare, hardware-ul SMP poate fi mai ieftin decât alte tehnologii care pot dedica memorie fiecărui procesor. Au fost folosite multe variante ale acestei configurații, unele folosind o simplă bară transversală pentru a conecta două procesoare, în timp ce altele au folosit interconexiuni mai sofisticate între până la 32 de procesoare. Orice sistem simetric de multiprocesare poate fi reținut de viteza și capacitatea acestei interconexiuni; un sistem cu 32 de procesoare nu va fi neapărat de 32 de ori mai rapid deoarece legătura comună dintre aceste procesoare și memoria sistemului poate deveni aglomerată.

Un avantaj esențial pe care multiprocesarea simetrică îl are față de alte tehnici este că un sistem SMP tratează mai mult sau mai puțin toate procesoarele sale în mod egal, oferind astfel fiecăruia aceeași calitate a accesului la alte computere hardware. Aceasta înseamnă că orice procesor din sistem poate citi și executa instrucțiuni din programele software, indiferent de locul unde se află acele programe în memoria computerului. Multe programe software sunt acum împărțite în bucăți mai mici cunoscute sub numele de fire; atunci când aceste programe sunt rulate pe un sistem SMP, fiecare procesor poate rula un fir al programului, crescând astfel performanța generală. Software-ul la nivel de utilizator nu trebuie modificat pentru a rula pe un sistem care acceptă multiprocesare simetrică, dar sistemul de operare de bază trebuie să accepte tehnologia.

Popularitatea multiprocesării simetrice a scăzut și a crescut de-a lungul anilor, pe măsură ce au fost dezvoltate alte tehnici și au fost explorate noi arhitecturi. Publicitatea despre impactul posibil al tehnologiei asupra calculatoarelor a apărut la începutul anilor 1990; o serie de companii, în special Sequent Computer Systems, au început să se specializeze în construirea de sisteme SMP de ultimă generație. Sequent, care a fost achiziționat de IBM în 1999, a fost lăudat pentru design-ul său, dar nu a reușit niciodată să concureze eficient cu giganții industriei computerelor. Tehnicile mai noi de multiprocesare, cum ar fi accesul neuniform la memorie (NUMA) au înlocuit parțial SMP în sistemele high-end.

Producătorii de computere au experimentat de-a lungul anilor cu multiprocesarea simetrică în hardware-ul la nivel de consumator; Cu toate acestea, în afara hardware-ului scump pentru entuziaști, majoritatea computerelor personale nu au această tehnologie. Noile tehnici de eficientizare a sistemelor cu un singur CPU, cum ar fi multithreading simultan sau „hyperthreading”, împreună cu ascensiunea tehnologiei multicore au crescut performanța computerelor fără costul suplimentar al SMP. Este, totuși, posibilă combinarea acestor tehnologii, iar cele mai puternice computere desktop pot include mai multe procesoare multicore conectate prin SMP, creând astfel un sistem cu cantități masive de putere de calcul.