Ինչն է տալիս քեշի բացման մակարդակը 3: Պրոցեսորներ. Ինչ է քեշ հիշողությունը և դրա կառուցվածքը

Լավ օր. Այսօր մենք կփորձենք բացատրել ձեզ այնպիսի բան, ինչպիսին է քեշը: Պրոցեսորի քեշը տվյալների մշակման գերարագ զանգված է, որը 16-17 անգամ ավելի արագ է, քան ստանդարտ RAM-ը, եթե մենք խոսում ենք DDR4-ի մասին:

Այս հոդվածից դուք կսովորեք.

Դա քեշի հիշողության քանակն է, որը թույլ է տալիս պրոցեսորին աշխատել առավելագույն արագությամբ՝ չսպասելով, որ RAM-ը մշակի որևէ տվյալ և ավարտված հաշվարկների արդյունքներն ուղարկի չիպին՝ հետագա մշակման համար: Նմանատիպ սկզբունք կարելի է հետևել HDD-ում, այնտեղ օգտագործվում է միայն 8-128 ՄԲ բուֆեր: Մեկ այլ բան այն է, որ արագությունները շատ ավելի ցածր են, բայց գործընթացը նման է:

Ի՞նչ է պրոցեսորի քեշը:

Ինչպե՞ս է ընդհանուր առմամբ աշխատում հաշվարկի գործընթացը: Բոլոր տվյալները պահվում են պատահական մուտքի հիշողություն, որը նախատեսված է օգտվողի և համակարգի կարևոր տեղեկատվության ժամանակավոր պահպանման համար: Պրոցեսորն իր համար ընտրում է որոշակի թվով առաջադրանքներ, որոնք տեղափոխվում են գերարագ բլոկ, որը կոչվում է քեշ հիշողություն և սկսում է կատարել իր անմիջական պարտականությունները:

Հաշվարկի արդյունքները կրկին ուղարկվում են RAM, բայց շատ ավելի փոքր քանակությամբ (հազար ելքային արժեքների փոխարեն մենք շատ ավելի քիչ ենք ստանում), և նոր զանգված է վերցվում մշակման համար։ Եվ այսպես մինչև գործն ավարտված լինի:

Աշխատանքի արագությունը որոշվում է RAM-ի արդյունավետությամբ: Բայց ոչ մի ժամանակակից DDR4 մոդուլ, ներառյալ 4000 ՄՀց-ից ցածր հաճախականությամբ օվերքլոկային լուծումները, մոտ չեն եղել ամենակայուն պրոցեսորի հնարավորություններին՝ իր «դանդաղ» քեշով:

Դա պայմանավորված է նրանով, որ պրոցեսորի արագությունը միջինում 15 անգամ կամ նույնիսկ ավելի բարձր է, գերազանցում է RAM-ի կատարումը: Եվ մի նայեք միայն հաճախականության պարամետրերին, դրանցից բացի կան բավականաչափ տարբերություններ:
Տեսականորեն պարզվում է, որ նույնիսկ գերհզոր Intel Xeon-ն ու AMD Epyc-ը ստիպված են անգործության մատնվել, բայց իրականում երկու սերվերի չիպերն էլ աշխատում են իրենց սահմանաչափով։ Եվ ամեն ինչ, քանի որ նրանք հավաքում են անհրաժեշտ քանակությամբ տվյալներ քեշի չափով (մինչև 60 ՄԲ կամ ավելի) և անմիջապես մշակում տվյալները: RAM-ը ծառայում է որպես մի տեսակ պահեստ, որտեղից զանգվածները հավաքվում են հաշվարկների համար: Համակարգչի հաշվողական արդյունավետությունը մեծանում է, և բոլորը երջանիկ են։

Համառոտ էքսկուրսիա պատմության մեջ

Քեշի հիշողության մասին առաջին հիշատակումը վերաբերում է 80-ականների վերջին։ Մինչ այդ պրոցեսորի և հիշողության արագությունը մոտավորապես նույնն էր։ Արագ զարգացում RAM-ի արագությունը մեծացնելու համար չիպսեր պահանջվում էին ինչ-որ «կռուտիտ» ստեղծելու համար, սակայն չափազանց արագ չիպեր օգտագործելը շատ թանկ էր, և այդ պատճառով նրանք որոշեցին ավելին անել: տնտեսական տարբերակ- պրոցեսորի մեջ բարձր արագությամբ հիշողության զանգվածի ներդրում:

Քեշի հիշողության մոդուլն առաջին անգամ հայտնվեց Intel 80386-ում: Այդ ժամանակ DRAM-ի հետաձգումը տևում էր 120 նանվայրկյան, մինչդեռ ավելի ժամանակակից SRAM մոդուլը նվազեցրեց հետաձգումը մինչև տպավորիչ 10 նանվայրկյան այն ժամանակ: Մոտավոր պատկերն ավելի հստակ է ցուցադրվում HDD-ի և SSD-ի առճակատման մեջ։

Սկզբում քեշ հիշողությունը զոդվում էր անմիջապես մայր տախտակների վրա՝ ելնելով այն ժամանակվա տեխնիկական գործընթացի մակարդակից։ Սկսած Intel 80486-ից, 8 կբ հիշողությունն ուղղակիորեն ներառված էր պրոցեսորի մատիտի մեջ՝ հետագայում բարձրացնելով կատարողականությունը և կրճատելով մատրիցների տարածքը:

Այս դասավորության տեխնոլոգիան ակտուալ մնաց միայն մինչև Pentium MMX-ի թողարկումը, որից հետո SRAM-հիշողությունը փոխարինվեց ավելի առաջադեմ SDRAM-ով:
Այո, և պրոցեսորները դարձել են շատ ավելի փոքր, և, հետևաբար, դրա անհրաժեշտությունը արտաքին սխեմաներընկել է.

Քեշի մակարդակները

Ժամանակակից պրոցեսորների մակնշման վրա, բացի և, կարող եք գտնել այնպիսի բան, ինչպիսին է 1,2 և 3 մակարդակների քեշի չափը: Ինչպե՞ս է այն սահմանվում և ինչի վրա է այն ազդում: Եկեք հասկանանք պարզ բառերով.

  • Առաջին մակարդակի (L1) քեշը CPU-ի ճարտարապետության ամենակարևոր և ամենաարագ չիպն է: Մեկ պրոցեսորը կարող է տեղավորել միջուկների քանակին հավասար մոդուլների քանակը: Հատկանշական է, որ միկրոսխեման կարող է հիշողության մեջ պահել ամենապահանջված և կարևոր տվյալները միայն իր միջուկից։ Զանգվածի չափը հաճախ սահմանափակվում է 32-64 ԿԲ-ով:
  • Երկրորդ մակարդակի քեշ (L2) - արագության անկումը փոխհատուցվում է բուֆերի չափի մեծացմամբ, որը հասնում է 256 կամ նույնիսկ 512 ԿԲ-ի: Գործողության սկզբունքը նույնն է, ինչ L1-ը, սակայն հիշողության պահանջի հաճախականությունը ավելի ցածր է՝ դրանում ավելի քիչ առաջնահերթ տվյալների պահպանման պատճառով։
  • Երրորդ մակարդակի (L3) քեշը ամենադանդաղ և ծավալուն բաժանումն է բոլոր թվարկվածներից: Այնուամենայնիվ, այս զանգվածը շատ ավելի արագ է, քան RAM-ը: Չափը կարող է հասնել 20, և նույնիսկ 60 ՄԲ-ի, երբ խոսքը վերաբերում է սերվերի չիպերին: Զանգվածի առավելությունը հսկայական է. այն հանդիսանում է համակարգի բոլոր միջուկների միջև տվյալների փոխանակման հիմնական օղակը: Առանց L3-ի, չիպի բոլոր տարրերը ցրված կլինեն:

Վաճառքում դուք կարող եք գտնել երկու և երեք մակարդակի հիշողության կառուցվածք: Ո՞րն է ավելի լավը: Եթե ​​պրոցեսորն օգտագործում եք միայն գրասենյակային ծրագրերի և պատահական խաղերի համար, ապա տարբերություն չեք զգա։ Եթե ​​համակարգը հավաքվում է բարդ 3D խաղերի, արխիվացման, ռենդերի և գրաֆիկայի վրա, ապա որոշ դեպքերում աճը տատանվում է 5-ից 10%:
L3 քեշը արդարացված է միայն այն դեպքում, եթե դուք մտադիր եք պարբերաբար աշխատել բազմաշերտ հավելվածների հետ, որոնք պահանջում են կանոնավոր բարդ հաշվարկներ: Այդ պատճառով սերվերի մոդելները հաճախ օգտագործում են մեծ L3 քեշեր: Թեև կան դեպքեր, երբ դա բավարար չէ, և, հետևաբար, դուք պետք է լրացուցիչ տեղադրեք, այսպես կոչված, L4 մոդուլները, որոնք նման են առանձին միկրոսխեմայի միացված: մայր տախտակ.

Ինչպե՞ս պարզել ձեր պրոցեսորի մակարդակների և քեշի չափը:

Սկսենք նրանից, որ դա կարելի է անել 3 եղանակով.

  • միջոցով հրամանի տող(միայն L2 և L3 քեշ);
  • Ինտերնետում տեխնիկական պայմանների որոնմամբ.
  • օգտագործելով երրորդ կողմի կոմունալ ծառայություններ:

Եթե ​​հիմք ընդունենք այն փաստը, որ պրոցեսորների մեծ մասի համար L1-ը 32 ԿԲ է, իսկ L2-ը և L3-ը կարող են մեծ տատանումներ ունենալ, մեզ անհրաժեշտ են վերջին 2 արժեքները: Նրանց որոնելու համար բացեք հրամանի տողը «Սկսել» (որոնման տողի միջոցով մուտքագրեք «cmd» արժեքը):

Համակարգը L2-ի համար ցույց կտա կասկածելի բարձր արժեք: Դուք պետք է այն բաժանեք պրոցեսորային միջուկների քանակով և պարզեք վերջնական արդյունքը:

Եթե ​​դուք պատրաստվում եք տվյալներ փնտրել ցանցում, ապա նախ պարզեք պրոցեսորի ճշգրիտ անվանումը։ Աջ սեղմեք «Իմ համակարգիչը» պատկերակի վրա և ընտրեք «Հատկություններ»: «Համակարգ» սյունակում կլինի «Պրոցեսոր» կետը, որն իրականում մեզ անհրաժեշտ է: Վերագրեք նրա անունը նույն Google-ում կամ Yandex-ում և տեսեք արժեքը կայքերում։ Հուսալի տեղեկատվության համար ավելի լավ է ընտրել արտադրողի պաշտոնական պորտալները (Intel կամ AMD):
Երրորդ մեթոդը նույնպես խնդիրներ չի առաջացնում, սակայն պահանջում է լրացուցիչ ծրագրերի տեղադրում, ինչպիսիք են GPU-Z, AIDA64 և այլ կոմունալ ծառայություններ՝ քարի բնութագրերը ուսումնասիրելու համար: Տարբերակ օվերքլոքի և մանրակրկիտ լողալու սիրահարների համար:

Արդյունքներ

Այժմ դուք հասկանում եք, թե ինչ է քեշ հիշողությունը, ինչից է կախված դրա չափը և ինչ նպատակների համար է օգտագործվում տվյալների գերարագ զանգվածը: Վրա այս պահինմեծ մասը հետաքրքիր լուծումներշուկայում մեծ քանակությամբ քեշ հիշողության առումով կարելի է անվանել AMD Ryzen 5 և 7 սարքեր՝ իրենց 16 ՄԲ L3-ով:

Հաջորդ հոդվածներում մենք կանդրադառնանք այնպիսի թեմաների, ինչպիսիք են պրոցեսորները, չիպերի առավելությունները և այլն: և մնա մեզ հետ: Մինչև նորից հանդիպենք, ցտեսություն։

Cache - միջանկյալ բուֆեր հետ արագ մուտք A, որը պարունակում է տեղեկատվություն, որն ամենայն հավանականությամբ կպահանջվի: Քեշի տվյալների հասանելիությունն ավելի արագ է, քան RAM-ից (RAM) չմշակված տվյալների բեռնումը և ավելի արագ, քան արտաքին (կոշտ սկավառակ կամ պինդ դրվագ սկավառակ) հիշողությունը, որի պատճառով մուտքի միջին ժամանակը նվազում և ավելանում է: ընդհանուր կատարումըհամակարգչային համակարգ.

Որոշ կենտրոնական պրոցեսորային միավորի (CPU) մոդելներ ունեն իրենց սեփական քեշը, որպեսզի նվազագույնի հասցնեն պատահական մուտքի հիշողությունը (RAM), որն ավելի դանդաղ է, քան ռեգիստրները: Քեշ հիշողությունը կարող է ապահովել զգալի արդյունավետություն, երբ RAM-ի ժամացույցի արագությունը զգալիորեն ցածր է պրոցեսորի ժամացույցի արագությունից: Քեշի հիշողության ժամացույցի արագությունը սովորաբար շատ ավելի քիչ չէ, քան պրոցեսորի հաճախականությունը:

Քեշի մակարդակները

Քեշ CPUբաժանված է մի քանի մակարդակների. Ընդհանուր նշանակության պրոցեսորում մակարդակների թիվը ներկայումս կարող է հասնել 3-ի: N+1 մակարդակի քեշերը սովորաբար ավելի մեծ և դանդաղ են մուտքի և տվյալների փոխանցման մեջ, քան N մակարդակի քեշերը:

Ամենաարագ հիշողությունը առաջին մակարդակի քեշն է՝ L1-cache: Փաստորեն, դա պրոցեսորի անբաժանելի մասն է, քանի որ այն գտնվում է դրա հետ նույն չիպի վրա և ֆունկցիոնալ բլոկների մի մասն է: AT ժամանակակից պրոցեսորներսովորաբար L1 քեշը բաժանվում է երկու քեշի՝ հրահանգների (հրահանգների) քեշի և տվյալների քեշի (Հարվարդի ճարտարապետություն): Առանց L1 քեշի պրոցեսորների մեծ մասը չի կարող գործել: L1 քեշը աշխատում է պրոցեսորի հաճախականությամբ, և ներս ընդհանուր դեպք, այն կարելի է մուտք գործել յուրաքանչյուր ցիկլով: Հաճախ հնարավոր է լինում միաժամանակ կատարել բազմաթիվ ընթերցման/գրելու գործողություններ: Մուտքի հետաձգումը սովորաբար կազմում է 2-4 հիմնական ցիկլ: Ծավալը սովորաբար փոքր է՝ 384 ԿԲ-ից ոչ ավելի:

Երկրորդ ամենաարագը L2-cache-ն է՝ երկրորդ մակարդակի քեշը, սովորաբար այն գտնվում է չիպի վրա, ինչպես L1-ը: Հին պրոցեսորներում չիպսեթը միացված է համակարգի տախտակ. L2 քեշի ծավալը 128 ԿԲ-ից մինչև 1x12 ՄԲ է: Ժամանակակից բազմամիջուկ պրոցեսորներերկրորդ մակարդակի քեշը, որը գտնվում է նույն չիպի վրա, առանձին օգտագործման հիշողություն է՝ nM ՄԲ քեշի ընդհանուր չափով, յուրաքանչյուր միջուկն ունի nM/nC ՄԲ, որտեղ nC-ն պրոցեսորի միջուկների թիվն է: Որպես կանոն, հիմնական չիպի վրա տեղակայված L2 քեշի ուշացումը 8-ից 20 միջուկային ցիկլ է:

Երրորդ մակարդակի քեշը ամենաքիչ արագությունն է, բայց չափերով այն կարող է շատ տպավորիչ լինել՝ ավելի քան 24 ՄԲ: L3 քեշը ավելի դանդաղ է, քան նախորդ քեշերը, բայց դեռ զգալիորեն ավելի արագ է, քան RAM-ը: Բազմապրոցեսորային համակարգերում այն ​​ընդհանուր օգտագործման մեջ է և նախատեսված է տարբեր L2-ի տվյալների համաժամացման համար:

Երբեմն կա նաև 4-րդ մակարդակի քեշ, սովորաբար այն գտնվում է առանձին չիպի մեջ: 4-րդ մակարդակի քեշի օգտագործումը արդարացված է միայն բարձր արդյունավետությամբ սերվերների և հիմնական սարքերի համար:

Տարբեր քեշերի (ինչպես մեկ, այնպես էլ մի քանի պրոցեսորների) միջև համաժամացման խնդիրը լուծվում է քեշի կոհերենցիայի միջոցով։ Տարբեր մակարդակների քեշերի կամ, ինչպես ասում են, քեշի ճարտարապետությունների միջև տեղեկատվության փոխանակման երեք տարբերակ կա՝ ներառական, բացառիկ և ոչ բացառիկ։

Որքանո՞վ է կարևոր L3 քեշը AMD պրոցեսորների համար:

Իրոք, իմաստ ունի բազմամիջուկ պրոցեսորները համալրել հատուկ հիշողությամբ, որը կօգտագործվի բոլոր առկա միջուկների համար: Այս դերում արագ L3 քեշը կարող է զգալիորեն արագացնել մուտքն այն տվյալներին, որոնք ամենից հաճախ պահանջվում են: Հետո միջուկները, եթե նման հնարավորություն լինի, ստիպված չեն լինի մուտք գործել դանդաղ հիմնական հիշողություն (RAM, RAM):

Գոնե տեսականորեն։ AMD-ը վերջերս հայտարարեց Athlon II X4 պրոցեսորի մասին, որը Phenom II X4 մոդել է առանց L3 քեշի, ակնարկելով, որ դա անհրաժեշտ չէ։ Մենք որոշեցինք ուղղակիորեն համեմատել երկու պրոցեսորներ (L3 cache-ով և առանց) տեսնելու, թե ինչպես է քեշն ազդում աշխատանքի վրա:

Ինչպե՞ս է աշխատում քեշը:

Նախքան թեստերի մեջ մտնելը, կարևոր է հասկանալ որոշ հիմունքներ: Քեշի սկզբունքը բավականին պարզ է. Քեշը բուֆերացնում է տվյալները որքան հնարավոր է մոտ պրոցեսորի մշակման միջուկներին, որպեսզի CPU-ի հարցումները կրճատվեն դեպի ավելի հեռավոր և դանդաղ հիշողություն: Ժամանակակից աշխատասեղանի հարթակներում քեշի հիերարխիան ներառում է երեք մակարդակ, որոնք նախորդում են RAM-ի հասանելիությանը: Ընդ որում, երկրորդ և, մասնավորապես, երրորդ մակարդակների քեշերը ծառայում են ոչ միայն տվյալների բուֆերացման համար։ Նրանց նպատակն է կանխել պրոցեսորի ավտոբուսի ծանրաբեռնվածությունը, երբ միջուկները պետք է տեղեկատվություն փոխանակեն:

Հարվածներ և բաց թողած

Քեշի ճարտարապետության արդյունավետությունը չափվում է հարվածների տոկոսով: Տվյալների հարցումները, որոնք կարող են բավարարվել քեշի կողմից, համարվում են հիթեր: Եթե տրված քեշչի պարունակում անհրաժեշտ տվյալներ, այնուհետև հարցումը փոխանցվում է հիշողության խողովակաշարի երկայնքով, և բաց թողնվածը հաշվվում է: Իհարկե, բացթողումները հանգեցնում են ավելի շատ ժամանակի, որն անհրաժեշտ է տեղեկատվություն ստանալու համար: Արդյունքում հաշվողական խողովակաշարում հայտնվում են «փուչիկներ» (դանդարտություն) և ուշացումներ։ Հիթերը, մյուս կողմից, թույլ են տալիս պահպանել առավելագույն կատարումը:

Քեշ գրություն, բացառիկություն, համախմբվածություն

Փոխարինման քաղաքականությունը թելադրում է, թե ինչպես է քեշի տարածությունը հասանելի նոր մուտքերի համար: Քանի որ քեշում գրված տվյալները վաղ թե ուշ պետք է հայտնվեն հիմնական հիշողության մեջ, համակարգերը կարող են դա անել քեշի վրա գրելու հետ միաժամանակ (գրելու միջոցով) կամ կարող են նշել տվյալների տարածքը որպես «կեղտոտ» (գրել հետ): և գրեք հիշողության մեջ, երբ այն կհեռացվի քեշից:

Քեշի մի քանի մակարդակներում տվյալները կարող են պահվել բացառապես, այսինքն՝ առանց ավելորդության: Այնուհետև դուք չեք գտնի տվյալների նույնական տողեր երկու տարբեր քեշի հիերարխիայում: Կամ քեշերը կարող են ներառականորեն աշխատել, այսինքն՝ քեշի ստորին մակարդակները երաշխավորված են պարունակում տվյալներ, որոնք առկա են քեշի վերին մակարդակներում (ավելի մոտ պրոցեսորի միջուկին): AMD Phenom-ն օգտագործում է բացառիկ L3 քեշ, մինչդեռ Intel-ը հետևում է ներառական քեշի ռազմավարությանը: Համապատասխանության արձանագրությունները պահպանում են տվյալները հետևողական և արդիական միջուկների, քեշի շերտերի և նույնիսկ պրոցեսորների միջև:

Քեշի չափը

Ավելի մեծ քեշը կարող է ավելի շատ տվյալներ պահել, բայց հակված է մեծացնել հետաձգումը: Բացի այդ, մեծ քեշը սպառում է զգալի թվով պրոցեսորային տրանզիստորներ, ուստի կարևոր է հավասարակշռություն գտնել տրանզիստորների «բյուջեի», չափի, էներգիայի սպառման և կատարողականի/ուշացման միջև:

Ասոցիատիվություն

RAM-ի գրառումները կարող են ուղղակիորեն քարտեզագրվել քեշին, այսինքն՝ քեշում կա միայն մեկ դիրք RAM-ից տվյալների պատճենման համար, կամ դրանք կարող են լինել n-way ասոցիատիվ, այսինքն՝ քեշում կա n հնարավոր տեղ: որտեղ կարող են պահվել այս տվյալները: Ավելի բարձր ասոցիատիվությունը (մինչև լիովին ասոցիատիվ քեշերը) ապահովում է քեշավորման լավագույն ճկունությունը, քանի որ քեշում առկա տվյալները վերագրանցման կարիք չունեն: Այլ կերպ ասած, ասոցիատիվության բարձր n-աստիճանը երաշխավորում է հարվածների ավելի բարձր մակարդակ, բայց այն մեծացնում է հետաձգումը, քանի որ այս բոլոր ասոցիացիաները հարվածի համար ավելի շատ ժամանակ է պահանջում: Որպես կանոն, կապի ամենաբարձր աստիճանը ողջամիտ է քեշավորման վերջին մակարդակի համար, քանի որ այնտեղ հասանելի է առավելագույն հզորությունը, և այս քեշից դուրս տվյալներ որոնելը կհանգեցնի նրան, որ պրոցեսորը կմտնի դանդաղ RAM:

Մի քանի օրինակ բերելու համար Core i5-ը և i7-ը օգտագործում են 32 ԿԲ L1 քեշ՝ 8-ուղիով ասոցիատիվությամբ տվյալների համար և 32 ԿԲ L1 քեշ՝ 4-ուղի ասոցիատիվությամբ հրահանգների համար: Հասկանալի է, որ Intel-ը ցանկանում է, որ հրահանգները հասանելի լինեն ավելի արագ, իսկ տվյալների համար նախատեսված L1 քեշն ունի այցելությունների առավելագույն տոկոս: Intel-ի L2 քեշն ունի 8-ուղի ասոցիատիվություն, մինչդեռ Intel-ի L3 քեշը նույնիսկ ավելի խելացի է, քանի որ այն իրականացնում է 16-ուղի ասոցիատիվություն՝ առավելագույնի հասցնելու հարվածները:

Այնուամենայնիվ, AMD-ն այլ ռազմավարություն է հետապնդում Phenom II X4 պրոցեսորների հետ կապված, որոնք օգտագործում են L1 քեշը երկկողմանի ասոցիատիվությամբ՝ ուշացումը նվազեցնելու համար: Հնարավոր բացթողումները փոխհատուցելու համար քեշի հզորությունը կրկնապատկվեց՝ 64 ԿԲ տվյալների համար և 64 ԿԲ՝ հրահանգների համար: L2 քեշն ունի 8-ուղի ասոցիատիվություն, ինչպես Intel դիզայնը, բայց AMD-ի L3 քեշն աշխատում է 48-ուղի ասոցիատիվությամբ: Բայց այս կամ այն ​​քեշի ճարտարապետությունը ընտրելու որոշումը չի կարելի դատել առանց CPU-ի ամբողջ ճարտարապետությունը հաշվի առնելու: Միանգամայն բնական է, որ թեստի արդյունքները գործնական նշանակություն ունեն, և մեր նպատակն ընդամենը այս ամբողջ բարդ բազմաստիճան քեշավորման կառուցվածքի գործնական փորձարկումն էր:

Տարբեր առաջադրանքներ կատարելիս RAM-ից տեղեկատվության անհրաժեշտ բլոկները ստանում են ձեր համակարգչի պրոցեսորը: Մշակելով դրանք՝ պրոցեսորը հիշողության մեջ գրում է հաշվարկների արդյունքները և ստանում տվյալների հետագա բլոկներ՝ մշակման համար: Սա շարունակվում է մինչև առաջադրանքի ավարտը:

Վերոնշյալ գործընթացներն իրականացվում են շատ մեծ արագությամբ։ Այնուամենայնիվ, նույնիսկ ամենաարագ RAM-ի արագությունը զգալիորեն մեծ է ավելի քիչ արագությունցանկացած թույլ պրոցեսոր. Յուրաքանչյուր գործողություն, լինի դա նրան տեղեկատվություն գրելը, թե դրանից կարդալը, շատ ժամանակ է պահանջում: RAM-ի արագությունը տասն անգամ ցածր է պրոցեսորի արագությունից։

Չնայած տեղեկատվության մշակման արագության նման տարբերությանը, ԱՀ պրոցեսորը պարապ չէ և չի սպասում, որ RAM-ը թողարկի և ստանա տվյալներ: Պրոցեսորը միշտ աշխատում է և ամեն ինչ շնորհիվ դրա մեջ քեշի հիշողության առկայության:

Քեշը RAM-ի հատուկ տեսակ է: Պրոցեսորն օգտագործում է քեշ հիշողությունը՝ համակարգչի հիմնական RAM-ից տեղեկատվության այն պատճենները պահելու համար, որոնք, ամենայն հավանականությամբ, հասանելի կլինեն մոտ ապագայում:

Ըստ էության, քեշի հիշողությունը հանդես է գալիս որպես բարձր արագությամբ հիշողության բուֆեր, որը պահպանում է տեղեկատվությունը, որը կարող է անհրաժեշտ լինել պրոցեսորին: Այսպիսով, պրոցեսորը տասն անգամ ավելի արագ է ստանում անհրաժեշտ տվյալները, քան դրանք RAM-ից կարդալիս։

Քեշի հիշողության և սովորական բուֆերի հիմնական տարբերությունը ներկառուցվածն է տրամաբանական գործառույթներ. Բուֆերը պահում է պատահական տվյալներ, որոնք սովորաբար մշակվում են «առաջին ստացված, առաջին թողարկված» կամ «առաջին ստացված, վերջին թողարկված» սխեմայի համաձայն: Քեշը պարունակում է տվյալներ, որոնք, ամենայն հավանականությամբ, հասանելի կլինեն մոտ ապագայում: Հետևաբար, «խելացի քեշի» շնորհիվ պրոցեսորը կարող է աշխատել ամբողջ արագությամբ և չսպասել, որ տվյալները վերականգնվեն ավելի դանդաղ RAM-ից:

L1 L2 L3 քեշի հիմնական տեսակներն ու մակարդակները

Քեշ հիշողությունը պատրաստված է ստատիկ պատահական մուտքի հիշողության (SRAM) չիպերի տեսքով, որոնք տեղադրված են համակարգի տախտակի վրա կամ ներկառուցված պրոցեսորի մեջ: Համեմատած հիշողության այլ տեսակների հետ՝ ստատիկ հիշողությունը կարող է գործել շատ բարձր արագությամբ:

Քեշի արագությունը կախված է որոշակի չիպի ծավալից, որքան մեծ է չիպի ծավալը, այնքան ավելի դժվար է դրան հասնելը բարձր արագությունիր աշխատանքի համար։ Հաշվի առնելով այս հատկանիշը, արտադրության ընթացքում պրոցեսորի քեշ հիշողությունը պատրաստվում է մի քանի փոքր բլոկների տեսքով, որոնք կոչվում են մակարդակներ։ Այսօր ամենատարածվածը եռաստիճան քեշ համակարգն է L1, L2, L3:

Առաջին մակարդակի L1 քեշ հիշողություն - ծավալով ամենափոքրը (ընդամենը մի քանի տասնյակ կիլոբայթ), բայց արագությամբ ամենաարագը և ամենակարևորը: Այն պարունակում է պրոցեսորի կողմից առավել հաճախ օգտագործվող տվյալները և աշխատում է առանց ուշացման: Սովորաբար, L1 հիշողության չիպերի թիվը հավասար է պրոցեսորային միջուկների քանակին, ընդ որում յուրաքանչյուր միջուկը հասանելի է միայն իր L1 չիպին:

L2 քեշ այն արագությամբ զիջում է L1 հիշողությանը, բայց հաղթում է ծավալով, որն արդեն չափվում է մի քանի հարյուր կիլոբայթով։ Ժամանակավոր պահպանման համար է։ կարեւոր տեղեկություններ, մուտք գործելու հավանականությունը ավելի ցածր է, քան L1 քեշում պահվող տեղեկատվությանը։

Երրորդ մակարդակի L3 քեշ - ունի երեք մակարդակներից ամենամեծ ծավալը (այն կարող է հասնել տասնյակ մեգաբայթերի), բայց ունի նաև ամենադանդաղ արագությունը, որը դեռ զգալիորեն բարձր է RAM-ի արագությունից: L3 քեշը համօգտագործվում է բոլոր պրոցեսորային միջուկներում: L3 հիշողության մակարդակը նախատեսված է այն կարևոր տվյալների ժամանակավոր պահպանման համար, որոնց հասանելիության հավանականությունը մի փոքր ավելի ցածր է, քան L1, L2 առաջին երկու մակարդակներում պահվող տեղեկատվությանը: Այն նաև ապահովում է պրոցեսորային միջուկների փոխազդեցությունը միմյանց հետ։

Պրոցեսորների որոշ մոդելներ պատրաստված են քեշի երկու մակարդակով, որոնցում L2-ը համատեղում է L2-ի և L3-ի բոլոր գործառույթները:

Երբ մեծ քանակությամբ քեշը օգտակար է:

Դուք զգալի ազդեցություն կզգաք մեծ քանակությամբ քեշից՝ արխիվացնող ծրագրեր օգտագործելիս, 3D խաղերում, տեսանյութերի մշակման և կոդավորման ժամանակ։ Համեմատաբար «թեթև» ծրագրերում և հավելվածներում տարբերությունը գործնականում նկատելի չէ ( գրասենյակային ծրագրեր, խաղացողներ և այլն):

Համակարգչային պրոցեսորները վերջին մի քանի տարիների ընթացքում զգալի առաջընթաց են գրանցել: Տարեցտարի տրանզիստորների չափերը նվազում են, իսկ արտադրողականությունը՝ աճում։ Միաժամանակ Մուրի օրենքն արդեն դառնում է անտեղի։ Ինչ վերաբերում է պրոցեսորների աշխատանքին, ապա պետք է հաշվի առնել ոչ միայն տրանզիստորների քանակն ու հաճախականությունը, այլ նաև քեշի քանակը։

Հնարավոր է, որ դուք արդեն լսել եք քեշ հիշողության մասին պրոցեսորների մասին տեղեկություններ փնտրելիս: Բայց, սովորաբար, այս թվերին մենք առանձնապես ուշադրություն չենք դարձնում, նույնիսկ պրոցեսորային գովազդներում դրանք առանձնապես աչքի չեն ընկնում։ Տեսնենք, թե ինչի վրա է ազդում պրոցեսորի քեշը, ինչ տեսակի քեշ կա և ինչպես է այդ ամենը աշխատում:

Եթե ​​խոսել պարզ բառերով, ապա պրոցեսորի քեշը պարզապես շատ արագ հիշողություն է: Ինչպես արդեն գիտեք, համակարգիչը ունի մի քանի տեսակի հիշողություն: Սա միայն կարդալու հիշողություն է, որն օգտագործվում է տվյալների պահպանման համար, օպերացիոն համակարգև ծրագրեր, ինչպիսիք են SSD կամ HDD. Համակարգիչը նաև օպերատիվ հիշողություն է օգտագործում: Սա պատահական մուտքի հիշողություն է, որը շատ ավելի արագ է, քան մշտականը: Եվ վերջապես, պրոցեսորն ունի նույնիսկ ավելի արագ հիշողության բլոկներ, որոնք միասին կոչվում են քեշ:

Եթե ​​համակարգչի հիշողությունը համարում եք հիերարխիա իր արագությամբ, ապա քեշը կլինի այս հիերարխիայի վերևում: Բացի այդ, այն ամենամոտ է հաշվողական միջուկներին, քանի որ պրոցեսորի մի մասն է։

Պրոցեսորի քեշ հիշողությունը ստատիկ հիշողություն է (SRAM) և նախատեսված է RAM-ի հետ աշխատանքը արագացնելու համար: Ի տարբերություն Dynamic Random Access Memory-ի (DRAM), տվյալները կարող են պահվել այստեղ՝ առանց անընդհատ թարմացնելու:

Ինչպե՞ս է աշխատում պրոցեսորի քեշը:

Ինչպես արդեն գիտեք, ծրագիրը հրահանգների մի շարք է, որը կատարում է պրոցեսորը: Երբ դուք գործարկում եք ծրագիր, համակարգիչը պետք է այս հրահանգները փոխանցի միայն կարդալու հիշողությունից պրոցեսոր: Հենց այստեղ է ի հայտ գալիս հիշողության հիերարխիան: Նախ, տվյալները բեռնվում են RAM-ում, այնուհետև փոխանցվում պրոցեսորին:

Այս օրերին պրոցեսորը կարող է վայրկյանում ահռելի քանակությամբ հրահանգներ մշակել: Իր հնարավորություններից առավելագույնս օգտագործելու համար պրոցեսորին անհրաժեշտ է գերարագ հիշողություն: Հետևաբար, քեշը մշակվել է:

Պրոցեսորի հիշողության կարգավորիչը կատարում է RAM-ից տվյալներ ստանալու և քեշ ուղարկելու աշխատանքը: Կախված ձեր համակարգում օգտագործվող պրոցեսորից, այս կարգավորիչը կարող է տեղակայվել մայր տախտակի հյուսիսային կամրջում կամ հենց պրոցեսորի մեջ: Քեշը նաև պահպանում է հրահանգների կատարման արդյունքները պրոցեսորում։ Բացի այդ, պրոցեսորի քեշն ինքնին նույնպես ունի իր հիերարխիան:

Պրոցեսորի քեշի մակարդակները - L1, L2 և L3

Ամբողջ պրոցեսորի քեշը բաժանված է երեք մակարդակի՝ L1, L2 և L3: Այս հիերարխիան հիմնված է նաև քեշի արագության, ինչպես նաև դրա չափի վրա:

  • L1 քեշ (առաջին մակարդակի քեշ)պրոցեսորի քեշի ամենաարագ տեսակն է: Ինչ վերաբերում է մուտքի առաջնահերթությանը, այս քեշը պարունակում է ցանկացած տվյալ, որը կարող է անհրաժեշտ լինել ծրագրին որոշակի հրահանգ կատարելու համար.
  • L2 Cache (պրոցեսորի երկրորդ մակարդակի քեշ)- ավելի դանդաղ, քան L1, բայց ավելի մեծ չափերով: Դրա ծավալը կարող է լինել 256 կիլոբայթից մինչև ութ մեգաբայթ: L2 քեշը պարունակում է տվյալներ, որոնք ապագայում կարող են անհրաժեշտ լինել պրոցեսորին: Ժամանակակից պրոցեսորների մեծ մասում L1 և L2 քեշերը առկա են հենց պրոցեսորի միջուկների վրա, որոնցից յուրաքանչյուրը ստանում է իր սեփական քեշը;
  • L3 քեշ (երրորդ մակարդակի քեշ)ամենամեծ և դանդաղ քեշն է: Դրա չափը տարածաշրջանում կարող է լինել 4-ից 50 մեգաբայթ: Ժամանակակից պրոցեսորներում չիպի վրա առանձին տեղ է հատկացվում L3 քեշի համար։

Այս պահին սրանք բոլորը պրոցեսորային քեշի մակարդակներն են, Intel-ը փորձել է ստեղծել L4 քեշ, սակայն այս տեխնոլոգիան դեռևս չի արմատավորվել:

Ինչի համար է քեշը պրոցեսորում:

Ժամանակն է պատասխանել այս հոդվածի հիմնական հարցին, թե ինչի վրա է ազդում պրոցեսորի քեշը: Տվյալները հոսում են RAM-ից L3 քեշ, այնուհետև L2 և այնուհետև L1: Երբ պրոցեսորին անհրաժեշտ է տվյալ՝ գործողություն կատարելու համար, նա փորձում է գտնել այն L1 քեշում, իսկ եթե գտնում է, ապա այս իրավիճակը կոչվում է քեշի հարված։ Հակառակ դեպքում որոնումը շարունակվում է L2 և L3 քեշերում: Եթե ​​նույնիսկ հիմա տվյալները չեն գտնվել, հարցում է արվում RAM-ին։

Այժմ մենք գիտենք, որ քեշը նախատեսված է RAM-ի և պրոցեսորի միջև տեղեկատվության փոխանցումն արագացնելու համար: Հիշողությունից տվյալները հանելու համար պահանջվող ժամանակը կոչվում է Latency: L1 քեշն ունի ամենացածր հետաձգումը, ուստի այն ամենաարագն է, L3 քեշը ամենաբարձրն է: Երբ քեշում տվյալներ չկան, մենք ավելի մեծ ուշացում ենք զգում, քանի որ պրոցեսորը պետք է մուտք գործի հիշողություն:

Նախկինում պրոցեսորների նախագծման ժամանակ L2 և L3 քեշերը տեղափոխվում էին պրոցեսորից դուրս, ինչը հանգեցնում էր բարձր հետաձգման: Այնուամենայնիվ, արտադրական գործընթացի կրճատումը, որով արտադրվում են պրոցեսորները, թույլ է տալիս միլիարդավոր տրանզիստորներ տեղավորել նախկինից շատ ավելի փոքր տարածության մեջ: Արդյունքում տարածք է ազատվում՝ քեշը հնարավորինս մոտ միջուկներին տեղադրելու համար՝ հետագայում նվազեցնելով հետաձգումը:

Ինչպե՞ս է քեշը ազդում աշխատանքի վրա:

Քեշի ազդեցությունը համակարգչի աշխատանքի վրա ուղղակիորեն կախված է դրա արդյունավետությունից և քեշի հարվածների քանակից: Իրավիճակները, երբ քեշում տվյալներ չկան, մեծապես նվազեցնում են ընդհանուր կատարումը:

Պատկերացրեք, որ պրոցեսորը 100 անգամ անընդմեջ բեռնում է տվյալները L1 քեշից: Եթե ​​քեշի հարվածի տոկոսը 100% է, պրոցեսորից կպահանջվի 100 նանվայրկյան այս տվյալները ստանալու համար: Այնուամենայնիվ, հենց որ հարվածի տոկոսը իջնի մինչև 99%, պրոցեսորը պետք է տվյալներ վերցնի L2 քեշից, և արդեն կա 10 նանվայրկյան ուշացում: Դուք ստանում եք 99 նանվայրկյան 99 հարցման համար և 10 նանվայրկյան 1 հարցման համար: Հետևաբար, քեշի հարվածների տոկոսը 1%-ով նվազեցնելը նվազեցնում է պրոցեսորի աշխատանքը 10%-ով:

Իրական ժամանակում քեշի հարվածների տոկոսը 95-ից 97% է: Բայց ինչպես հասկանում եք, այս ցուցանիշների միջև կատարողականի տարբերությունը կազմում է ոչ թե 2%, այլ 14%: Նկատի ունեցեք, որ օրինակում մենք ենթադրում ենք, որ ներված տվյալները միշտ գտնվում են L2 քեշում, իրական կյանքում տվյալները կարող են հեռացվել քեշից, ինչը նշանակում է, որ դրանք պետք է վերցվեն RAM-ից, որն ունի ուշացում: 80-120 նանվայրկյան: Այստեղ 95-ի և 97 տոկոսի տարբերությունն ավելի էական է։

Վատ քեշի կատարումը AMD պրոցեսորներԲուլդոզերն ու Պիլեդրայվերը նրանց պարտության հիմնական պատճառներից մեկն էին Intel պրոցեսորներ. Այս պրոցեսորներում L1 քեշը տարածվում էր բազմաթիվ միջուկների վրա՝ դարձնելով այն շատ անարդյունավետ: Ժամանակակից Ryzen պրոցեսորները չունեն այս խնդիրը:

Կարելի է եզրակացնել, որ որքան մեծ է քեշը, այնքան բարձր է կատարումը, քանի որ պրոցեսորն ավելի արագ կարող է ստանալ իրեն անհրաժեշտ տվյալներն ավելի շատ դեպքերում։ Այնուամենայնիվ, արժե ուշադրություն դարձնել ոչ միայն պրոցեսորի քեշի չափին, այլև դրա ճարտարապետությանը:

եզրակացություններ

Այժմ դուք գիտեք, թե ինչի համար է պատասխանատու պրոցեսորի քեշը և ինչպես է այն աշխատում: Քեշի դիզայնը մշտապես զարգանում է, իսկ հիշողությունը դառնում է ավելի արագ ու էժան: AMD-ն ու Intel-ն արդեն բազմաթիվ փորձեր են արել քեշի հետ, և Intel-ը նույնիսկ փորձել է օգտագործել L4 քեշը։ Պրոցեսորների շուկան աճում է ավելի արագ, քան երբևէ: Քեշի ճարտարապետությունը կհամապատասխանի պրոցեսորների անընդհատ աճող հզորությանը:

Բացի այդ, շատ բան է արվում ժամանակակից համակարգիչների մեջ առկա խոչընդոտները վերացնելու ուղղությամբ: Հիշողության հետաձգման նվազեցումը այս աշխատանքի ամենակարևոր մասերից մեկն է: Ապագան շատ խոստումնալից է թվում:

Նմանատիպ գրառումներ.