Intel Optane Memory: memorie rapidă pentru computere bugetare. iar apoi Ostap s-a lăsat dus. Ce este Optane: scurt și clar

Majoritatea utilizatorilor își imaginează Ce afectează viteza RAM?. Este responsabil pentru transferul de date și, cu cât această componentă este mai puternică, cu atât mai rapide vor rula aplicațiile și în special jocurile. Dacă volumul său este insuficient, toate procesele și programele vor dura destul de mult timp pentru a se încărca, sau chiar se vor bloca complet, până la o repornire neplanificată a sistemului de operare, care va provoca o iritare reală pentru utilizator.

Principiul de funcționare și principalele caracteristici ale RAM

  1. Memorie

RAM este un microcircuit care nu conține alimentare autonomă. Cu alte cuvinte, dacă computerul este oprit, atunci toate informațiile stocate în RAM sunt șterse. Interacțiunea memoriei RAM cu procesorul se realizează printr-un cache sau o memorie de nivel zero.

Performanța RAM depinde de mai mulți parametri, inclusiv tipul și frecvența. În același timp, cel mai mult indicator important este volumul. Pentru computerele moderne, pragul minim ar trebui să fie de 2 gigaocteți. Acest lucru se datorează faptului că pornind de la versiune Windows Vista, sistemul de operare necesită 1 GB pentru nevoile sale și, în consecință, pentru ca aplicațiile să funcționeze pe deplin, este necesar să aibă cel puțin aceeași dimensiune. Un volum mai mic, desigur, poate fi găsit (deși nu mai există astfel de paranteze în magazine), dar aceste computere sunt deja iremediabil depășite și este aproape imposibil să instalați programe care necesită mult resurse pe ele.

Cel mai cea mai bună opțiune pe acest moment Pentru calculator bugetar Va exista o instalare de 4 gigabytes de RAM. Acest lucru va asigura normal și lucru rapid pe Internet, vă va permite să vizionați videoclipuri calitate variatași instalați jocuri moderne folosind setări medii (deși videoclipurile și jocurile depind și de acestea).

Pentru utilizatorii mai avansați care lucrează cu grafică sau editează audio fluxuri video, cantitatea de RAM necesară este de la 8 la 16 GB, dar nu trebuie să uităm că în acest caz un bun placă grafică cu chipset GDDR5 si care va avea minim 4 GB RAM. Când instalați o cantitate mai mare de RAM, de exemplu 32 GB, instalarea de stick-uri suplimentare în sloturile libere pentru aceasta (dacă există) poate fi amânată cu câțiva ani.

Notă: la instalare Mai mult RAM, nu ar trebui să credeți că computerul va zbura după aceasta, deoarece performanța depinde atât de procesor, cât și de alte componente. În plus, nu uitați că versiunile pe 32 de biți sisteme de operare poate folosi doar 3,2 GB de RAM, restul va fi inactiv.

  1. tip RAM

Viteza de transfer de date depinde și de acest parametru. ÎN calculatoare moderne Tipul DDR nu se mai folosește nicăieri, ci doar cu indici 2,3 sau 4. Acest lucru trebuie luat în considerare cu siguranță dacă utilizatorul decide să cumpere și să instaleze un suport suplimentar într-un slot liber, pentru că, deși sunt la fel în lungime și lățime, există un slot, care este situat pe distante diferite(vezi captura de ecran) și, prin urmare, nu poate fi instalat.

Este de remarcat faptul că DDR 2 se mai vede rar și în acest moment, DDR 3 este instalat aproape peste tot. Cel mai modern tip de RAM, DDR 4, este extrem de rar, în principal pe acele computere care au fost achiziționate sau actualizate relativ recent. Și dacă te gândești că toate plăcile de bază care acceptă DDR 4 pot instala doar procesoare Intel, care sunt semnificativ mai scumpe decât AMD, acest lucru afectează și popularizarea tip modern memorie. Deși putem spune cu încredere că cu DDR 4, eficiența va crește de 1,5-2 ori.

  1. Frecvență

Acest parametru este, de asemenea, direct legat de . Cu cât frecvența este mai mare, cu atât rata de schimb de date este mai rapidă. Printre tipurile de RAM menționate mai sus, nu mai există benzi în care frecvența ar fi mai mică de 1600 MHz, totuși, această valoare este ultimele modele poate ajunge la 3200 MHz.

Din nou, dacă proprietarul computerului decide să achiziționeze RAM și să o instaleze slot suplimentar, ar trebui să ia în considerare următoarele:

  • frecvența noii bare trebuie să fie identică cu cea care este deja instalată, altfel nu vor putea funcționa în paralel;
  • Este indicat să instalați RAM de la un producător, deoarece există situații în care unele se lipesc cu aceeași frecvență, dar diferite mărci pot intra în conflict între ele și computerul pur și simplu nu va porni;
  • poate fi limitat și de acest parametru: înainte de cumpărare RAM noua, revizuiți caracteristicile plăcii de bază astfel încât toate nuanțele să fie îndeplinite și computerul să funcționeze;
  1. Eficiență crescută a muncii

Uneori, utilizatorul are suficientă RAM instalată, dar computerul încetinește și persoana decide să cumpere mai multă RAM. În unele cazuri, acest lucru poate să nu fie deloc necesar; puteți efectua doar optimizarea:

  • caută în managerul de activități pentru a vedea cât de mult RAM este încărcată și, dacă există suficientă rezervă, atunci cel mai probabil problema nu este în RAM și un slot suplimentar nu va rezolva problema;

  • descărcați aplicațiile care nu sunt utilizate în prezent și verificați, de asemenea, lista de programe care se află la pornire. Dacă conține aplicații destul de rare și cu siguranță nu sunt necesare la pornirea computerului, eliminați-le și din această listă;
  • , deoarece uneori unele procese se pot îngheța în RAM și o pot aglomera, ceea ce poate duce la încetiniri și înghețari.

De asemenea, puteți încerca să overclockați RAM. Acest lucru se poate face din BIOS. Dar merită să ne amintim că unele magazine în cazuri similare poate fi refuzat service in garantie(schimb), iar durata de viață va fi mai mică decât fără efectuarea acestei acțiuni.

În zori tehnologia calculatoarelor Memoria dinamică a funcționat destul de bine la frecvența procesorului. Prima mea experiență cu un computer a fost cu o clonă a computerului ZX Spectrum. Procesorul Z80 a procesat instrucțiuni la o medie de 4 cicluri de ceas per operație, cu două cicluri de ceas utilizate pentru regenerare memorie dinamică, care ne oferă, la o frecvență de 3,5 MHz, nu mai mult de 875.000 de operații pe secundă.

Cu toate acestea, după ceva timp, frecvențele procesorului au atins un nivel în care memoria dinamică nu mai putea face față sarcinii. Pentru a compensa acest lucru, a fost introdusă o legătură intermediară sub forma memoriei cache, care a făcut posibilă, prin operațiuni efectuate pe o cantitate mică de date, netezirea diferenței de viteză a procesorului și a memoriei principale.

Să ne uităm la ce este RAM acum și ce se poate face cu ea pentru a crește performanța sistemului informatic.

Pe scurt despre memoria statică și dinamică

Memoria este construită sub forma unui tabel format din rânduri și coloane. Fiecare celulă a tabelului conține un bit de informații (discutăm despre memoria semiconductoare, cu toate acestea, multe alte implementări sunt construite pe același principiu). Fiecare astfel de tabel se numește „bancă”. Un cip/modul poate găzdui mai multe bănci. Un set de module de memorie este proiectat în spațiul de adrese liniar al procesorului în funcție de capacitatea de biți a elementelor individuale.

Celulă memorie statică este construit pe baza unui declanșator, care se află de obicei într-una dintre stările stabile „A” sau „B” (A =! B). Numărul minim de tranzistori pentru o celulă este de 6 bucăți, în timp ce complexitatea rutării în celule aparent nu permite realizarea unor module de memorie statică de 1 gigabyte, la prețul unui modul obișnuit de 8 gigabyte.

În caz contrar, principiul de funcționare este identic și este după cum urmează:

Preluarea inițială a unei linii de memorie are ca rezultat accesul la întregul conținut plasat în linia tampon cu care vine munca in continuare, sau accesul la coloană este multiplexat (abordare veche, lentă);
- datele solicitate sunt transferate pe dispozitivul master (de obicei CPU), sau are loc modificarea celule dateîn timpul unei operații de scriere (există o mică diferență aici; pentru memoria statică, este posibilă modificarea directă a celulei rândului selectat; pentru memoria dinamică, rândul buffer este modificat și numai atunci este executat scrie înapoi conținutul întregii linii într-o buclă specială);
- închiderea și schimbarea unei linii de memorie este, de asemenea, diferită pentru tipuri diferite memorie, pentru memoria statică este posibil să schimbați instantaneu o linie dacă datele nu s-au schimbat, pentru memoria dinamică este necesar să scrieți conținutul liniei tampon în loc și numai atunci puteți selecta o altă linie.

Dacă, în primele zile ale calculului, fiecare operație de citire sau scriere a finalizat un ciclu complet de memorie:

Selectarea rândurilor;
- operatie de citire/scriere dintr-o celula;
- schimbare/reselectare linie.

Operațiunile moderne cu cipuri „memorie sincronă la DDRX” sunt următoarele:

Selectarea rândurilor;
- operatii de citire/scriere a celulelor de rand in grupuri de 4-8 biti/cuvinte (sunt permise accesari multiple in cadrul unui rand);
- închiderea liniei cu informații de înregistrare în loc;
- schimbare/reselectare linie.

Această soluție a făcut posibilă economisirea timpului de acces la date atunci când, după citirea unei valori din celula „1”, este necesar să accesați celulele „2, 3, 4 sau 7” situate pe același rând, sau imediat după operația de citire , este necesar să scrieți înapoi valoarea modificată .

Aflați mai multe despre cum funcționează memoria dinamică împreună cu memoria cache

Controlerul de memorie (în chipset sau încorporat în procesor) setează adresa blocului și numărul de linie (partea superioară a adresei blocului) la cipul/modulul de memorie. Blocul corespunzător este selectat (vom lua în considerare lucrările ulterioare într-un singur bloc) și „numărul binar” rezultat este decodat în adresa pozițională a liniei, după care informațiile sunt transferate în buffer, din care datele sunt ulterior accesate. Timp în cicluri necesar pentru această operațiune numit tRCD și apare pe locul doi în modelele „9-9-9/9-9-9-27”.

După activarea rândului, puteți accesa „coloanele”; pentru aceasta, controlerul de memorie transmite adresa celulei din rând, iar după un timp „CL” (indicat în diagrama de mai sus „x-x-x” pe primul loc) datele încep să fie transmise de pe cip de memorie la procesor (de ce la plural? pentru că aici intervine cache-ul) sub forma unui pachet de 4-8 biți (pentru un singur cip) către o linie de cache (mărimea depinde de procesorului, valoarea tipică este de 64 de octeți - 8 cuvinte de 64 de biți, dar există și alte semnificații). După un anumit număr de cicluri de ceas necesare pentru a transmite un pachet de date, puteți genera următoarea solicitare de citire a datelor din alte celule ale rândului selectat sau puteți emite o comandă de închidere a rândului, care este exprimată ca tRP specificat ca al treilea parametru din „x-x-x-...” Când închideți o linie, datele din buffer sunt scrise înapoi pe linia de bloc; după sfârșitul scrierii, puteți selecta o altă linie din acest bloc. Pe lângă acești trei parametri, există timp minim timp în care linia trebuie să fie activă „tRAS”, și timpul minim pentru un ciclu complet de lucru cu linia care separă două comenzi pentru a activa linia (afectează accesul aleatoriu).

brut 19 aprilie 2016 la 12:40

CL - latență CAS, tRCD - întârziere RAS la CAS, tRP - preîncărcare rând, CAS - stroboscopul adresei coloanei, RAS - stroboscopul adresei rândului.

Performanța tehnologiei semiconductoare este determinată de întârzierile elementelor circuitului. Pentru a ajunge la ieșire informaţii de încredere, trebuie să așteptați anumit timp astfel încât toate elementele să-și asume o stare stabilă. În funcție de starea curentă a băncii de memorie, timpul de acces la date se modifică, dar în general pot fi caracterizate următoarele tranziții:

Dacă blocul este în repaus (nici un rând activ), controlerul emite o comandă de selectare a rândului, ca urmare, numărul de rând binar este convertit într-un număr de poziție, iar conținutul rândului este citit în timp „tRCD”.

Odată ce conținutul unui rând a fost citit în zona tampon, se poate lansa o comandă de selectare a coloanei, care convertește numărul binar al coloanei într-un număr de poziție, în timp CL, dar în funcție de alinierea adreselor joase, ordinea transmisia de biți se poate modifica.

Înainte de a schimba/închide o linie, este necesar să scrieți datele în loc, deoarece în timpul citirii, informațiile au fost efectiv distruse. Timpul necesar pentru restabilirea informațiilor din linia „tRP”.

Conform specificației complete pentru memoria dinamică, există mult mai mulți parametri de timp care determină ordinea și întârzierea modificărilor semnalelor de control. Unul dintre acestea este „tRCmin”, care determină timpul minim pentru un ciclu complet de rând, inclusiv: selecția rândului, accesul la date și scrierea înapoi.

Semnalul RAS determină dacă a fost emisă o adresă de rând;
Semnalul CAS determină dacă a fost emisă o adresă de coloană.

Dacă anterior tot controlul a fost transferat pe partea controlerului de memorie și controlat de aceste semnale, acum exista un regim comenzi, atunci când o comandă este emisă către modul/cip și după ceva timp timpul curge transfer de date. Este mai bine să citiți specificația standard pentru mai multe detalii, de exemplu DDR4.

Dacă vorbim despre lucrul cu dram în general, atunci în timpul lecturii în masă, de obicei, arată astfel:

Setați adresa liniei
setați RAS (și scos-o după o bătaie),
așteptat tRCD,
setați adresa coloanei din care citim (și la fiecare bară următoare setăm numărul coloanei următoare),
eliberat CAS,
am așteptat CL, am început să citească datele,
eliminat CAS, citiți restul datelor (mai multe cicluri CL).

La trecerea la un alt rând decât următorul, se face preîncărcarea (RAS + WE), se așteaptă tRP, se realizează RAS cu adresa stabilită linii și apoi citirea este efectuată așa cum este descris mai sus.

Latența citirii unei celule aleatoare rezultă în mod natural din ceea ce a fost descris mai sus: tRP + tRCD + CL.

Chiar depinde de starea anterioară„bancă de memorie” care este accesată.

Este important să rețineți că memoria RAM DDR are două frecvențe:

Principal frecvența ceasului determinarea vitezei de transmitere a comenzii și a timpurilor;
- frecventa efectiva de transfer de date (dubla frecventa de ceas cu care sunt marcate modulele de memorie).

Integrarea unui controler de memorie a crescut viteza subsistemului de memorie prin eliminarea legăturii intermediare de transmisie. O creștere a canalelor de memorie va necesita ca aplicația să ia în considerare acest lucru, de exemplu, un mod cu patru canale cu o anumită locație a fișierului nu oferă o creștere a performanței (configurații 12 și 14).


Procesarea unui element dintr-o listă legată cu pași diferiți (1 pas = 16 octeți)

Acum puțină matematică

Procesor: frecvențele de operare ale procesorului ajung acum la 5 GHz. Potrivit producătorilor, soluțiile de circuit (conducte, predicții și alte trucuri) permit executarea unei instrucțiuni pe ciclu de ceas. Pentru a rotunji calculele, să luăm o frecvență de ceas de 4 GHz, care ne va oferi o operație în 0,25 ns.

RAM: să luăm ca exemplu memoria RAM a noului format DDR4-2133 cu un timp de 15-15-15.

CPU
Fclock = 4 GHz
Ttact = 0,25 ns (de asemenea, timpul de execuție al unei operații „condiționat”)

RAM DDR4-2133
Fclock = 1066 MHz
Fdate = 2133 MHz
ttact = 0,94 ns
tdate = 0,47 ns
SPDmax = 2133 MHz * 64 = 17064 MB/s (rata de transfer de date)
tRCmin = 50 ns (timpul minim între activările a două rânduri)

Timpul de achiziție a datelor
Din registre și cache, datele pot fi furnizate în cadrul unui ciclu de ceas (registre, cache de nivel 1) sau cu o întârziere de mai multe cicluri de procesor pentru cache-urile de nivel 2 și 3.

Pentru RAM situația este mai proastă:

Timpul de selectare a liniei este: 15 clk * 0,94 ns = 14 ns
- timpul până la primirea datelor de la comanda de selecție a coloanei: 15 clk * 0,94 ns = 14 ns
- timpul de închidere a liniei: 15 clk * 0,94 ns = 14 ns (cine ar fi crezut)

Aceasta înseamnă că timpul dintre o comandă care solicită date dintr-o celulă de memorie (dacă nu este în cache) poate varia:

14 ns - datele sunt în rândul deja selectat;
28 ns - datele sunt într-un rând neselectat, cu condiția ca rândul anterior să fie deja închis (blocul este în starea „inactiv”);
42-50 ns - datele sunt pe altă linie, în timp ce linia curentă necesită închidere.

Numărul de operațiuni pe care procesorul (de mai sus) le poate efectua în acest interval de timp variază de la 56 (14 ns) la 200 (schimbare de linie de 50 ns). Este de remarcat faptul că întârzierea de încărcare a liniei cache se adaugă la timpul dintre comanda de selecție a coloanei și primirea întregului pachet de date: 8 biți ai pachetului * 0,47 ns = 3,76 ns. Pentru o situație în care datele vor fi disponibile pentru „program” numai după încărcarea liniei de cache (cine știe ce și cum le-au stricat dezvoltatorii procesorului, memoria conform specificațiilor vă permite să scoateți datele necesare înainte), obținem până la încă 15 cicluri ratate.

Ca parte a unei lucrări, am efectuat un studiu al vitezei memoriei, rezultatele au arătat că este posibil să se „recicleze” complet lățimea de bandă a memoriei numai în operațiunile de acces secvențial la memorie; în cazul accesului aleator, timpul de procesare crește (folosind exemplul a unei liste legate de un pointer de 32 de biți și trei cuvinte duble, dintre care unul este actualizat) de la 4-10 ( acces secvenţial) până la 60-120 ns (schimbări de linie), ceea ce oferă o diferență în viteza de procesare de 12-15 ori.

Viteză de procesare
Pentru modulul selectat avem un randament maxim de 17064 MB/s. Ceea ce, pentru o frecvență de 4 GHz, face posibilă procesarea cuvintelor de 32 de biți pe ceas (17064 MB / 4000 MHz = 4.266 octeți per ceas). Aici se suprapun următoarele restricții:

Fără programarea explicită a încărcării cache-ului, procesorul va fi forțat să rămână inactiv (cu cât frecvența este mai mare, cu atât nucleul așteaptă mai mult date);
- în ciclurile „citire modificare scriere” viteza de procesare este redusă la jumătate;
- procesoare multi-core va împărți lățimea de bandă a magistralei de memorie între nuclee și, pentru o situație în care există solicitări concurente (cazuri degenerate), performanța memoriei se poate deteriora de „200 de ori (modificări de linie) * X nuclee”.

Hai să facem calculul:

17064 MB/s / 8 nuclee = 2133 MB/s per nucleu în cazul optim.
17064 MB/s / (8 nuclee * 200 operațiuni omise) = 10 MB/s per nucleu pentru cazul degenerat.

Tradus în operațiuni obținem pentru 8 procesor nuclear: de la 15 la 400 de operații pentru a procesa un octet de date sau de la 60 la 1600 de operații/cicluri pentru a procesa un cuvânt de 32 de biți.

E cam lent după părerea mea. În comparație cu memoria DDR3-1333 9-9-9, unde timpul ciclului complet este de aproximativ 50 ns, dar timpii sunt diferite:

Timpul de acces la date este redus la 13,5 ns (1,5 ns * 9 cicluri de ceas);
- timpul de transmisie pentru un pachet de opt cuvinte este de 6 ns (0,75 * 8 în loc de 3,75 ns) și cu acces aleatoriu la memorie, diferența de viteză de transfer de date practic dispare;
- viteza de vârf va fi de 10.664 MB/s.

Nu a mers prea departe. Situația este puțin ajutată de prezența „băncilor” în modulele de memorie. Fiecare „bancă” este masa separata memorie care poate fi accesată separat, ceea ce face posibilă schimbarea unei linii dintr-o bancă în timp ce datele sunt citite/scrise de pe o linie în alta; prin reducerea timpului de nefuncționare, vă permite să „înfundați” magistrala de schimb de date la capacitate optimizată situatii.

De fapt, de aici au venit ideile ridicole.

Tabelul de memorie conține un număr specificat de coloane, egal cu 512, 1024, 2048 biți. Luând în considerare timpul ciclului de activare a rândului de 50 ns, obținem o viteză potențială de transfer de date: „1/0,00000005 s * 512 coloane * cuvânt pe 64 de biți = 81.920 MB/s” în loc de actualul 17.064 MB/s (163.840 și 327,68 MB/s pentru 1024 și 2048 rânduri de coloană). Veți spune: „doar de 5 (4,8) ori mai rapid”, la care voi răspunde: „aceasta este viteza de schimb atunci când toate cererile concurente sunt adresate unui singur banc de memorie, iar lățimea de bandă disponibilă crește proporțional cu numărul de bănci, și creșterea lungimii rândului fiecărui tabel (va necesita o creștere a lungimii linie de operare), care, la rândul său, depinde în principal de viteza magistralei de schimb de date.”

Schimbarea modului de schimb de date va necesita transferul întregului conținut al liniei în cache nivel inferior, pentru care este necesară împărțirea nivelurilor de cache nu numai după viteza de operare, ci și după dimensiunea liniei de cache. Deci, de exemplu, implementând „lungimea” liniei de cache de nivel N la (512 coloane * dimensiunea de 64 cuvinte) 32.768 de biți, putem, prin reducerea numărului de operațiuni de comparare, să creștem numărul total de linii de cache și, în consecință, crește volumul maxim al acestuia. Dar dacă facem o magistrală paralelă într-un cache de această dimensiune, putem obține o reducere a frecvenței de operare, din care putem aplica o altă abordare pentru organizarea cache-ului, dacă spargem linia cache „Jumbo” specificată în blocuri de-a lungul lungimea liniei de cache superioară și schimbul cu porțiuni mici, acest lucru vă va permite să mențineți frecvența de operare prin împărțirea întârzierii de acces în etape: căutarea unei linii de cache și selectarea „cuvântului” dorit în linia găsită.

În ceea ce privește schimbul direct între cache și memoria principală: este necesar să se transfere date la rata de acces la rândurile unei bănci sau cu o anumită marjă pentru distribuirea cererilor către diferite bănci. În plus, există o dificultate cu timpul de acces la datele aflate în zone diferite linii, pentru transmisia în serie, pe lângă întârzierea inițială asociată cu preluarea liniei, există o întârziere de transmisie a datelor în funcție de cantitatea de date „din pachet” și de viteza de transmisie. Chiar și abordarea rambus este posibil să nu poată face față sarcinii crescute. Situația poate fi salvată prin trecerea la o magistrală serială (eventual diferențială), prin reducerea în continuare a adâncimii biților de date, putem crește viteza de transfer canal, I pentru a reduce timpul dintre transmisia primului și ultimul pic date, aplicați împărțirea transmisiei liniei în mai multe canale. Acest lucru vă va permite să utilizați o frecvență de ceas mai mică a unui canal.

Să estimăm viteza unui astfel de canal:

1/0,00000005 ns = 20 MHz (frecvența de schimbare a liniei într-un singur bloc)
20 MHz * 32.768 biți = 655.360 Mbps
Pentru transmisia diferențială cu aceeași dimensiune a magistralei de date obținem:
655.360 Mbps / 32 de canale = 20.480 Mbps per canal.

Această viteză pare acceptabilă pentru un semnal electric (10 Gbit/s pentru un semnal cu sincronizare încorporată la 15 metri este disponibil, de ce nu 20 Gbit/s cu sincronizare externă nu poate fi realizată cu 1 metru), totuși, creșterea suplimentară necesară a vitezei de transmisie pentru a reduce întârzierea transmisiei între primii și ultimii biți de informație poate necesita o creștere a debitului, cu posibila integrare a unui canal de transmisie optic, dar aceasta este o întrebare pentru proiectanții de circuite, am puțină experiență de lucru cu astfel de frecvențe.

iar apoi Ostap a suferit
Schimbarea conceptului de proiectare a memoriei cache pe memoria principală la utilizarea „memoriei principale ca dispozitiv intermediar de stocare bloc de viteză ultra-înaltă” va face posibilă mutarea predicției încărcării datelor de la circuitul controlerului la algoritmul de procesare (și cine știe mai bine unde va ajunge după un timp, evident nu controlerul de memorie), care, la rândul său, vă va permite să măriți dimensiunea cache-ului de nivel extern, fără a compromite performanța.

Dacă mergem mai departe, putem schimba în continuare conceptul de țintire a arhitecturii procesorului de la „schimbarea contextului” actuator", pe " mediu de lucru programe”. O astfel de schimbare poate îmbunătăți semnificativ securitatea codului prin definirea unui program ca un set de funcții cu puncte date introducerea procedurilor individuale, regiune accesibilă plasarea datelor pentru procesare și capacitatea de a controla hardware posibilitatea de a apela o anumită funcție din alte procese. O astfel de schimbare va face posibilă, de asemenea, utilizarea mai eficientă a procesoarelor multi-core prin eliminarea comutării contextului pentru unele fire și utilizarea unui fir separat în mediul de „proces” disponibil pentru a procesa evenimente, ceea ce va permite utilizarea mai eficientă a peste 100 de fire. sisteme de bază.

P.S.: Utilizarea accidentală a mărcilor înregistrate sau a brevetelor este accidentală. Toate idei originale disponibil pentru utilizare la acord de licențiere"musuroi de furnici".

Toată lumea iubește inovațiile interesante, dar ele nu apar atât de des pe cât ne-am dori. Tip nou Unitățile Intel® Optane™ sunt acel caz rar. Vă spunem ce este, de ce a apărut și de ce se potriveste mai bine Total.

Un mic fundal

Intel Corporation este cunoscută ca un producător de top de procesoare pentru computere și servere. Cu toate acestea, nu toată lumea își amintește că istoria companiei nu a început cu legendarul microprocesor Intel 4004: primul produs a fost memoria cu o capacitate de doar 64 de biți - putea stoca exact 64 de valori (zero sau unu). Asta era în 1968.

Microprocesor Intel 4004 lansat în 1971

În prezent, pentru stocarea datelor sunt folosite două tipuri de unități: HDD sau SSD. Primele sunt lente, destul de zgomotoase datorită designului lor mecanic, dar încăpătoare, durabile și foarte accesibile. Cele doua sunt scumpe, cu o capacitate mult mai mica, absolut silentioase, rapide, dar in acelasi timp au un numar destul de limitat de cicluri de rescriere.

SSD-urile cu adevărat rapide și încăpătoare au apărut relativ recent - în a doua jumătate a anilor 2000 și au devenit populare în rândul unui public larg abia la începutul anilor 2010, când prețurile lor au scăzut treptat. Până în acest moment, au fost făcute cel puțin trei încercări de a găsi o soluție pentru a face HDD-urile lente să funcționeze mai rapid.

Trei încercări de a accelera HDD-ul

Tehnologia ReadyDrive a apărut în 2008. Compania Microsoft a oferit utilizatorii de Windows Vista, introduceți o unitate flash obișnuită într-unul dintre porturile USB ale computerului dvs., astfel încât sistemul să o poată folosi ca cache software sau, mai simplu, pentru a accelera operațiunile de pe disc.

Soluția părea interesantă, dar nu era răspândită din mai multe motive: la acel moment, unitățile flash erau mult mai lente, lățimea de bandă limitată era o piedică. Capacitate USB 2.0 și folosind ReadyDrive în dispozitive portabile S-a dovedit a fi pur și simplu incomod.

Puțin mai târziu, a apărut o soluție de la Intel, Turbo Memory, creată în aceleași scopuri. Un mic modul de memorie NAND (de fapt un SSD foarte „mic” cu o capacitate de 512 MB până la 2 GB) a fost conectat la placa de bază printr-o interfață mini-PCIe și a fost folosit și ca cache. Cele mai populare fișiere au fost transferate aici.

Turbo Memory putea fi găsită mai des decât unitățile flash ReadyBoost, dar nici tehnologia nu a funcționat - creșterea vitezei de operare s-a dovedit a fi modestă.


SSD și HDD hibrid

A treia încercare de a accelera HDD-urile a venit în momentul apariției primelor ultrabook-uri, deoarece cerințele pentru această clasă de dispozitive au fost clar oficializate (și din nou de Intel). Una dintre ele a fost necesitatea de a nota un anumit număr de puncte în test pentru viteza unității încorporate. Producătorii au fost nevoiți să aleagă unele foarte scumpe moment SSD sau populariza unități hibride- HDD cu memorie flash incorporata de 8, 16 sau 32 GB.

Ultima încercare ar putea fi numită reușită, dar în timp, unitățile hibride au părăsit piața. SSD-urile cu capacități de 128 și 256 GB au scăzut suficient de preț pentru a le înlocui.

Dacă problema vitezei a fost rezolvată mai mult sau mai puțin cu succes, problema volumului a rămas. Alege azi laptop accesibil- adevărată tortură. Trebuie să vă stabiliți opțiunea cu un HDD încăpător, dar lent sau să cumpărați o modificare mai scumpă cu SSD rapid pentru 128 GB.

O situație similară apare și la asamblarea unui buget computer de acasă: cea mai mare parte a datelor de aici este de obicei stocată pe HDD, iar sistemul este înregistrat pe un SSD de buget, a cărui capacitate, de regulă, este limitată la aceeași 128 GB. Acest spațiu este suficient pentru sistem și câteva jocuri serioase, dar nu mai mult. Aici intervine Intel Optane.


Evoluția metodelor de stocare a informațiilor pe parcursul a 25 de ani

Ce este Optane: scurt și clar

Optane este o familie de unități construite pe tehnologia 3D X-Point™. Acesta nu este NAND, care este folosit în SSD-uri, nu DRAM, care este folosit în RAM, ci ceva complet diferit.

3D X-Point a fost creat într-un parteneriat strâns de Intel și Micron. Detaliile despre principiile de funcționare ale noului tip de memorie sunt ținute secrete - până la urmă, un secret comercial. Entuziaștii și experții sugerează că baza stă în metoda tranziției de fază, dar confirmări oficiale Nu încă.

Cu toate acestea, toate avantajele 3D X-Point în comparație cu alte tipuri de memorie au fost măsurate și înregistrate cu atenție. Iată o listă cu cele mai importante:

În medie, 3D X-Point este de 1000 de ori mai rapid decât memoria NAND din unitățile SSD;

De aproximativ 1000 de ori mai durabil decât unitățile SSD, ceea ce elimină problema limitărilor privind numărul de cicluri de rescriere;

Puțin mai lent decât DRAM, pe care se bazează RAM, dar în același timp semnificativ mai ieftin;

Funcționează cu date la nivelul unei celule individuale, spre deosebire de un SSD, care accesează pagini întregi atunci când scrie și funcționează cu blocuri la ștergere. Acest lucru crește IOPS, elimină necesitatea de a șterge datele vechi înainte de a scrie date noi și reduce latența de acces.

Se pare că acesta este un înlocuitor ideal pentru un SSD, dar există o avertizare. Realizarea memoriei bazate pe 3D X-Point este încă destul de costisitoare. Prin urmare capacitatea Dispozitive Intel Optane este mai mic, dar acest lucru nu împiedică utilizarea lor eficientă acum.

Optane Memorieși Optane SSD

Soluția de server Optane SSD este o unitate sub forma unui card PCIe 3.0 cu 375 GB de memorie. Cele mai fiabile SSD-uri de server pot fi rescrise complet de cel mult 10-17 ori pe zi pentru a asigura funcționarea lor timp de cinci ani. Optane SSD poate fi rescris de 30 de ori pe zi pentru aceeași perioadă de utilizare.

Al doilea avantaj al său este viteza stabilă de citire și scriere a datelor: în 99,99999% din cazuri utilizatorul va primi același rezultat, în timp ce cu un SSD această cifră este la nivelul de 95%. Pentru multe solicitări esențiale, acest lucru nu este suficient.

Având în vedere absența problemelor cu numărul de cicluri de rescriere și foarte de mare viteză, SSD-urile Optane pot fi combinate într-o singură matrice cu RAM de server. Aceasta este o opțiune ideală pentru sarcinile solicitante de astăzi legate de învățare automată, recunoașterea modelelor, rețelele neuronale etc.

Optane Memorie pentru desktop și computere laptop este un card M.2 cu 16 sau 32 GB memorie internă, conceput special pentru a accelera performanța computerelor cu unități HDD. Adică, pentru acele cazuri în care utilizatorul nu poate sau nu vrea să cumpere un SSD scump și încăpător de 512 gigaocteți sau mai mult.

Optane Memory funcționează exact după același principiu despre care am scris la începutul materialului: memoria acționează ca un cache în care sunt stocate fișierele utilizate frecvent de sistem. Abia acum această memorie cache funcționează cu o viteză fantastică și este controlată de algoritmi inteligenți care, pentru a funcționa sarcina specifica de multe ori nu funcționează chiar cu fișiere întregi, ci cu grupuri separate de fișiere.

Poate părea că 16 sau 32 GB nu este mult, dar pentru cache programe de birou Optane Memory necesită câteva sute de megaocteți și pentru jocuri solicitante Câțiva gigaocteți vor fi de ajuns.

Procesul de configurare este complet automatizat: utilizatorul trebuie să actualizeze Driver Intel Rapid până la versiunea 15.5, conectați Optane Memory la placa de sistem, apăsați butonul „Activare” și așteptați 5-7 minute până când mașina repornește, iar sistemul va transfera tot ce este necesar de pe HDD pe Optane, combinând ambele componente în un singur spațiu pentru stocarea datelor.

Pentru a lucra pe deplin cu Optane Memory, este important ca placa de baza a fost construit pe seria 200 sau 300 de chipset-uri, iar procesorul era un Core™ i3, i5 și i7 de a șaptea generație sau mai vechi ( ). Dacă utilizatorul are mai mult procesor vechiși o placă de bază cu un conector M.2, apoi Optane Memory va fi detectată ca unitate separată.

Pentru ce este Optane Memory și de ce este mai bună decât un SSD de 128-256 GB

Având în vedere beneficiile, apar două cazuri de utilizare cheie pentru memoria Intel Optane. În primul rând, aceasta este o soluție excelentă pentru a îmbunătăți performanța laptopurilor. În loc de un SSD cu o capacitate mică, poți cumpăra un laptop cu un HDD terabyte și îl poți accelera folosind Optane, achiziționat cu banii economisiți.

Probabil că producătorii de laptopuri vor adopta o astfel de schemă, deoarece Optane Memory cu o capacitate de 16 GB costă între 3-3,5 mii de ruble, iar prețurile pentru versiunea de 32 GB variază între 5 și 5,5 mii. Acest lucru este comparabil cu costul celor mai bugetare SSD-uri de 120-128 și 240-256 GB.

A doua opțiune este să utilizați Optane Memory în buget calculatoare de jocuri. A opta generație Intel core deja vă permite pe deplin să dezvăluiți capacitățile plăcilor video puternice cu Ajutor Core i3-8100: acum nu are două, ci patru nuclee plus o viteză mare de ceas de 3,6 GHz.

Dacă economisiți bani la achiziționarea unui SSD încăpător, puteți achiziționa o placă video de o clasă superioară, iar aceasta este împreună cu procesor bun- cel mai important lucru dintr-un PC pentru jocuri. In acelasi timp vreau si eu încărcare rapidă, și aici apare gândul de a lua un SSD de 128 GB de buget, dar Optane îl va înlocui cu succes chiar și cu 16 GB de memorie.

Utilizatorul nu trebuie să se gândească de fiecare dată ce două sau trei jocuri ar trebui să fie stocate pe o unitate rapidă și care pe un HDD lent. Cu Optane va avea o singură matrice și totul va funcționa rapid.

Dacă comparați viteza memoriei Optane chiar și cu SSD-uri scumpe, apoi nou memorie Intel la uz casnic va arăta rezultate mai impresionante. Și nu în testele de performanță fără suflet care încarcă discuri program complet, dar în scenarii reale.

De exemplu, benchmark-ul creează pentru Test SSD o coadă foarte lungă de sarcini de finalizat, încărcându-l la capacitatea maximă. ÎN viata reala Este puțin probabil ca utilizatorul să vină cu mai mult de trei sarcini simultane pentru unitate. Pentru SSD asta este diferenta semnificativa: dacă funcționează la capacitatea sa maximă cu un set de 32 de instrucțiuni în coadă, atunci când lucrează cu o instrucțiune, performanța sa scade semnificativ.

Optane Memory nu are o astfel de caracteristică: unitatea atinge performanța maximă chiar de la 1-3 instrucțiuni. Există o altă față a monedei: cu cât este mai puțină memorie în SSD, cu atât funcționează mai lent. Unități cu stare solidă cu o capacitate de 0,5-1 TB chiar poate fi numită de mare viteză, dar versiunile de 128 și 256 GB, din păcate, nu sunt. Cu cât este mai puțină memorie, cu atât mai puține canale disponibile Controler SSD. E ca și cum ai cere doi oameni musculoși să sape o groapă în loc de opt.

Mai departe - doar mai interesant. Versiunile Optane Memory cu capacități de 64 și 128 GB vor apărea foarte curând, iar driverul Intel Rapid va fi actualizat la versiunea 16. În ea utilizatori experimentați va putea alege în mod independent ce informații să memoreze în memoria cache a unui drive rapid.

Intel intenționează, de asemenea, să lanseze o versiune pentru consumatori a SSD-ului Optane, reducând costul produsului prin eliminarea numeroaselor tehnologii de server, care utilizatorii obișnuiți la nimic. Și dacă privim mai departe în viitor, corporația plănuiește să lanseze a treia componentă din familia Optane - RAM pentru servere bazate pe 3D X-Point.