Що таке кеш процесора і чому він такий важливий для ігор

Реклама

ЗАРАЗ ЧИТАЮТЬ

Час читання: 4 хв.

Процесори AMD 7800X3D та 7950X3D займають перше місце серед процесорів для ігор не тому, що у них більше ядер або найвища тактова частота, а тому, що у них найбільше кешу. Але що таке кеш-процесора? Це невелика кількість надшвидкої пам’яті зі швидким доступом, вбудованою в сам чіп, яка допомагає йому отримувати дані, необхідні для виконання операцій із блискавичною швидкістю.

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

Реклама

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

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

Але навіщо потрібний кеш, якщо у нас вже є швидкий SSD-накопичувач і ще швидша оперативна пам’ять? Вся справа у продуктивності. У 1990-х роках швидкість оперативної пам’яті не встигала за потребами процесора, що створювало проблему для розробників CPU. Рішенням стало додавання локального кешу до самих чіпів.

Хоча кеш має обмежений обсяг у порівнянні з оперативною пам’яттю, його висока швидкість компенсує це. Єдиний недолік – дорожнеча упаковки пам’яті в крихітний чіп, тому вона зазвичай не використовується у великих кількостях. Однак з 3D V-Cache AMD знайшла спосіб змусити його працювати, і тепер ми можемо похвалитися продуктивнішими ігровими чіпами.

Як працює кеш? Пояснення L1, L2, L3

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

Кеш має свою ієрархію, або рівні кешу, які поділяються на кеш L1, L2 та L3. Це всі види кешу, але вони виконують трохи різні функції.

Кеш L1 – це перший рівень кешу, а також найменший, зазвичай він ділиться на кеш інструкцій L1 або L1i та кеш даних L1 або L1d. Кожне ядро ​​процесора має свою ексклюзивну ділянку кешу L1, розмір якого зазвичай становить лише кілька кілобайт. У кеші L1 зберігаються дані, які процесор щойно використовував або очікує використовувати найближчим часом. Якщо процесору потрібні дані, яких немає у кеші L1, він переходить на наступний рівень: L2.

Як і кеш L1, кеш L2 часто належить лише одному ядру процесора, але у деяких процесорах він ділиться між кількома ядрами. Він також набагато, набагато більший; наприклад, кожне P-ядро Core i9-12900K має 80 кілобайт кешу L1, а також 1,25 мегабайта кешу L2, що майже в 16 разів більше. Однак великі кеші мають більш високу латентність, що означає, що обмін даними між ядром процесора і кешем потрібно більше часу. Коли процесору потрібно виконати завдання мікросекунди або навіть наносекунди, трохи велика затримка кеша L2 має значення. Якщо процесор не може знайти необхідні дані в кеші L2, він звертається до наступного рівня: L3.

Кеш L3 має велике значення: він ділиться між деякими чи всіма ядрами процесора, і він великий. Наприклад, 7950X3D має 128 МБ кешу L3 з прикріпленим 3D V-Cache, тоді як кеш L2 складає всього 16 МБ. Затримка кешу L3 ще гірша, ніж L2, але наявність великого кеша L3 дійсно важлива для запобігання необхідності звернення процесора до оперативної пам’яті за потрібними даними. За винятком сховища, оперативна пам’ять має найгірші показники швидкості та затримки в ієрархії пам’яті, і щоразу, коли процесору потрібно звернутися до оперативної пам’яті за необхідними даними, робота може зупинитися.

Деякі процесори навіть мають кеш-пам’ять L4, але зазвичай працює як оперативна пам’ять, яка знаходиться на корпусі процесора. Деякі з перших 14-нм процесорів Intel на базі архітектури Broadwell включали 128 МБ вбудованої DRAM, а серверні процесори Sapphire Rapids компанії можуть поставлятися з HBM2, яка використовується як додатковий рівень кешу.

Чи кеш процесора має значення для ігор?

Кеш процесора має велике значення для ігор. Хоча традиційно вважається, що однопоточна продуктивність, кількість інструкцій за такт (IPC) і тактова частота є найбільш важливими факторами ігрової продуктивності, стало зрозуміло, що кеш, ймовірно, є найважливішим фактором у суперництві між AMD та Intel.

Кеш дуже важливий для ігор, тому що саме так вони сьогодні влаштовані. У сучасних іграх багато випадковостей, а це означає, що центральному процесору постійно доводиться виконувати прості інструкції. Без достатнього кешу відеокарта змушена чекати на процесор, оскільки інструкції накопичуються і стають вузьким місцем. Приклад того, наскільки велика різниця можна побачити на графіку продуктивності процесора в іграх нижче за допомогою технології 3D V-Cache від AMD.

В останні роки ми спостерігаємо тенденцію збільшення кількості кешу для ігор. AMD збільшувала обсяг кеш-пам’яті процесора протягом багатьох років, а в Ryzen 7 5800X3D та його наступниках покоління Ryzen 7000 подвоїла обсяг технології 3D V-Cache.

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

Реклама

Вас також можуть зацікавити новини:

Не пропустіть

СВІЖІ НОВИНИ