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

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

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

Кеш буває двох типів: ексклюзивний і не ексклюзивний кеш. У першому випадку інформація в кешах всіх рівнів чітко розмежована - в кожному з них міститься виключно оригінальна, тоді як в разі не ексклюзивного кешу інформація може дублюватися на всіх рівнях кешування. Сьогодні важко сказати, яка з цих двох схем більш правильна - і в тій, і в іншій є як мінуси, так і плюси. Ексклюзивна схема кешування використовується в процесорах AMD, тоді як і ексклюзивна - в процесорах Intel.

Схожі статті