Різне

Кеш-память компютера . рівні кеш памяті . Зовнішня память процесора

21.02.2017

Що таке кеш-пам’ять

Зовнішня пам’ять

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

Тільки потім вони відправляються безпосередньо в процесор. Все це займає дуже багато часу за комп’ютерними мірками. А ось, що якщо б дані зберігалися десь поруч з процесором?

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

Кеш-память компютера . рівні кеш памяті . Зовнішня память процесора

Призначення кеш пам’яті

Що ж таке кеш-пам’ять або кеш (англ. cache memory, cache):

— в широкому сенсі, розуміється будь-яка пам’ять з швидким доступом. де зберігається частина даних з іншого носія з більш повільним доступом;

— в вузькому сенсі — це сверхоперативный вид пам’яті, який використовується для підвищення швидкості доступу мікропроцесора до оперативної пам’яті.

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

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

Ось приклад того, як бібліотека, тобто система працює без кеш-пам’яті .

Навіщо потрібна кеш-пам’ять?

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

Але коли книга повернулася, бібліотекар не повертає її на полицю, а кладе в шухляду столу (така собі місцева оперативна кеш-пам’ять ).

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

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

Зберігає кеш тільки часто використовувані дані? Як функціонує і працює кеш оперативної пам’яті ?

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

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

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

Ці суміжні блоки даних, які передаються в кеш, називаються кеш-лініями. Детальніше про поняття кеш-пам’яті можна подивитися на цьому відео:

Рівні кеш пам’яті

Більшість жорстких дисків використовують один рівень кеш-пам’яті. Але кеш має два рівня, де рівень L1 менше і швидше, а рівень L2, дещо повільніше (але все одно швидше, ніж основна внутрішня пам’ять ).

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

Розглянемо ящик бібліотекаря в якості кеша L1. Коли попит на книги високий, і в ящику вже досить багато книг (немає місця складати) і ймовірність того, що там знайдеться потрібна, знижується.

Пам’ять L2 кеш

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

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

Дворівневий кеш процесора

Кеш двох рівнів у процесора – хороша ідея? Безумовно, так.

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

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

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

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

Хоча останнім часом, розміри кеш-пам’яті все збільшуються, а ціни ростуть не сильно, тому комп’ютери працюють все швидше і швидше.

тобто, наш бібліотекар обзаводиться ящиком столу все більшого розміру, а шафка, що стоїть поруч стає більш містким! Ще в тему — двохядерні процесори — правильно конфігуруємо Windows.

Кешування жорсткого диска

Майже всі сучасні жорсткі диски оснащені власної кеш-пам’яттю розміром від декількох кмлобайт до декількох мегабайт (2, 4, 8, 16 або 32 Мб). Тут вже говорилося який жорсткий диск вибрати

Дискова кеш-пам’ять (disk cache ), або кеш-пам’ять жестского диска — принцип побудови кеш-пам’яті на основі динамічного оперативного запам’ятовуючого пристрою (типу DRAM), яке зберігає найбільш часто використовувані дані і команди, доступ до яких здійснюється із зовнішньої пам’яті.

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

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

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

2. Оскільки при русі головка вібрує, то необхідно трохи часу, щоб вона заспокоїлася.

3. Нарешті, потрібен час, щоб головка знайшла сектор.

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

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

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

до Речі, якщо у вас недостатньо знань про те, як краще просканувати і протестувати жорсткий диск. то обов’язково подивіться

докладний і безкоштовний вигляді-оурок на цю тему:

Кеш-пам’ять процесора

Кеш-пам’яттю зараз комплектується більшість сучасних центральних процесорів. А спочатку кеш-пам’ять розташовувалася не на самому процесорі, а на материнській платі.

Кеш-пам’ять процесора на комп’ютері виконує функції буфера між процесором і оперативною пам’яттю.

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

Кеш-пам’яті процесора діляться на кілька видів:

Cache L1 — це «кеш-пам’ять першого рівня». Є проміжною сверхоперативной пам’яттю, знаходиться на самому кристалі процесора, в ній розміщуються найбільш часто використовувані дані.

Працює ця пам’ять на частоті процесора. Час доступу до неї істотно менше, ніж до даних в основної оперативної пам’яті. Цим досягається прискорення роботи процесора.

L2 Cache — «кеш-пам’ять другого рівня». Це проміжна сверхоперативная пам’ять, яка має швидкодію нижче пам’яті першого рівня, але вище основної оперативної пам’яті. Її розмір зазвичай складає від декількох сотень кілобайт до декількох мегабайт.

L3 Cache — «кеш-пам’ять третього рівня». Теж проміжна сверхоперативная пам’ять, що має швидкодію нижче пам’яті другого рівня, але вище основної оперативної пам’яті. Її розмір зазвичай становить від одного до декількох мегабайт.

В основному, цей тип пам’яті використовується в серверних процесорах. Зустрічається кеш-пам’ять і більш високих рівнів, наприклад, D-Cache — сверхоперативная пам’ять, використовувана для зберігання інструкцій процесора.

Поділіться з друзями або поставте закладку на цю сторінку,

якщо плануєте зайти на неї пізніше. (Кеш-пам’ять комп’ютера

рівні кеш пам’яті | Зовнішня пам’ять процесора )

Двохядерні процесори — правильно конфігуруємо Windows

Короткий опис статті: що таке кеш в телефоні що таке Кеш-пам’ять комп’ютера, рівні кеш пам’яті, Зовнішня пам’ять процесора

Джерело: Кеш-пам’ять комп’ютера | рівні кеш пам’яті | Зовнішня пам’ять процесора

Також ви можете прочитати