Скільки рівнів кеш пам'яті

Скільки рівнів кеш пам'яті



Рівні кешу процесора та вплив на продуктивність

Коли ми говоримо про продуктивність комп'ютера, одним із ключових факторів є швидкість обробки даних процесором. І тут на допомогу приходить кеш CPU - Невелика, але дуже важлива частина процесора, яка грає вирішальну роль у прискоренні роботи комп'ютера.

Як працює кеш ЦП і що таке кеш L1, L2 та L3? Чи готові розібратися в тому, як працює кеш CPU і які переваги він може принести? Тоді продовжуйте читання та приготуйтеся до захоплюючого занурення у технічний світ комп'ютерних процесорів!

Що таке кеш процесора

Кеш процесора відноситься до пам'яті, вбудованої безпосередньо в CPU. Він відрізняється від системної пам'яті (ОЗП), яка встановлена ​​на материнській платі і, насправді, набагато повільніша, ніж кеш-пам'ять ЦП.

Давайте розберемо деякі з цих відмінностей.

Чим кеш ЦП відрізняється від системної пам'яті (RAM, VRAM, ETC)

Якщо оперативна пам'ять ПК є системною пам'яттю, навіщо центральному процесору власний виділений вбудований кеш?

Врешті-решт оперативна пам'ять з кожним роком стає тільки швидше, причому як DDR4, так і DDR5 RAM розсувають межі частоти DRAM.

Відповідь на подив проста: системна пам'ять як і раніше недостатньо швидка, і навіть незважаючи на те, що вона встановлена ​​ближче до ЦП, ніж будь-який з інших компонентів, ця відстань, як і раніше, має значення з точки зору передачі сигналу.

Кеш ЦП необхідний, тому що до того часу, коли ваше сховище та ОЗУ розібралися, що ви робите, ваш ЦП ще повинен розбити те, що він робить в режимі реального часу, двійковою машинною мовою.

Це вимагає деякої випереджальної швидкості з боку ЦП, навіть якщо кеш-пам'ять ЦП зазвичай вимірюється десятками мегабайт, а не дюжиною чи більше гігабайт, як системна оперативна пам'ять.

Як працює кеш процесора

Таким чином, Мета кеша ЦП полягає в тому, щоб розбити все, що відбувається на вашому ПК, на прості 1 і 0, з якими ЦП фактично працює.

Для порівняння, виділена системна оперативна пам'ять може зберігати практично будь-які дані, від додатків до відеофайлів і т.д., коли ви виконуєте рендеринг відео.

Кеш ЦП призначений для управління фактичними інструкціями в реальному часі, що подаються на ЦП, а більший розмір кешу ЦП знижує потребу в частому доступі ЦП до системної пам'яті, підвищуючи продуктивність у робочих навантаженнях, чутливих до кешу ЦП.

Докладніше про це трохи пізніше!

Що таке кеш L1, L2 та L3

Кеш L1

Кеш L1 або Кеш першого рівня - Це основний кеш ЦП. Це найшвидший «рівень» кеша ЦП, а також маленький об'єм пам'яті. Чим швидше/нижче рівень кешу, тим менше циклів потрібно вашому процесору для доступу до нього.

Для зовнішнього користувача ці «цикли» відповідають окремим герцям на процесорах, здатних обробляти декілька гігагерц циклів за секунду, це означає, що сучасний ЦП обробляє мільярди циклів за секунду.

Так що насправді різниця між кешем L1 та L2, про яку ми тут говоримо, помітна лише на боці машини. Однак, ця різниця все ще має значення, Тож давайте поговоримо про кеш L2!

Кеш L2

Кеш L2 або Кеш другого рівняє вторинним кешем ЦП. Він повільніше, ніж кеш-пам'ять рівня 1, але все ж таки досить швидкий і забезпечує значний приріст обсягу пам'яті.

Залежно від того, чи є у вашого ЦП кеш-пам'ять L3 чи ні, кеш-пам'ять L2 буде або розподілена між окремими ядрами ЦП, або спільно використовуватиметься всіма ядрами ЦП. Донедавна процесори Intel використовували лише кеш-пам'ять L2, тоді як AMD використовує кеш-пам'ять L3 вже кілька років.

В наші дні Intel також використовує Cache L3хоча він розподіляється по-різному залежно від того, чи є ядро ​​ЦП P-Core або E-Core.

Кеш L3

Нарешті, поговоримо про кеш L3, також відомий як кеш третього рівня.

Кеш L3 повільніше, ніж кеш рівня 1 та 2, але служить цілі зробити їх обох швидшенадаючи їм найбільший пул пам'яті на ЦП.

Кеш L3 також використовується всіма ядрами ЦП, тоді як Кеш L1 і L2 зазвичай вбудовані в окремі ядра.

Як кеш процесора впливає на продуктивність

Тепер, коли ми розглянули основи того, що таке кеш ЦП, поговоримо про те, як він може вплинути на продуктивність.

Я думаю, що найкращим прикладом для цієї статті буде AMD Ryzen 5800X та його варіант 5800X3D .

Це більш менш однакові ЦП з точки зору архітектури ядра ЦП і кількості ядер, але 3D-варіант може похвалитися набагато більшою кеш-пам'яттю L3 (колосальні 96 МБ у 3D у порівнянні з 32 МБ на стандартному 5800X).

Це значно спрощує кількісну оцінку того, як підвищення кеш-пам'яті ЦП впливає на продуктивність, оскільки, як правило, кеш-пам'ять ЦП поступово збільшується разом з іншими характеристиками ЦП у міру того, як ви піднімаєтеся стеком продуктів.

Технічно ЦП зажадав деяких змін, щоб уможливити збільшення кеш-пам'яті L3. Базовий та підвищуючий блоки в 3D знижено до 3,4 ГГц і 4,5 ГГц, відповідно, порівняно зі специфікацією 3,8-4,7 ГГц вихідного 5800X.

Крім того, 3D взагалі не підтримує розгін. Це досить незначне зниження тактової частоти, але все ж таки варто відзначити.

Як впливає на продуктивність підвищення кеш-пам'яті ЦП без істотної зміни решти ЦП? Давайте подивимося ближче.

З точки зору створення контенту, підвищення кеш-пам'яті L3 або забезпечує істотного приросту продуктивності здебільшого робочих навантажень (оскільки кеш-пам'ять спочатку не була вузьким місцем), або активно знижує продуктивність через інші жертви, які довелося принести для збільшений кеш L3, наприклад, нижчі тактові частоти.

Проте, для ігор збільшення кеш-пам'яті L3 виявляється дуже корисним.

Згідно з проведеним тестом 5800X3D з 41 грою, збільшення кеш-пам'яті L3 дуже істотно для ігрової продуктивності, якщо гра правильно оптимізована.

Навіть найінтенсивніша гра в цьому списку Microsoft Flight Simulator показує колосальний приріст продуктивності в середньому на 21%.

Ті, хто особливо добре знається на ігрових тестах, також повинні знати про важливість підвищення мінімумів на 1%оскільки вони вказують, коли ігровий двигун щосили намагається відобразити все на екрані.

Збільшений кеш L3 дуже допомагає у цих сценаріях, як показано нижче:

Джерело: TechSpot Який висновок?

Очевидно, що ви не можете реально збільшити кеш процесора без змін весь процесор.

Для покупця набагато розумніше дивитися на тести для ваших робочих навантажень при оцінці того, який ЦП найкраще відповідає вашим потребам, а не те, який з них просто має більше або менше кеш-пам'яті.

Тим не менш, 5800X і 5800X3D надали нам безпрецедентний погляд на те, як насправді може вплинути на продуктивність процесора втрачена на увазі специфікація кеш-пам'яті процесора.

Виявляється, це дійсно добре для ігор та деяких робочих навантажень, таких як кодування H.264. Але, загалом, кеш-пам'ять процесора не повинна бути вашим основним пріоритетом при покупці процесора, навіть якщо більший кеш-пам'ять процесора краще для ігрової продуктивності

Часті питання

Чи існує кеш L4?

Якщо ви уважно стежили за цією статтею, ви могли помітити, що кеш L1 і L2 тривалий час був стандартом, а кеш L3 використовувався тільки для процесорів AMD до пізніших поколінь процесорів Intel.

Без наявності кешу L3 кеш L2 значною мірою виконував ту ж роль на старих процесорах.

Таким чином, кеш L4 є ще одним рівнем більш високої ємності та нижчої швидкості вбудованої пам'яті ЦП. Це досить рідко і не поширене в процесорах для настільних ПК, але воно існуєособливо якщо аналізований процесор для настільних ПК має вбудовану графіку.

Згодом це може навіть стати більш поширеним явищем, оскільки Intel оголосила, що їх процесори 14 покоління будуть використовувати кеш L4.

Чи завжди кеш-пам'ять L2 та кеш-пам'ять L3 включені до ЦП?

Кеш L3, так.

Кеш L2, майже завжди так. Однак, у минулому L2-кеш також виявлявся на співпроцесорі у безпосередній близькості від ЦП.

В наші дні всі «L-кеші» знаходяться на самому ЦП, а ОЗУ та відеопам'ять графічного процесора є єдиними джерелами пам'яті, доступними для решти системи та ЦП після використання власного кешу.

Правда в тому, що мені потрібно було скоротити досить багато інформації, що досліджується для цієї статті, на користь збереження стислості та доступності для ширшої аудиторії.

Глибокі тонкощі кешування ЦП та інструкцій ЦП небагато… виходять за рамки цієї статті, особливо якщо ви не програміст чи інженер. Тим не менш, ми сподіваємося, що наведена інформація допоможе зрозуміти, як кеш ЦП впливає на продуктивність!

Що таке кеш-пам'ять – для чого потрібна комп'ютеру та як працює

Кеш-пам'ять або просто кеш, це тип пам'яті, який використовується для прискорення виконання програм. Її можна як розширення основний пам'яті комп'ютера RAM (Random Access Memory).

Кеш-пам'ять використовується апаратним забезпеченням для зберігання даних, що найбільш часто використовуються, для збільшення швидкості відгуку комп'ютера і, отже, його продуктивності.

Щоб зрозуміти, що таке кеш, ми повинні пояснити, у чому різниця між оперативною пам'яттю та кешем.

У чому різниця між оперативкою та кешем

Оперативна пам'ять (RAM) організована як послідовність осередків пам'яті. Щоразу, коли центральний процесор комп'ютера повинен рахувати або записати інформацію в оперативну пам'ять, він повинен ідентифікувати комірку, в якій зберігається інформація. Після отримання запиту від процесора осередок пам'яті відповідає, надаючи свої дані. Цей час відгуку називається часом доступу (читання або записування).

Навіть якщо це дуже короткий час, він дуже великий для процесора, який виконує операції набагато швидше, ніж оперативна пам'ять.

Щоб скоротити час очікування процесора, комп'ютер використовує кеш, – набагато швидший тип пам'яті порівняно з основною пам'яттю.

Тому для оптимізації продуктивності об'єднано два типи пам'яті. Великий обсяг пам'яті з повільним часом доступу в ОЗП та невеликий об'єм пам'яті з дуже швидким часом доступу в кеші.

Чому б просто не використовувати кеш-пам'ять, якщо вона швидше? Тому що кеш набагато дорожчий за оперативну пам'ять і з цієї причини його використовують тільки в невеликих кількостях.

Як працює кеш-пам'ять

Щоб зрозуміти, що таке кешування та як воно працює, нам потрібно пояснити, що таке принцип локальності.

Принцип локальності говорить, що коли центральний процесор зчитує дані з осередків основної пам'яті комп'ютера, цілком імовірно, що інші дані, які він буде використовувати, також будуть розташовані поряд з коміркою, що розглядається. З цієї причини вся інформація, суміжна із запитуваним центральним процесором, передається в кеш. Коли комп'ютерний процесор запитує нову інформацію, вона, швидше за все, вже буде в кеші.

У випадку, якщо запитані дані не кешуються, центральний процесор зробить запит на основну пам'ять, щоб знайти комірку, що містить інформацію. Також у цьому випадку центральний процесор передаватиме інформацію, суміжну з інформацією про комірку, яка використовується в кеші. Цей процес триватиме доти, доки кеш повністю не заповниться.

Рівні кеш-пам'ять

Після розуміння, що таке кеш-пам'ять, давайте подивимося, скільки існує типів або рівнів кеш-пам'яті.

Є 4 можливі рівні (L), і вони організовані ієрархічно:

  • L1 або кеш першого рівня. Він є внутрішнім по відношенню до процесора і часто поділяється на кеш даних та кеш інструкцій.
  • L2 або кеш другого рівня. Він може бути як внутрішнім, так і зовнішнім і не розрізняє дані та інструкції.
  • L3 або кеш третього рівня. Він може бути як внутрішнім, так і зовнішнім, але може бути відсутнім. Він не розрізняє даних та інструкцій.

Типи кеш-пам'яті

Ми завершуємо керівництво про те, що таке кеш-пам'ять, пояснюючи основні типи цього типу пам'яті.

Кеш процесора

Кеш процесора є кешем, який використовується процесором комп'ютера для прискорення операцій доступу до основної пам'яті.

Кеш сторінки

Кеш сторінок є частиною пам'яті, що використовується операційною системою для копіювання даних використання на жорсткому диску. Операційна система використовує всю оперативну пам'ять, яка не виділяється безпосередньо іншим програмам, оскільки доступ до цієї основної пам'яті відбувається швидше, ніж жорсткого диска.

Дисковий кеш

Дисковий кеш тип схожий на оперативну пам'ять, яка інтегрована у жорсткий диск. Коли він присутній, він використовується для завантаження секторів жорсткого диска, суміжних з необхідними, уникаючи переміщення головки, що читає, і прискорюючи операцію читання.

Веб-кеш

Веб-кеш є частиною жорсткого диска, який використовують веб-браузери (Chrome, Edge, Firefox) або проксі-серверs, щоб зберегти переглянуті веб-сторінки.

Веб-кеш використовується для збереження HTML-коду, зображень та всієї інформації, необхідної для перегляду веб-сторінки, щоб скоротити час доступу до сторінки у випадку, якщо користувач захоче переглянути її знову. Коли користувач повторно заходить на таку сторінку, немає потреби запитувати весь код з веб-сервера, на якому розміщена сторінка, оскільки більша частина інформації вже зберігатиметься у веб-кеші.

Кеш пам'ять процесора – наскільки важлива вона

Кеш пам'ять (Cache)- масив надшвидкої оперативної пам'яті, що є буфером між контролером системної пам'яті та процесором.У цьому буфері зберігаються блоки даних, з якими центральний процесор працює в даний момент, тим самим значно зменшується кількість звернень до повільної системної пам'яті. Тим самим помітно зростає загальна продуктивність процесора.

Розрізняють кеш пам'ять 1-, 2- та 3-го рівнів (маркуються L1, L2 і L3).


Кеш пам'ять першого рівня (L1) - Найшвидший, але за обсягом менший, ніж у інших. З ним працює ядро ​​процесора. Вона має найменшу латентність (час доступу).
Кеш пам'ять другого рівня (L2) - Об'єм цієї пам'яті значно більше, ніж L1.
Кеш пам'ять третього рівня (L3) – з більшим обсягом, але повільніша, ніж L2.

У традиційному варіанті існувало два рівні кеш-пам'яті - перший і другий рівень. Третій рівень по організації відрізняється від L2. Якщо дані не оброблялися або процесор повинен обробити термінові дані, для звільнення L2 дані переміщуються в кеш пам'ять 3-го рівня. L3 більше за розміром, однак, і повільніше, ніж L2 (шина між L2 і L3 більш вузька, ніж шина між L1 і L2), але все ж таки його швидкість, набагато вища швидкість оперативної пам'яті.

У кеш пам'ять другого рівня спочатку передаються всі дані, для обробки центральним процесором, дані частково декодуються і переходять далі в ядро.

У L2 з даних будуються ланцюжок інструкцій, а L1 «дзеркально» будуються внутрішні команди процесора, які враховують особливості процесора, регістри тощо. Число внутрішніх команд центрального процесора не дуже багато тому величина кеша 1-го рівня не має великого значення (у сучасних процесорах L1 може бути з 64 Кб, 128Кб на кожне з ядер).На відміну від L1, L2 для процесора має велике значення, саме тому процесори з максимальним обсягом кеша 2-го рівня демонструють високу продуктивність.

В організації структури пам'яті процесорів AMD та Intel існують відмінності. Наприклад, процесори AMD чітко розділені між ядрами кеш пам'яті, і маркуються відповідно - 512х2 (Athlon 5200 і нижче) або 1024х2 (у Athlon 5200 та вище). А у процесорів Intel Core2Duo кеш строго не поділений, а значить для кожного з ядер можна використовувати необхідну кількість пам'яті, це добре підходить для систем, що не підтримують багатоядерність. Якщо використовувати всі ядра, кеш пам'ять поділяється на кожне ядер динамічно, залежно від навантаження кожного з ядер.

Подібні статті

Останні статті

Категорії