Windows 7 pe procesoare multicore


Într-unul din articolele mele anterioare am scris că, odată cu îmbunătățirea procesoarelor multi-core și creșterea numărului de Windows 7 în cele din urmă kernel depășesc Windows XP, în ceea ce privește viteza de procesare brută de aplicare datorită scalabilitate ridicată a miezului. Cu toate acestea, îmi imaginez că acest lucru se va întâmpla numai în viitorul îndepărtat - bine, dacă nu era distribuția masei de procesoare 16- și 32-core. Dar acum se dovedește că am făcut o greșeală o dată în trei sau patru: momentul când avansat kernel-ul Windows 7 în combinație cu procesoare multi-core va câștiga printr-o abordare de forță simplă, brută, care este implementat în Windows XP nucleu a fost deja atins.

Pur și simplu pune, Windows 7 funcționează mult mai rapid decât Windows XP, atunci când procesarea cere sarcini multitasking moderne hardware multi-core. Având în vedere tendințele actuale de design de calculator și a planurilor pe termen scurt pentru dezvoltarea procesoarelor multi-core, acest avantaj ar trebui să fie suficient pentru a atrage chiar și în mișcare mare mai încăpățânate în cele din urmă la Windows 7.

Mai mulți factori dau un avantaj de Windows 7 pe procesoare multicore. În special, apariția unor sisteme multi-procesor bazate pe tehnologia de acces de memorie neuniforma (Non-Uniform Memory Access, NUMA) - de exemplu, HP Z800 - permite realizarea de mare capacitate de calcul într-un factor de formă mic. Combinația de procesoare multi-core și mai multe prize procesor vă permite să creați calculatoare personale cu scalabilitate ridicată, care au fost disponibile anterior numai la serverele de top-tier. Astfel, costul unor astfel de sisteme este mult mai mică decât cu procesoare discrete convenționale pentru a atinge aceeași putere de calcul.

Un alt factor - refuzul FSB ordinare (Front Side Bus), care de mai mulți ani a fost o componentă cheie a arhitecturii calculatoarelor personale și stațiile de lucru bazate pe procesoare Intel. În schimb anvelopă, este utilizat acum Quick Path Interconnect (QPI) - ca răspuns la Intel AMD HyperTransport - care presupune plasarea controlerului de memorie pe un singur cip cu CPU, care oferă cele mai recente acces direct la memorie fizică. Ca urmare a accesului accelerat semnificativ la memoria locală pentru fiecare nucleu de procesor, și în combinație cu cache-al treilea nivel se îmbunătățește productivitatea în timp ce redistribuind de încărcare între mai multe procesoare.

NUMA și QPI îmbunătățit în mod semnificativ arhitectura Intel, dar toate aceste inovații ar fi inutil în absența unui sprijin adecvat din sistemul de operare. Acesta este motivul pentru optimizarea completă a Windows 7 nucleu pentru procesoare multicore contează atât de mult: fără ea utilizatorii pur și simplu nu a putut obține acces la o productivitate crescută, care este furnizat de Intel și AMD cele mai recente evoluții. Cu alte cuvinte, pentru a profita la maximum de procesoare avansate, sistemul de operare trebuie să fie îmbunătățită.

Windows XP - un sistem de operare mare. Ea și-a câștigat reputația de aproape un deceniu de funcționare neîntreruptă. Cu toate acestea, pe fondul unui sistem complex pentru a sprijini procesoare multi-core, implementate în Windows 7, Windows XP pare destul de palid. Windows XP nucleu utilizează conceptul de SMP (multiprocesare simetrică, SMP), care a fost dezvoltat în zilele de Windows NT, iar acest lucru limitează capacitățile sistemului la locul de muncă pe echipamente moderne cu arhitectura NUMA. E ca gluma vechi despre maestru, care dintre instrumentele - un ciocan: Windows XP are orice multi-sarcină ca unghiile care trebuie să înscrie.

Windows 7, pe de altă parte, este atent la nuanțele. De exemplu, sistemul de operare cunoaște diferența dintre mai multe procesoare discrete și mai multe nuclee într-un singur procesor. În plus, Windows 7 ia în considerare fundamentale mașinile principii NUMA - în special, faptul că grupul de nuclee fiecare acționează procesor ca o unitate funcțională, și că afinitatea de procesoare poate afecta în mod direct performanța aplicațiilor într-un mediu multiprocesor. Împreună, acest lucru permite kernel-ul la Windows 7 gestiona mai eficient hardware-ul, având în vedere structura logică și fizică a proceselor în alocarea proceselor de alocare și de memorie.

Windows 7 pe procesoare multicore

Desigur, practica este mai important decât teoria. Și, deși Microsoft încă de la început a promis că Windows 7 va folosi capacitățile sistemelor moderne de multi-core este mult mai eficient decât Windows XP, confirmă faptul că declarația nu a fost atât de ușor. Problema este că foarte puține PC-uri moderne au combinația de nuclee și compuși interprocessor de tip NUMA că Windows 7 este necesar pentru funcționarea cu succes pe sistemele multicore. Conform rezultatelor măsurătorilor, pe care am făcut-o pentru articolul meu anterior, se pare că Windows 7 este cu mult în spatele XP pe orice hardware - de la computer cu procesor dual-core la stația de lucru cu un procesor quad. De aceea, am decis că potențialul noului sistem de operare va fi capabil să realizeze pe deplin numai 16- sau chiar 32-core mașini.

Din fericire, acum am înțeles că nu este. Windows 7 este capabil de a lucra în mod eficient, nu numai cu privire la viitoarea generație de calculatoare, dar, de asemenea, pe masa modernă (deși costisitoare) sisteme. Noi măsurători efectuate pe stația de lucru menționată anterior HP Z800 (8 miezuri 16 fluxuri), au demonstrat că Windows 7 are un avantaj de strivire în comparație cu Windows XP în procesarea încărcăturilor mixte multithread, inclusiv serviciile de baze de date SQL (47% mai repede) implementarea MAPI proceselor (178% mai rapid) și redare media.

În ceea ce privește scalabilitate, tranziția de la un quad-core la opt nuclee, distribuite între cele două procesoare, prevede în Windows 7 este mult mai semnificativă creștere a performanței la sută decât în ​​Windows XP. SQL performanța bazei de date a îmbunătățit în Windows XP la 72%, iar în Windows 7 - la fel de mult ca 200%. MAPI accelerată de procesare în Windows XP doar 4%, care poate fi ignorată, dar în Windows 7 - aproape 360%.

În general, Windows 7 este o victorie mare, pe care am atribui pentru a sprijini mai bine procesoare multi-core, multi-threading simultan (simultană Multithreading, SMT, sau Hyper-Threading), și NUMA. Faptul că Windows 7 a reușit să realizeze astfel de rezultate ridicate în opt nivel - nu doar pentru a depasi Windows XP, și lăsați-l mult în urmă - sa dovedit pentru mine o surpriză plăcută și mi-a făcut chiar mai mult respect pentru comanda dezvoltatorii Windows kernel. Băieți înțeleg cu adevărat cum să profitați la maximum de platforma hardware.

Windows 7 pe procesoare multicore

Desigur, utilizatorii avansați multiprocesor stație de lucru poate obține acum un avantaj imens atunci când se deplasează la Windows 7, dar lista celor care sunt noi caracteristici utile ale sistemului de operare, nu este limitat. PC-uri și notebook-uri bazate pe Intel Core i7 actuala generație de procesoare sunt, de asemenea, posibilitatea de a obține câștiguri semnificative de performanță, datorită transferului de sarcină îmbunătățită între sursă și memoria cache, precum și o serie de alte îmbunătățiri multi-core implementate în Windows 7. Cu toate că scalabilitate îmbunătățită a Windows 7 nu a dat încă s avantaje față de Windows XP pe o putere medie sau quad-dual PC, acestea sunt, cu toate acestea, este posibil pentru a compensa sarcina crescută pe echipament, care creează încă lea sistem de operare.

Faptul că toate avantajele seducătoare ale Windows 7 - a crescut de securitate, maniabilitate, usurinta - a făcut posibilă prin creșterea sarcinii pe procesor de serviciile de fond, care sunt responsabile pentru punerea în aplicare a acestor noi caracteristici. Prin urmare, utilizarea mai eficientă a lățimii de bandă procesorului de cea mai mare importanță în măsura în care, pe măsură ce numărul de straturi de software crește, separarea echipamentului de operator.

Dar, fie ca aceasta poate, în cele din urmă un lucru este sigur: Windows 7 - sau, cel puțin, se află în arhitectura de bază bazată - este viitorul calculatoarelor personale bazate pe Intel. Și rămâne un fapt, chiar dacă Microsoft decide pentru Windows intestin și arunca toate straturile de deasupra NT executiv (un fel de versiune extremă a MinWin). Gigantul din Redmond a reușit să creeze în Windows 7 fundație solidă, scalabilă pentru un sistem de operare care suporta procesoare multi-core, și este în continuare util companiei în dezvoltarea versiunilor viitoare ale produsului său pilot.