RAM tipai. Nebuferinė atmintis su ECC, registruotoji atmintis su ECC. Ar turėtumėte nusipirkti ECC atmintį? ECC palaikoma

Kaip suprantu, jo argumentai yra tokie:

  1. „Google“ nenaudojo ECC, kai 1999 m. sukūrė savo serverius.
  2. Dauguma RAM klaidų yra sisteminės, o ne atsitiktinės.
  3. RAM klaidų pasitaiko retai, nes patobulinta aparatinė įranga.
  4. Jei ECC atmintis būtų tikrai svarbi, ji būtų naudojama visur, ne tik serveriuose. Mokėjimas už tokią pasirenkamą medžiagą akivaizdžiai per daug abejotinas.
Pažvelkime į šiuos argumentus po vieną:

1. 1999 m. Google nenaudojo ECC

Jei ką nors darote tik todėl, kad tai padarė „Google“, pabandykite:

A. Įdėkite savo serverius į siuntimo konteinerius.

Šiandien žmonės vis dar rašo straipsnius apie tai, kaip tai puiki idėja, nors „Google“ ką tik atliko eksperimentą, kuris buvo laikomas nesėkmingu. Pasirodo, net „Google“ eksperimentai ne visada pasiteisina. Tiesą sakant, gerai žinomas jų pomėgis „proveržio projektams“ („lunshots“) reiškia, kad jie turi daugiau nesėkmingų eksperimentų nei dauguma įmonių. Mano nuomone, jiems tai yra reikšmingas konkurencinis pranašumas. Nepadidinkite šio pranašumo, aklai kopijuodami nesėkmingus eksperimentus.

B. Paleiskite gaisrus savo duomenų centruose.

Dalyje Atwood įrašo aptariama, kokie nuostabūs buvo šie serveriai:

Kai kurie gali pažvelgti į šiuos ankstyvuosius „Google“ serverius ir pastebėti, kad trūksta profesionalumo gaisro pavojaus srityje. Ne aš. Čia matau į ateitį nukreiptą supratimą, kaip pigi, jau paruošta aparatinė įranga formuos šiuolaikinį internetą.

Paskutinė to, kas pasakyta, dalis yra tiesa. Tačiau pirmoje dalyje yra dalis tiesos. Kai „Google“ pradėjo kurti savo plokštes, viena jų karta turėjo „augimo“ problemą ( ), kuri sukėlė ne nulinį gaisrų skaičių.

Beje, jei nueisite į Jeffo įrašą ir pažiūrėsite į citatoje nurodytą nuotrauką, pamatysite, kad ant plokščių yra daug jungiamųjų kabelių. Tai sukėlė problemų ir buvo ištaisyta naujos kartos aparatinėje įrangoje. Taip pat matosi gana aplaistytas kabelis, kuris papildomai sukėlė problemų ir taip pat buvo greitai ištaisytas. Buvo ir kitų problemų, bet paliksiu jas kaip pratimą skaitytojui.

C. Sukurkite serverius, kurie kenkia jūsų darbuotojams.

Dėl aštrių vienos kartos „Google“ serverių kraštų jie užsitarnavo „skutimosi peiliukų ir neapykantos“ reputaciją.

D. Duomenų centruose sukurkite savo orus

Pabendravus su daugelio didelių technologijų įmonių darbuotojais, atrodo, kad dauguma įmonių turėjo tokią klimato kontrolę, kad jų duomenų centruose susidarė debesys ar rūkas. Galima tai pavadinti „Google“ apgalvotu ir apgaulingu planu atkartoti Sietlo orus, kad būtų išvilioti „Microsoft“ darbuotojai. Arba tai gali būti planas sukurti tiesioginę „debesų kompiuteriją“. O gal ir ne.

Atminkite, kad „Google“ bandė ir tada pakeitė viską, kas nurodyta. Klaidų darymas ir jų taisymas yra įprastas reiškinys bet kurioje sėkmingoje vystymo organizacijoje. Jei dievinate inžinerinę praktiką, turėtumėte bent jau laikytis šiuolaikinės praktikos, o ne to, kas buvo padaryta 1999 m.

Kai 1999 m. „Google“ naudojo ne ECC serverius, jie parodė daugybę simptomų, kurie galiausiai buvo nustatyti dėl atminties sugadinimo. Įskaitant paieškos indeksą, kuris pateikė beveik atsitiktinius užklausų rezultatus. Tikrasis gedimo režimas čia yra pamokantis. Dažnai girdžiu, kad šiose mašinose ECC galima nepaisyti, nes atskirų rezultatų klaidos yra priimtinos. Tačiau net jei manote, kad atsitiktinės klaidos yra priimtinos, jų ignoravimas reiškia visiško duomenų sugadinimo riziką, nebent būtų atlikta kruopšti analizė siekiant užtikrinti, kad viena klaida gali tik šiek tiek iškreipti vieną rezultatą.

Failų sistemų tyrimai ne kartą parodė, kad nepaisant didvyriškų bandymų sukurti sistemas, atsparias vienai klaidai, tai padaryti itin sunku. Iš esmės kiekviena stipriai patikrinta failų sistema gali smarkiai sugesti dėl vienos klaidos (). Neketinu pulti failų sistemų kūrėjų. Jie geriau atlieka tokio tipo analizę nei 99,9% programuotojų. Tiesiog ne kartą buvo įrodyta, kad problema tokia sudėtinga, kad žmonės negali jos pagrįstai aptarti, o automatizuotas tokios analizės įrankis dar toli nuo paprasto mygtukų paspaudimo proceso. „Google“ aptaria klaidų aptikimą ir taisymą savo vadove apie kompiuterinį sandėlio duomenų apdorojimą, o ECC atmintis laikoma tinkamiausia pasirinkimu, kai akivaizdu, kad reikia naudoti aparatinės įrangos klaidų taisymą ( ).

„Google“ turi puikią infrastruktūrą. Iš to, ką girdėjau apie infrastruktūrą kitose didelėse technologijų įmonėse, „Google“ atrodo geriausia pasaulyje. Bet tai nereiškia, kad turėtumėte kopijuoti viską, ką jie daro. Net jei atsižvelgsime tik į jų geras idėjas, daugumai įmonių nėra prasmės jas kopijuoti. Jie sukūrė „Linux“ užduočių perėmimo planavimo priemonės pakaitalą, kuris naudoja aparatinės įrangos vykdymo informaciją ir statinius pėdsakus, kad galėtų pasinaudoti naujos „Intel“ serverio procesorių aparatinės įrangos pranašumais, leidžiančiais dinamiškai skaidyti talpyklą tarp branduolių. Jei naudosite tai visoje jų aparatinėje įrangoje, „Google“ per savaitę sutaupys daugiau pinigų, nei „Stack Exchange“ išleido visiems savo įrenginiams per visą savo istoriją. Ar tai reiškia, kad turėtumėte kopijuoti „Google“? Nebent mana iš dangaus jau nukrito ant jūsų, pavyzdžiui, dėl to, kad jūsų pagrindinė infrastruktūra yra parašyta labai optimizuota C++, o ne Java ar (neduok Dieve) Ruby. Ir faktas yra tas, kad didžiajai daugumai įmonių programų rašymas kalba, dėl kurios produktyvumas sumažėja 20 kartų, yra visiškai pagrįstas sprendimas.

2. Dauguma RAM klaidų yra sisteminės klaidos

Argumentas prieš ECC pakartotas kitame DRAM klaidų tyrimo skyriuje (pabrėžė Jeffas):
Mūsų tyrimas turi keletą pagrindinių išvadų. Pirma, mes nustatėme, kad maždaug 70% DRAM gedimų yra pasikartojantys (pvz., nuolatiniai) gedimai, o tik 30% yra periodiniai (protarpiniai) gedimai. Antra, nustatėme, kad dideli kelių bitų gedimai, pvz., gedimai, paveikiantys visą eilutę, stulpelį ar bloką, sudaro daugiau nei 40 % visų DRAM klaidų. Trečia, mes nustatėme, kad beveik 5% DRAM gedimų turi įtakos plokštės lygio grandinėms, tokioms kaip duomenų (DQ) arba blykstės (DQS) linijos. Galiausiai nustatėme, kad „Chipkill“ sumažino sistemos gedimų dėl DRAM gedimų dažnį 36 kartus.

Citata atrodo šiek tiek ironiška, nes atrodo, kad tai ne argumentas prieš ECC, o argumentas už Chipkill – tam tikrą ECC klasę. Atmetus tai, Jeffo įrašas nurodo, kad sisteminės klaidos yra dvigubai dažnesnės nei atsitiktinės. Tada įraše rašoma, kad jie paleidžia memtest savo įrenginiuose, kai atsiranda sisteminių klaidų.

Pirma, santykis 2:1 nėra toks didelis, kad būtų galima tiesiog nepaisyti atsitiktinių klaidų. Antra, šis įrašas reiškia Jeffo įsitikinimą, kad sisteminės klaidos iš esmės yra nekintamos ir negali užtrukti laiko, kol pasireikš. Tai netiesa. Elektronika susidėvi taip pat, kaip ir mechaniniai įrenginiai. Mechanizmai skiriasi, bet poveikis panašus. Iš tiesų, jei palyginsime lusto patikimumo analizę su kitų tipų patikimumo analize, pamatysime, kad jos dažnai naudoja tas pačias paskirstymo šeimas gedimams modeliuoti. Trečia, Jeffo samprotavimai reiškia, kad ECC negali padėti aptikti ar ištaisyti klaidų, o tai ne tik klaidinga, bet ir tiesiogiai prieštarauja citatai.

Taigi, kaip dažnai ketinate paleisti „memtest“ savo įrenginiuose, bandydami užfiksuoti šias sistemos klaidas ir kiek duomenų praradimo esate pasirengę ištverti? Vienas iš pagrindinių ECC naudojimo būdų yra ne klaidų taisymas, o klaidų signalizavimas, kad aparatinę įrangą būtų galima pakeisti prieš įvykstant tyliajai korupcijai. Kas sutiktų kiekvieną dieną uždaryti viską mašinoje, kad būtų paleistas memtestas? Tai būtų daug brangiau nei tiesiog nusipirkti ECC atmintį. Ir net jei galėtumėte įtikinti atlikti atminties testavimą, memtest nerastų tiek klaidų, kiek gali rasti ECC.

Kai dirbau įmonėje, turinčioje apie tūkstantį mašinų parką, pastebėjome, kad tikrinant duomenų vientisumą pasitaiko keistų gedimų, o maždaug po šešių mėnesių supratome, kad vienose mašinose gedimų tikimybė didesnė nei kitose. Šie gedimai pasitaikydavo gana retai (gal vidutiniškai porą kartų per savaitę), todėl kaupti informaciją ir suprasti, kas vyksta, užtruko ilgai. Nežinant priežasties, analizuoti žurnalus, siekiant suprasti, kad klaidas sukėlė pavieniai bitų keitimo atvejai (su didele tikimybe), taip pat buvo nereikšminga. Mums pasisekė, kad kaip šalutinis mūsų naudojamo proceso poveikis, kontrolinės sumos buvo apskaičiuojamos atskirame procese skirtingame įrenginyje skirtingu metu, kad klaida negalėtų sugadinti rezultato ir tos sugadinimo išplisti į kontrolinę sumą.

Jei tik bandote apsisaugoti naudodami atmintyje esančias kontrolines sumas, yra didelė tikimybė, kad atliksite jau sugadintų duomenų kontrolinės sumos operaciją ir gausite teisingą neteisingų duomenų kontrolinę sumą, nebent darote ką nors išgalvotų. skaičiavimo operacijos, kurios pateikia savo kontrolines sumas. Ir jei rimtai norite taisyti klaidas, tikriausiai vis dar naudojate ECC.

Bet kokiu atveju, atlikę analizę nustatėme, kad memtest negalėjo aptikti jokių problemų, tačiau pakeitus RAM bloguose įrenginiuose klaidų lygis sumažėjo nuo vienos iki dviejų laipsnių. Dauguma paslaugų neturi tokių kontrolinių sumų, kokias turėjome mes; šios paslaugos tiesiog tyliai įrašys sugadintus duomenis į nuolatinę saugyklą ir nematys problemos, kol klientas nepradės skųstis.

3. Dėl techninės įrangos pažangos klaidų pasitaiko labai retai.

Įraše pateiktų duomenų nepakanka tokiam teiginiui. Atminkite, kad didėjant ir eksponentiškai didėjant RAM naudojimui, RAM gedimų skaičius turi mažėti sparčiau, kad iš tikrųjų sumažėtų duomenų sugadinimo dažnis. Be to, lustai ir toliau mažėja, elementai tampa mažesni, todėl antrame punkte aptartos nusidėvėjimo problemos tampa dar aktualesnės. Pavyzdžiui, naudojant 20 nm technologiją, DRAM kondensatorius gali sukaupti kažkur apie 50 elektronų, ir šis skaičius bus mažesnis kitos kartos DRAM, išlaikant mažėjimo tendenciją.

Dar viena pastaba: mokėdami už ECC, mokate ne tik už ECC atmintį – mokate už kokybiškesnes dalis (procesorius, plokštes). Tai galima lengvai pastebėti naudojant disko gedimų dažnį, ir aš girdėjau, kad daugelis žmonių tai pastebi savo asmeniniuose pastebėjimuose.

Cituojant viešai prieinamus tyrimus, manau, kad Andrea ir Remzi grupė prieš kelerius metus išleido SIGMETRICS dokumentą, kuris parodė, kad SATA diskas 4 kartus dažniau suges skaitydamas nei SCSI diskas ir 10 kartų didesnė tikimybė turėti paslėptų duomenų. korupcija.. Šis santykis buvo išlaikytas net naudojant to paties gamintojo diskus. Nėra jokios ypatingos priežasties manyti, kad SCSI sąsaja turėtų būti patikimesnė nei SATA sąsaja, tačiau kalbame ne apie tai. Tai labai patikimų serverio komponentų pirkimas, o ne kliento komponentai. Galbūt jūsų nedomina disko patikimumas, nes viskas pagrįsta kontrolinėmis sumomis, o žalą lengva rasti, tačiau yra tam tikrų tipų pažeidimų, kuriuos sunkiau aptikti.

4. Jei ECC atmintis būtų tikrai svarbi, ji būtų naudojama visur, ne tik serveriuose.

Šiek tiek perfrazuojant šį argumentą, galime pasakyti, kad „jei ši charakteristika tikrai būtų svarbi serveriams, tai ji būtų naudojama ne serveriuose“. Šį argumentą galite pritaikyti daugeliui serverio aparatinės įrangos. Tiesą sakant, tai yra viena iš labiausiai varginančių problemų, su kuriomis susiduria dideli debesų sprendimų teikėjai.

Jie turi pakankamai svertų, kad gautų daugumą komponentų už tinkamą kainą. Tačiau derėtis galima tik ten, kur yra daugiau nei vienas perspektyvus tiekėjas.

Viena iš nedaugelio sričių, kurioje nėra perspektyvių konkurentų, yra centrinių procesorių ir vaizdo greitintuvų gamyba. Didelių tiekėjų laimei, jiems dažniausiai nereikia vaizdo greitintuvų, reikia procesorių, jų daug – taip jau seniai. Procesorių pardavėjai ne kartą bandė patekti į serverių rinką, tačiau kiekvienas toks bandymas nuo pat pradžių visada turėjo lemtingų trūkumų, dėl kurių buvo akivaizdu, kad jis buvo pasmerktas (ir tai dažnai yra projektai, kuriems reikia mažiausiai 5 metų, t.y. reikia praleisti daug laiko be tikrumo dėl sėkmės).

„Qualcomm“ pastangos sulaukė daug ažiotažų, tačiau kai kalbuosi su savo „Qualcomm“ kontaktais, jie visi man sako, kad iki šiol gaminamas lustas iš esmės skirtas testavimui. Taip atsitiko todėl, kad „Qualcomm“ turėjo išmokti sukurti serverio lustą iš visų žmonių, kuriuos ji pasisavino iš IBM, ir kad kitas lustas bus pirmasis, kuris, tikiuosi, bus konkurencingas. Labai tikiuosi su Qualcomm, kaip ir ARM pastangomis sukurti gerus serverio komponentus, tačiau šios pastangos kol kas nedavė norimų rezultatų.

Beveik visiškas dabartinių ARM (ir POWER) variantų netinkamumas (neskaičiuojant hipotetinių įspūdingo Apple ARM lusto variantų) daugeliui serverių darbo krūvių, atsižvelgiant į našumą vienam doleriui bendros nuosavybės kainos (TCO), yra šiek tiek nuošalyje, todėl Paliksiu tai kitam leidiniui. Tačiau esmė ta, kad „Intel“ užima tokią poziciją rinkoje, kad gali priversti žmones mokėti papildomai už serverio funkcijas. Ir Intel tai daro. Be to, kai kurios funkcijos tikrai svarbesnės serveriams, o ne mobiliesiems įrenginiams, turintiems kelis gigabaitus RAM ir kelių vatų energijos biudžetą, mobiliesiems įrenginiams, kurie vis dar turėtų periodiškai strigti ir persikrauti.

Išvada

Ar turėtumėte nusipirkti ECC RAM? Tai priklauso nuo daugelio dalykų. Atsižvelgiant į išlaidas, tai tikriausiai yra geras pasirinkimas serveriams. Tačiau iš tikrųjų sunku atlikti sąnaudų ir naudos analizę, nes gana sunku nustatyti žalą dėl paslėptų duomenų sugadinimo arba išlaidas, susijusias su rizika prarasti šešis mėnesius kūrėjo laiko, skirto sistemingai aptikti gedimus, o tik išsiaiškinti, kad juos sukelia ne ECC atmintis.

Kalbant apie stalinius kompiuterius, aš taip pat esu ECC šalininkas. Bet jei nedarote įprastų atsarginių kopijų, tuomet geriau investuokite į įprastas atsargines kopijas, o ne į ECC atmintį. Ir jei turite ne ECC atsargines kopijas, galite lengvai įrašyti sugadintus duomenis į pirminę saugyklą ir pakartoti tuos sugadintus duomenis į atsarginę kopiją.

Dėkojame Prabhakarui Raghdai, Tomui Murphy, Jay Weiskopfui, Leah Hanson, Joe Wilderiui ir Ralph Corderoy už diskusijas / komentarus / pataisymus. Taip pat dėkoju (o gal ne – ačiū) Lėjai, kad įtikino mane parašyti šį ištartą žodį ekspromtu kaip tinklaraščio įrašą. Atsiprašome už klaidas, trūkstamas nuorodas ir didingą prozą; tai iš esmės yra pusės diskusijos stenograma, ir aš nepaaiškinau terminų, nepateikiau nuorodų ar nepatikrinau faktų iki tokio išsamumo lygio, kaip paprastai darau.

Vienas įdomus pavyzdys yra (bent jau man) magiškas savaime gydantis lydantis džemperis. Nors įgyvendinimų yra daug, įsivaizduokime lydomąjį trumpiklį ant lusto kaip tam tikrą rezistorių. Jei per jį praleidžiate srovę, turėtumėte gauti ryšį. Jei srovė yra per didelė, rezistorius įkais ir galiausiai suges. Paprastai tai naudojama norint išjungti elementus lustuose arba atlikti tokius veiksmus kaip laikrodžio dažnis. Pagrindinis principas yra tas, kad perdegus džemperiui nėra galimybės jo grąžinti į pradinę būseną.

Kažkada buvo vienas puslaidininkinių prietaisų gamintojas, kuris šiek tiek paskubino savo gamybos procesą ir per daug sumažino tam tikros technologijos kartos leistinus nuokrypius. Po kelių mėnesių (ar metų) ryšys tarp dviejų tokio džemperio galų galėjo vėl atsirasti ir jį atkurti. Jei pasiseks, toks trumpiklis bus kažkas panašaus į patį reikšmingiausią laikrodžio daugiklio bitą, kurį pakeitus lustas bus išjungtas. Jei nepasiseks, tai sugadins paslėptus duomenis.

Iš daugybės žmonių įvairiose įmonėse girdėjau apie šios gamintojo kartos technologijų problemas, todėl tai nebuvo pavieniai atvejai. Kai sakau, kad tai juokinga, turiu omenyje, kad juokinga girdėti šią istoriją bare. Mažiau smagu po metų testavimo sužinoti, kad kai kurie jūsų lustai neveikia, nes jų trumpiklio nustatymai nėra prasmingi, o lustą reikia perdaryti ir atidėti 3 mėn. Beje, ši situacija, kai atkuriama lydioji nuoroda, yra dar vienas klaidų klasės pavyzdys, kurio sunkumą galima išlyginti naudojant ECC.

Tai ne „Google“ problema; Paminėju tai tik todėl, kad daugelis žmonių, su kuriais kalbu, yra nustebę, kaip gali sugesti aparatinė įranga.

Jei nenorite naršyti visos knygos, štai jums reikalingas fragmentas:

Sistemoje, kuri gali atlaikyti daugybę gedimų programinės įrangos lygmeniu, minimalus reikalavimas, keliamas aparatinei įrangai, yra tas, kad šios dalies gedimai visada būtų aptinkami ir apie juos pranešama programinei įrangai pakankamai laiku, kad programinės įrangos infrastruktūra galėtų juos išlaikyti ir imtis atitinkamų atkūrimo veiksmų. Nebūtina, kad aparatinė įranga aiškiai tvarkytų visus gedimus. Tai nereiškia, kad tokių sistemų techninė įranga turėtų būti sukurta be klaidų taisymo galimybių. Kai galima pasiūlyti klaidų taisymo funkciją už priimtiną kainą ar sudėtingumą, dažnai apsimoka ją palaikyti. Tai reiškia, kad jei aparatinės įrangos klaidų taisymas būtų labai brangus, sistema galėtų naudoti pigesnę versiją, kuri suteiktų tik aptikimo galimybes. Šiuolaikinės DRAM sistemos yra geras pavyzdys situacijos, kai už labai mažą papildomą kainą galima atlikti galingą klaidų taisymą. Tačiau sušvelninti reikalavimą aptikti aparatinės įrangos klaidas būtų daug sunkiau, nes tai reikštų, kad kiekvienas programinės įrangos komponentas būtų apkrautas poreikiu patikrinti, ar jis veikia tinkamai. Savo istorijos pradžioje „Google“ turėjo susidurti su serveriais, kuriuose DRAM net neturėjo pariteto. Žiniatinklio paieškos indekso kūrimas iš esmės susideda iš labai didelės rūšiavimo / sujungimo operacijos, kuri laikui bėgant apima kelis įrenginius. 2000 m. vieno iš „Google“ mėnesinių žiniatinklio indeksų atnaujinimų nepavyko iš anksto patvirtinti, kai buvo nustatyta, kad tikrintų užklausų poaibis grąžino dokumentus, atrodo, atsitiktinai. Atlikus tam tikrą tyrimą, naujuose indekso failuose buvo nustatyta situacija, kuri atitiko bito įstrigimą ties nuliu konkrečioje duomenų struktūrų vietoje, o tai buvo neigiamas šalutinis poveikis srautu perduodant didelius duomenų kiekius per sugedusią DRAM lustą. Siekiant sumažinti šios problemos pasikartojimo tikimybę, į indekso duomenų struktūras buvo įtrauktos nuoseklumo patikros, ir daugiau tokio pobūdžio problemų nebuvo. Tačiau reikia pažymėti, kad šis metodas negarantuoja 100% klaidų aptikimo indeksavimo eigoje, nes tikrinamos ne visos atminties pozicijos - pavyzdžiui, instrukcijos paliekamos nepažymėtos. Tai pavyko, nes indekso duomenų struktūros buvo daug didesnės nei visi kiti skaičiavime naudojami duomenys, kad dėl šių savikontrolės duomenų struktūrų labai tikėtina, kad mašinos su defektuota DRAM bus identifikuotos ir pašalintos iš klasterio. Kitos kartos „Google“ mašinose jau buvo pariteto aptikimas atmintyje, o kai ECC atminties kaina nukrito iki konkurencingo lygio, visos paskesnės kartos naudojo ECC-DRAM.

Žymos: pridėti žymų

Vis daugiau žmonių susiduria su RAM nesuderinamumo su kompiuteriu problema. Jie įdiegia atmintį, bet ji neveikia ir kompiuteris neįsijungia. Daugelis vartotojų tiesiog nežino, kad yra keli atminties tipai ir kuris tipas tinka jų kompiuteriui, o kuris ne. Šiame vadove trumpai papasakosiu iš asmeninės patirties apie RAM ir kur kiekviena naudojama.

Jūs nežinote, ką tai reiškia U RAM žymėjime, o tai reiškia E, Ką reiškia R arba F? Šios raidės nurodo atminties tipą - U(Nebuferinis, nebuferinis), E(klaidų taisymo atmintis, ECC), R(registrinė atmintis, registruota), F(FB-DIMM, Fully Buffered DIMM – visiškai buferinis DIMM). Dabar pažvelkime į visas šias rūšis išsamiau.

Kompiuteriuose naudojamos atminties tipai:

1. Nebuferinė atmintis . Įprasta atmintis įprastiems staliniams kompiuteriams, ji taip pat vadinama UDIMM. Paprastai atminties kortelė turi 2, 4, 8 arba 16 atminties lustų vienoje arba abiejose pusėse. Tokios atminties žymėjimas dažniausiai baigiasi raide U (Unbuffered) arba visai be raidės, pavyzdžiui, DDR2 PC-6400, DDR2 PC-6400U, DDR3 PC-8500U arba DDR3 PC-10600. O nešiojamojo kompiuterio atmintyje žymėjimas baigiasi raide S, matyt, tai yra SO-DIMM santrumpa, pavyzdžiui, DDR2 PC-6400S. Žemiau galite pamatyti nebuferinės atminties nuotrauką.

2. Klaida taisant atmintį (ECC atmintis). Įprasta nebuferinė atmintis su klaidų taisymu. Tokia atmintis dažniausiai montuojama Europoje parduodamuose firminiuose kompiuteriuose (NE SERVERIAI), šios atminties privalumas – didesnis patikimumas eksploatacijos metu. Daugumą atminties klaidų galima ištaisyti veikimo metu, net jei jos atsiranda, neprarandant duomenų. Paprastai kiekviena tokios atminties kortelė turi 9 arba 18 atminties lustų; pridedama viena arba 2 lustai. Dauguma įprastų kompiuterių (ne serverių) ir pagrindinių plokščių gali apdoroti ECC atmintį. Tokios atminties žymėjimas dažniausiai baigiasi raide E (ECC), pavyzdžiui, DDR2 PC-4200E, DDR2 PC-6400E, DDR3 PC-8500E arba DDR3 PC-10600E. Žemiau galite pamatyti nebuferinės ECC atminties nuotrauką.

Skirtumas tarp atminties su ECC ir atminties be ECC matosi nuotraukoje:

Nors dauguma parduodamų plokščių palaiko šią atmintį, prieš perkant geriau iš anksto išsiaiškinti suderinamumą su konkrečia plokšte ir procesoriumi. Remiantis asmenine patirtimi, 90–95% pagrindinių plokščių ir procesorių gali valdyti ECC atmintį. Tarp tų, kurie negali veikti: plokštės, pagrįstos Intel G31, Intel G33, Intel G41, Intel G43, Intel 865PE mikroschemų rinkiniais. Visos pagrindinės plokštės ir procesoriai nuo pirmosios kartos Intel Core gali dirbti su ECC atmintimi ir tai nepriklauso nuo pagrindinės plokštės. Kalbant apie AMD procesorius, apskritai beveik visos pagrindinės plokštės gali dirbti su ECC atmintimi, išskyrus individualaus nesuderinamumo atvejus (taip nutinka retais atvejais).

3. Registruoti atmintį (Registruotas). SERVER atminties tipas. Paprastai jis visada išleidžiamas su ECC(klaidų taisymas) ir su "Buferio" lustu. „Buferinis“ lustas leidžia padidinti maksimalų atminties kortelių, kurias galima prijungti prie magistralės, skaičių jos neperkraunant, tačiau tai nereikalingi duomenys, į teoriją nesigilinsime. Pastaruoju metu buferinės ir registruotos sąvokos beveik neskiriamos. Jei norite perdėti: registruokite atmintį = buferinis. Šis prisiminimas veikia TIK serverio pagrindinėse plokštėse galintis dirbti su atmintimi naudojant „buferinį“ lustą.

Paprastai registro atminties juostelės su ECC turi 9, 18 arba 36 atminties lustus ir dar 1, 2 arba 4 „buferinius“ lustus (dažniausiai jie yra centre ir dydžiu skiriasi nuo atminties lustų). Tokios atminties žymėjimas dažniausiai baigiasi raide R (Registered), pavyzdžiui, DDR2 PC-4200R, DDR2 PC-6400R, DDR3 PC-8500R arba DDR3 PC-10600R. Taip pat registro (serverio) (buferinės) atminties žymėjime paprastai yra žodžio Registruotas santrumpa - REG. Žemiau galite pamatyti buferinės (registruotos) atminties su ECC nuotrauką.

Prisiminti! 100% tikimybė, kad registruota atmintis su ECC neveiks įprastose pagrindinėse plokštėse. Tai veikia tik serveriuose!

4. FB-DIMM Visiškai buferinis DIMM(Fully Buffered DIMM) yra kompiuterio atminties standartas, naudojamas siekiant pagerinti atminties posistemio patikimumą, greitį ir tankį. Tradiciniuose atminties standartuose duomenų linijos jungiamos iš atminties valdiklio tiesiai į kiekvieno DRAM modulio duomenų linijas (kartais per buferinius registrus, po vieną registro lustą 1-2 atminties lustams). Didėjant kanalo pločiui arba didėjant duomenų perdavimo spartai, signalo kokybė magistralėje blogėja, o magistralės išdėstymas tampa sudėtingesnis. Tai riboja atminties greitį ir tankį. FB-DIMM taiko kitokį požiūrį į šias problemas. Tai tolimesnis registruotų modulių idėjos plėtojimas – Advanced Memory Buffer buferizuoja ne tik adresų signalus, bet ir duomenis, o į atminties valdiklį naudoja nuosekliąją magistralę, o ne lygiagrečią.

FB-DIMM turi 240 kaiščių ir yra tokio pat ilgio kaip kiti DDR DIMM, tačiau skiriasi skirtukų forma. Tinka tik serverių platformoms.

FB-DIMM specifikacijas, kaip ir kitus atminties standartus, skelbia JEDEC.

„Intel“ naudojo FB-DIMM atmintį sistemose su Xeon 5000 ir 5100 serijos procesoriais ir vėlesnėmis (2006–2008 m.). FB-DIMM atmintį palaiko serverio mikroschemų rinkiniai 5000, 5100, 5400, 7300; tik su „Xeon“ procesoriais, paremtais „Core“ mikroarchitektūra (lizdas LGA771).

2006 m. rugsėjį AMD taip pat atsisakė planų naudoti FB-DIMM atmintį.

Jei jums sunku pasirinkti kompiuterio atmintį, pasitarkite su pardavėju ir pasakykite jam pagrindinės plokštės modelį ir procesoriaus modelį.

P.S.: Neseniai pasirodė dar vienas pigus ir įdomus atminties tipas - aš jį vadinu „kinų padirbinėjimu“. Tiems, kurie dar nesusidūrė, pasakysiu. Tai atmintis, kurią visada galima atpažinti iš kontaktų; dažniausiai jie oksiduojasi, o net ir išvalę per mėnesį ar du vėl oksiduojasi, tampa drumsti, nešvarūs, o atmintis gali sutrikti arba neveikti. visi. Ant šios atminties kontaktų net nėra aukso kvapo. Kitas skirtumas tarp šios atminties ir originalios yra tas, kad ji veikia tam tikrose pagrindinėse plokštėse ar procesoriuose, pavyzdžiui, TIK AMD arba tik kai kuriuose mikroschemų rinkiniuose. Be to, šių mikroschemų rinkinių sąrašas yra labai mažas. Kokia šios „atminties“ paslaptis, man dar neaišku, bet daugelis jį perka – juk jis 40-50% pigesnis nei panašus. O labiausiai stebina tai, kad naujasis "Kiniškas padirbinys" dažniausiai kainuoja pigiau nei originali naudota atmintis :) Apie darbo patikimumą ir ilgaamžiškumą jau nekalbėsiu, čia viskas aišku.

Susiję straipsniai.

Klausimai

Kokius atminties apribojimus nustato šiuolaikinės Windows operacinės sistemos?

Pasenusios, bet kai kur vis dar randamos Windows 9x/ME operacinės sistemos gali veikti tik su 512 MB atminties. Ir nors didelės talpos konfigūracijos jiems visiškai įmanomos, jos kelia kur kas daugiau problemų nei naudos. Šiuolaikinės 32 bitų „Windows 2000/2003/XP“ ir „Vista“ versijos teoriškai palaiko iki 4 GB atminties, tačiau iš tikrųjų programoms galima skirti ne daugiau kaip 2 GB. Išskyrus kelias išimtis, pradinio lygio operacinės sistemos „Windows XP Starter Edition“ ir „Windows Vista Starter“ gali dirbti su atitinkamai ne daugiau kaip 256 MB ir 1 GB atminties. Didžiausias palaikomas 64 bitų „Windows Vista“ tūris priklauso nuo jos versijos ir yra:

  • Home Basic - 8 GB;
  • Home Premium - 16 GB;
  • Ultimate - daugiau nei 128 GB;
  • Verslas - Daugiau nei 128 GB;
  • Įmonė – daugiau nei 128 GB.

Kas yra DDR SDRAM?

DDR atmintis (Double Data Rate) užtikrina duomenų perdavimą atminties mikroschemų rinkinio magistrale du kartus per laikrodžio ciklą abiejuose laikrodžio signalo kraštuose. Taigi, kai sistemos magistralė ir atmintis veikia tuo pačiu laikrodžio dažniu, atminties magistralės pralaidumas yra du kartus didesnis nei įprastos SDRAM.

DDR atminties modulių žymėjimui dažniausiai naudojami du parametrai: arba veikimo dažnis (lygus dvigubam laikrodžio dažniui) – pavyzdžiui, DR-400 atminties laikrodžio dažnis yra 200 MHz; arba didžiausias pralaidumas (Mb/s). To paties DR-400 pralaidumas yra maždaug 3200 Mb/s, todėl jį galima pavadinti PC3200. Šiuo metu DDR atmintis prarado savo aktualumą ir naujose sistemose beveik visiškai pakeista modernesne DDR2. Tačiau norint išlaikyti daugybę senesnių kompiuterių, kuriuose įdiegta DDR atmintis, jos gamyba tebevyksta. Labiausiai paplitę 184 kontaktų DDR moduliai yra PC3200 ir, kiek mažesniu mastu, PC2700 standartai. DDR SDRAM gali turėti Registred ir ECC parinktis.

Kas yra DDR2 atmintis?

DDR2 atmintis yra DDR įpėdinis ir šiuo metu yra dominuojantis stalinių kompiuterių, serverių ir darbo vietų atminties tipas. DDR2 sukurtas veikti aukštesniais dažniais nei DDR, pasižymi mažesniu energijos suvartojimu, taip pat naujų funkcijų rinkiniu (išankstinis paėmimas 4 bitų per laikrodį, įmontuotas nutraukimas). Be to, skirtingai nuo DDR lustų, kurie buvo gaminami tiek TSOP, tiek FBGA paketuose, DDR2 lustai gaminami tik FBGA paketuose (tai suteikia jiems didesnį stabilumą esant aukštiems dažniams). DDR ir DDR2 atminties moduliai tarpusavyje nesuderinami ne tik elektriškai, bet ir mechaniškai: DDR2 naudoja 240 kontaktų juostas, o DDR – 184 kontaktų juostas. Šiandien labiausiai paplitusi atmintis, veikianti 333 MHz ir 400 MHz dažniais, atitinkamai žymima DDR2-667 (PC2-5400/5300) ir DDR2-800 (PC2-6400).

Kas yra DDR3 atmintis?

Atsakymas: Trečiosios kartos DDR atmintis – DDR3 SDRAM netrukus turėtų pakeisti dabartinį DDR2. Naujosios atminties našumas padvigubėjo, palyginti su ankstesne: dabar kiekviena skaitymo arba rašymo operacija reiškia prieigą prie aštuonių DDR3 DRAM duomenų grupių, kurios savo ruožtu yra multipleksuojamos per įvesties / išvesties kaiščius, naudojant du skirtingus atskaitos generatorius keturiuose. kartų didesnis už laikrodžio dažnį Teoriškai efektyvieji DDR3 dažniai bus 800 MHz - 1600 MHz diapazone (esant 400 MHz - 800 MHz laikrodžio dažniams), taigi, DDR3 žymėjimas priklausomai nuo greičio bus: DDR3-800, DDR3-1066, DDR3 -1333, DDR3-1600 . Tarp pagrindinių naujojo standarto privalumų, visų pirma, verta paminėti žymiai mažesnes energijos sąnaudas (maitinimo įtampa DDR3 - 1,5 V, DDR2 - 1,8 V, DDR - 2,5 V).

Kas yra SLI parengta atmintis?

Atsakymas: SLI-Ready atmintį, kitaip dar vadinamą atmintimi su EPP (Enhanced Performance Profiles – našumo didinimo profiliai), sukūrė NVIDIA ir Corsair rinkodaros skyriai. Į SPD modulio lustą įrašomi EPP profiliai, kuriuose, be standartinių atminties laikmačių, taip pat „nurašyta“ optimalios modulių maitinimo įtampos reikšmė, taip pat kai kurie papildomi parametrai.

Dėl EPP profilių sumažėja darbo intensyvumas savarankiškai optimizuojant atminties posistemio veikimą, nors „papildomi“ laiko nustatymai neturi didelės įtakos sistemos veikimui. Taigi naudojant SLI paruoštą atmintį nėra jokios didelės naudos, palyginti su įprasta rankiniu būdu optimizuota atmintimi.

Kas yra ECC atmintis?

ECC (Error Correct Code) yra naudojamas ištaisyti atsitiktines atminties klaidas, kurias sukelia įvairūs išoriniai veiksniai, ir yra patobulinta „pariteto kontrolės“ sistemos versija. Fiziškai ECC įgyvendinamas kaip papildomas 8 bitų atminties lustas, įdiegtas šalia pagrindinių. Taigi moduliai su ECC yra 72 bitų (priešingai nei standartiniai 64 bitų moduliai). Kai kurie atminties tipai (registruotoji, pilnai buferinė) yra prieinami tik ECC versijoje.

Kas yra registruotoji atmintis?

Registruoti atminties moduliai daugiausia naudojami serveriuose, kurie dirba su dideliu kiekiu RAM. Visi jie turi ECC, t.y. yra 72 bitų ir, be to, juose yra papildomų registro lustų, skirtų daliniam (arba pilnam – tokie moduliai vadinami Full Buffered, arba FB-DIMM) duomenų buferiui, taip sumažinant atminties valdiklio apkrovą. Buferiniai DIMM paprastai nesuderinami su nebuferiniais.

Ar galima vietoj įprastos atminties naudoti registruotą ir atvirkščiai?

Nepaisant fizinio jungčių suderinamumo, įprasta nebuferinė atmintis ir registruotoji atmintis tarpusavyje nesuderinamos, todėl neįmanoma naudoti registruotosios atminties vietoj įprastos atminties ir atvirkščiai.

Kas yra BPD?

Bet kuriame DIMM atminties modulyje yra nedidelis SPD (Serial Presence Detect) lustas, kuriame gamintojas įrašo informaciją apie atminties lustų veikimo dažnius ir atitinkamus vėlavimus, būtinus normaliam modulio veikimui užtikrinti. Informaciją iš SPD BIOS nuskaito kompiuterio savitikros metu dar prieš paleidžiant operacinę sistemą ir leidžia automatiškai optimizuoti prieigos prie atminties parametrus.

Ar skirtingų dažnių atminties moduliai gali veikti kartu?

Nėra esminių apribojimų skirtingų dažnių atminties modulių veikimui. Tokiu atveju (su automatiniu atminties derinimu pagal duomenis iš SPD) viso atminties posistemio veikimo greitį lems lėčiausio modulio greitis.

Taip tu gali. Didelis nominalus atminties modulio laikrodžio dažnis jokiu būdu neturi įtakos jo gebėjimui veikti žemesniu laikrodžio dažniu, be to, dėl žemo laiko, kurį galima pasiekti esant žemesniems modulio veikimo dažniams, atminties delsa sumažėja (kartais žymiai). .

Kiek ir kokių atminties modulių reikia įdiegti pagrindinėje plokštėje, kad atmintis veiktų dviejų kanalų režimu?

Apskritai, norint organizuoti atminties veikimą dviejų kanalų režimu, reikia įdiegti lyginį atminties modulių skaičių (2 arba 4), o poromis moduliai turi būti vienodo dydžio ir, pageidautina (nors nebūtinai) - iš tos pačios partijos (arba, blogiausiu atveju, iš to paties gamintojo). Šiuolaikinėse pagrindinėse plokštėse skirtingų kanalų atminties lizdai yra pažymėti skirtingomis spalvomis.

Atminties modulių diegimo juose seka, taip pat visi niuansai, kaip ši plokštė veikia su įvairiais atminties moduliais, paprastai yra išsamiai aprašyta pagrindinės plokštės vadove.

Į kuriuos atminties gamintojus pirmiausia reikėtų atkreipti dėmesį?

Yra keletas atminties gamintojų, kurie mūsų rinkoje pasitvirtino. Tai bus, pavyzdžiui, firminiai OCZ, Kingston, Corsair, Patriot, Samsung, Transcend moduliai.

Žinoma, šis sąrašas toli gražu nėra baigtas, tačiau pirkdami atmintį iš šių gamintojų galite būti tikri jos kokybe su didele tikimybe.

ECC (Error Correct Code) yra naudojamas ištaisyti atsitiktines atminties klaidas, kurias sukelia įvairūs išoriniai veiksniai, ir yra patobulinta „pariteto kontrolės“ sistemos versija.

Fiziškai ECC įgyvendinamas kaip papildomas 8 bitų atminties lustas, įdiegtas šalia pagrindinių.

Taigi moduliai su ECC yra 72 bitų (priešingai nei standartiniai 64 bitų moduliai).

Kai kurie atminties tipai (registruotoji, pilnai buferinė) yra prieinami tik ECC versijoje.

AMD Radeon Software Adrenalin Edition 19.9.2 Pasirenkama tvarkyklė

Naujoji AMD Radeon Software Adrenalin Edition 19.9.2 Papildoma tvarkyklė pagerina Borderlands 3 našumą ir prideda Radeon vaizdo ryškinimo technologijos palaikymą.

„Windows 10“ kaupiamasis naujinimas 1903 KB4515384 (pridėta)

2019 m. rugsėjo 10 d. „Microsoft“ išleido kaupiamąjį „Windows 10“ 1903 versijos naujinimą – KB4515384 su daugybe saugos patobulinimų ir klaidos, dėl kurios buvo pažeista „Windows“ paieška ir sukėlusi didelį procesoriaus naudojimą, pataisymu.

Vairuotojo žaidimui paruošta GeForce 436.30 WHQL

NVIDIA išleido Game Ready GeForce 436.30 WHQL tvarkyklės paketą, kuris skirtas optimizuoti žaidimuose: Gears 5, Borderlands 3 ir Call of Duty: Modern Warfare, FIFA 20, The Surge 2 ir Code Vein“ pataiso daugybę pastebėtų klaidų. ankstesniuose leidimuose ir išplečia G-Sync suderinamų ekranų sąrašą.

AMD Radeon Software Adrenalin 19.9.1 Edition tvarkyklė

Pirmasis AMD Radeon Software Adrenalin 19.9.1 Edition grafikos tvarkyklių rugsėjo leidimas yra optimizuotas Gears 5.

#ECC #Registruotas #Buferinis #Parity #SPD

Error Correct Code (ECC)

ECC arba Error Correct Code - klaidų identifikavimas ir taisymas (galimi ir kiti tos pačios santrumpos dekodavimai) - algoritmas, pakeitęs „pariteto kontrolę“. Priešingai nei pastarasis, kiekvienas bitas yra įtrauktas į daugiau nei vieną kontrolinę sumą, kuri leidžia, jei viename bite įvyksta klaida, atkurti klaidos adresą ir jį ištaisyti. Paprastai aptinkamos ir dviejų bitų klaidos, nors jos ir nėra taisomos. Norint įgyvendinti šias galimybes, modulyje yra įdiegtas papildomas lustas ir jis tampa 72 bitų, priešingai nei įprastinio modulio 64 bitų duomenys.

ECC palaiko visos šiuolaikinės pagrindinės plokštės, skirtos serverių sprendimams, taip pat kai kurie „bendrosios paskirties“ mikroschemų rinkiniai. Kai kurie tipai (registruoti, visiškai buferiniai) galimi tik ECC versijoje. Pažymėtina, kad ECC nėra panacėja nuo sugedusios atminties ir yra naudojama atsitiktinių klaidų taisymui, sumažinant kompiuterio problemų riziką dėl atsitiktinių atminties ląstelių turinio pokyčių, kuriuos sukelia išoriniai veiksniai, pavyzdžiui, foninė spinduliuotė.

Buferinis

Buferinis – buferinis modulis. Dėl didelės bendros elektrinės talpos jų ilgas „įkrovimo“ laikas lemia daug laiko praleidžiant rašymo operacijoms. Siekiant to išvengti, kai kurie moduliai (dažniausiai 168 kontaktų DIMM) yra aprūpinti specialiu lustu (buferiu), kuris gana greitai išsaugo gaunamus duomenis, o tai atlaisvina valdiklį. Buferiniai DIMM paprastai nesuderinami su nebuferiniais. Iš dalies buferiniai moduliai taip pat vadinami "registru" ( Registruotas) ir moduliai su visu buferiu - FB-DIMM. Šiuo atveju „nebuferinis“ reiškia įprastus atminties modulius be buferio priemonių.

Paritetas

Paritetas - paritetas, moduliai su pariteto valdymu, taip pat pariteto valdymas. Gana senas duomenų vientisumo tikrinimo principas. Metodo esmė ta, kad įrašymo stadijoje duomenų baitui apskaičiuojama kontrolinė suma, kuri saugoma kaip specialus pariteto bitas atskiroje mikroschemoje. Skaitant duomenis, kontrolinė suma dar kartą apskaičiuojama ir palyginama su pariteto bitu. Jei jie sutampa, duomenys laikomi autentiškais, kitu atveju generuojamas pariteto klaidos pranešimas (dažniausiai dėl to sistema sustoja). Akivaizdūs metodo trūkumai yra didelės atminties, reikalingos papildomiems pariteto bitams saugoti, sąnaudos, nesaugumas nuo dvigubų klaidų (taip pat klaidingų teigiamų rezultatų, kai yra pariteto bito klaida) ir sistema sustoja net ir esant beprincipo. klaida (tarkim, vaizdo kadre). Šiuo metu netaikoma.

SPD lustas

SPD yra lustas DIMM atminties modulyje, kuriame yra visi duomenys apie jį (ypač našumo informacija), būtini normaliam veikimui užtikrinti. Šie duomenys nuskaitomi kompiuterio savitikros metu, dar gerokai prieš operacinės sistemos paleidimą, ir leidžia konfigūruoti prieigos prie atminties parametrus, net jei sistemoje vienu metu yra skirtingų tipų atminties moduliai. Kai kurios pagrindinės plokštės atsisako dirbti su moduliais, kuriuose nėra įdiegta SPD lusto, tačiau dabar tokie moduliai yra labai reti ir daugiausia yra PC-66 moduliai.