Чим відрізняється кеш пам'ять від оперативної пам'яті
Кешована оперативна пам'ять Windows 10 – що це та як її очистити
Будь-який користувач Windows 10, який відкрив диспетчер завдань і заглянув на вкладку «Продуктивність» у розділ «Пам'ять», виявить пункт «Кешировано», причому розмір кешованої пам'яті зазвичай тим значніший, чим більший обсяг оперативної пам'яті на комп'ютері або ноутбуку.
- Що таке пам'ять у стані кешування
- Як очистити кешовану пам'ять Windows 10
- Відео інструкція
Що означає «Кешіровано» в інформації про пам'ять
Якщо в диспетчері завдань ви підведете вказівник миші до порожнього розділу, який зазвичай знаходиться в центрі графічного представлення «Структура пам'яті», ви побачите підпис: «Зарезервовано. Пам'ять, що містить кешовані дані та код, які зараз не використовуються» — йдеться саме про ту оперативну пам'ять, яку ви бачите в пункті «Кешировано». Що це означає?
Кешована пам'ять у Windows 10 — це зайняті, але сторінки пам'яті, що не використовуються зараз, містять різні дані, які можуть знадобитися в подальшому для роботи системних і сторонніх процесів і які ефективніше буде отримати саме з оперативної пам'яті, а не знову прочитати з диска. Чим більше доступної пам'яті, що не використовується, тим більший її обсяг може виявитися в стані «кешировано».
Логіку цього підходу можна описати так: у Windows 10 є різні механізми прискорення роботи системи та кешована пам'ять — один з них.За наявності оперативної пам'яті, що не використовується, ефективніше використовувати її як кеш, а не звільняти відразу: сама по собі вільна пам'ять не призводить до прискорення роботи: система і програми будуть працювати з однаковою швидкістю, незалежно від того, вільно у вас 2 Гб RAM або 16. Проблеми можуть виникнути, коли вільної пам'яті не залишається, але кешована пам'ять з великою ймовірністю не спричинить цього.
Очищення кешованої пам'яті
Насамперед, будь-яке очищення кешованої пам'яті Windows 10 самостійними діями, за допомогою сторонніх утиліт або іншими методами зазвичай позбавлене сенсу: пам'ять «Кешировано» звільняється системним менеджером пам'яті в першу чергу, коли RAM знадобилося для будь-яких завдань, а доступної вільної оперативної пам'яті недостатньо.
Як приклад: у першому розділі статті наводився знімок екрану зі станом ОЗП у диспетчері завдань на момент початку написання цього матеріалу. Нижче – відразу після запуску редактора відео, відкриття та запуску рендерингу проекту в ньому.
Як можна побачити, обсяг кешованої пам'яті скоротився на 2 Гб, надалі, після припинення роботи з «важким» софтом, її обсяг знову буде приростати в міру використання системи і все це — нормальна поведінка, яка негативно не впливає на чуйність вашого ПК або ноутбука.
Існують сторонні утиліти для швидкого очищення всієї кешованої оперативної пам'яті у Windows 10 та попередніх версіях системи. Один з найпопулярніших інструментів – EmptyStandbyList.exe, демонстрація його використання після примітки. Ще дві програми, що дозволяють виконати очищення: Mem Reduct та Intelligent Standby List Cleaner.
Я не рекомендую подібні програми для використання.Повторюся: у випадку приємні для очей числа вільної оперативної пам'яті, які ми зможемо отримати, не призведуть до підвищення продуктивності системи або FPS в іграх. В інших сценаріях, коли йдеться не про кешовану пам'ять, а про зайняту та використовувану RAM, за умови її нестачі для інших завдань вивільнення може мати сенс, але це вже окрема тема.
- Відкрийте командний рядок від імені Адміністратора.
- Введіть наступну команду, вказавши повний шлях до EmptyStandbyList.exe на початку команди (для цього можна утримувати клавішу Shift, натиснути файл правою кнопкою миші, вибрати пункт «Копіювати як шлях», а потім вставити в командний рядок):
emptystandbylist.exe standbylist
При цьому слід враховувати, що відразу після використання утиліти, в міру роботи, обсяг кешованої пам'яті знову зростатиме.
Відео
Сподіваюся, стаття допомогла розібратися, навіщо потрібна кешована пам'ять та інших питаннях, які мають до неї ставлення.
А раптом і це буде цікаво:
- Найкращі безкоштовні програми для Windows
- Процес System вантажить процесор чи диск – як виправити?
- SuperMSConfig – утиліта для налаштування Windows 11
- Flyby11 — просте оновлення до Windows 11 24H2 на комп'ютері, що не підтримується.
- Образ ISO містить відкликаний завантажувач UEFI Rufus — пояснення
- Комп'ютер не бачить флешку – що робити?
- Windows 11
- Windows 10
- Android
- Завантажувальна флешка
- Лікування вірусів
- Відновлення даних
- Установка з флешки
- Налаштування роутера
- Все про Windows
- У контакті
- Однокласники
-
Михайло 19.03.2021 о 09:17
Кеш-пам'ять процесора: функції, рівні, вплив на продуктивність
Виробники процесорів люблять хизуватися великими обсягами кешу L3, ось тільки те, чому цей параметр такий важливий, ясно далеко не всім користувачам.Якщо ви хочете розібратися, для чого потрібна і як працює кеш-пам'ять процесора, що означають рівні L1, L2, L3 і як обсяг кешу впливає на швидкодію системи, то ця стаття для вас.
2021-09-30 2022-04-05 Marvel market Кеш-пам'ять процесора: функції, рівні, вплив на продуктивність
Функція кеш-пам'яті процесора
Відомо, що процесор працює з даними, які доставляються до нього з оперативної пам'яті. Але в їхній взаємодії є одна серйозна проблема: ОЗУ працює набагато повільніше, ніж CPUЩо для останнього означає постійні простої, чекаючи, поки з оперативної пам'яті прийдуть необхідні дані. Щоб уникнути простоїв, кристал чіпа інтегрована та сама кеш-пам'ять, що грає роль буфера між оперативною пам'яттю і процесором. Кеш-пам'ять завантажує та зберігають у собі дані, з яким процесор працює в даний момент, що позбавляє необхідності чекати ці дані з ОЗУ. Таким чином, кеш пам'ять процесора призначена для того, щоб згладжувати різницю у швидкості роботи між процесором та ОЗУ, щоб обчислення проводилися якнайшвидше. Крім вирівнювання швидкості, кеш ще й перепаковує дані, щоб процесору було простіше їх розуміти, розраховувати та повертати назад.
Пристрій кеш пам'яті процесора
Щоб зрозуміти, на що впливає кеш пам'ять процесора і як працює, необхідно спочатку розібратися, як вона влаштована, що ми зробимо. Загалом і в цілому система процесорного кешу складається з двох важливих складових: контролера, який управляє рухом даних, і самою кеш-пам'яттю — де ці дані зберігаються. Якщо говорити образно, то кеш-пам'ять – це склад, а контролер – навантажувач, який снує по приміщенню та підтягує ближче до процесора потрібні ящики.
Контролер кеш-пам'яті
Отже, перша складова блоку - контролер з управління змістом кешу. Він регулярно перевіряє, що прийшло до процесора з ОЗУ, перетравилося і повернулося назад. Контролери часто встановлені всередину чіпів, але ще недавно знаходилися на північному мосту (до AMD64 і Intel Nehalem відповідно). Коли одне з ядер звертається до контролера за інформацією, останній перевіряє її наявність у кеші. Якщо є — віддає (це називається «кеш-попадання»), якщо ні — ядро чекає, поки повільний і неповороткий равлик (оперативна пам'ять) доставить все необхідне. Ця ситуація називається «кеш-промах». Основне завдання контролера полягає в тому, щоб мінімізувати кількість промахів, а то й зовсім звести до нуля, і тому він повинен завантажувати кеш-пам'ять лише важливими даними за принципом "завжди під рукою". Інша річ, що цього контролер повинен вміти «вангувати», тобто. передбачати події, користуючись для вибору даних, що завантажуються з ОЗУ, так званою «інтелектуальною стратегією кешування», яка заснована на аналізі вже наявних помилок. Простіше кажучи, наслідуючи закладені в нього алгоритми, контролер розраховує, які дані можуть знадобитися процесору і вантажить їх заздалегідь. Якщо він «вгадав», то ставить собі галочку і запам'ятовує досвід як вдалий. Якщо не вгадав, бракує такий досвід, і змінює логіку вибору даних для попереднього завантаження. Сучасні контролери працюють із можливістю глибокого самонавчання та аналітики, що сильно знижує кількість промахів. Чим довше пристрій працює в системі, тим краще розуміє вимоги користувача і частіше видає необхідний результат. Навіть процесор розуміє, що у разі невдачі його замінять. Точніше це розуміють виробники процесорів.
Будова кеш-пам'яті
Що взагалі є цей модуль? Це окрема, але розміщена безпосередньо на платі ЦПУ мікросхема SRAM (Static Random Access Memory) із величезною швидкістю роботи. Такий високий показник пояснюється тим, що DRAM (ОЗУ) використовує для роботи конденсатори, а SRAM - транзистори, що забезпечує приріст в 10 разів. Але й SRAM-пам'ять має свої особливості, які обмежують можливості її використання. Проблема №1: транзисторна пам'ять вимагає набагато більше місця на кристалі, тому багато її не поставити. Якщо говорити числами, то 100 МБ SRAM = 4 ГБ DRAM у плані габаритів. А підкладка процесора, на жаль, не гумова. Проблема №2: чим більший обсяг SRAM, тим нижча швидкість і вища затримка. Тому виробники вигадали хитрий спосіб обходу цієї особливості, розділивши весь кеш на кілька блоків різного розміру, і назвавши їх «рівні» (Layers).
Рівні кеш пам'яті процесора
- L1 - найшвидший і найменший;
- L2 - не такий спритний, але більший в обсязі;
- L3 – найповільніший, але його багато.
На схемі чітко показаний принцип роботи з інформацією, яка передається від сховища до оперативної пам'яті, а від неї до кеш-пам'яті L3-L2-L1 і так до самого процесора. Процедура обміну даними закольцована.
У самому кристалі ЦП розміщені арифметично-логічні пристрої (ALU), які виконують математичні обчислення. А допомагають у цьому регістри, які також є SRAM-пам'ять, але технічно не ставляться до кешу.
Кожному регістру присвоєно одне з 64-бітових цілих чисел, а значення може бути фрагмент даних, шматок коду, посилання на інший регістр і не тільки. Але оскільки сам регістр не здатний зберігати в пам'яті хоч щось (у нього просто немає), на допомогу приходить кеш L1.
Кеш пам'ять 1 рівня
L1 – пам'ять першого рівня.Це дуже скромний за розмірами, але дуже швидкий обчислювальний блок, який постійно згодовує регістрів найважливішу інформацію, не даючи їм простоювати. У ньому скомпільовані дані, до яких ЦП звертається найчастіше. Образний приклад - жіноча сумочка, без якої дівчат геть-чисто паралізує. Або велика кількість кишень на куртці.
Кількість мікросхем L1 часто прив'язана до кількості ядер процесора, причому у кожного ядра кеш свій власний. Розмір блоку може змінюватись від 64-256 КБ у десктопів та ноутбуків до 1-2 МБ для серверних рішень.
Сам L1 теж має власний поділ. Він ділиться на кеш команд і кеш даних:
Перший містить інформацію про операцію, якою займається ЦП, простіше кажучи, відповідає питанням: «Що треба зробити»;
Другий зберігає у собі дані, з яких мають проводитися обчислення.
Такі собі функції і його змінні, тільки втілені в кремнії.
Кеш пам'ять 2 рівні
L2 – пам'ять другого рівня. Як уже було сказано, вона не така спритна, але це компенсується підвищеним обсягом. Також прив'язана до ядра і не взаємодіє з іншими. Однак маркетологи люблять писати якісь надхмарні цифри L2, просто підсумовуючи показники. Наприклад, для AMD Ryzen 7 5800X розмір кешу заявлено в 512 КБ на ядро, що не так гарно. Але якщо підсумувати усі 8 блоків – отримаємо вже цікаві 8 МБ. До речі, для AMD EPYC 7763 показник становить 32 МБ, оскільки ядер вже 64 відповідно.
L2 можна уявляти, як особисте сховище для L1: першому не вистачає місця під певні, не найкритичніші завдання, і він завантажує їх у кеш другого рівня на відстань «витягнутої руки».
Кеш пам'ять 3 рівні
L3 – пам'ять третього рівня. Найбільший та найповільніший кластер серед «родичів».При цьому все ще швидше ОЗП і, тим більше, SSD-накопичувачів, навіть на базі NVMe.
Цей блок вже доступний всім ядер процесора, як громадська бібліотека. На третьому рівні тимчасово зберігаються дані, які хоч і важливі для продуктивної роботи, але регістри звертаються по цю інформацію щодо нечасто. Проте обсяг кеш пам'яті третього рівня процесора може бути гігантським на тлі L1 і L2. Для Intel Xeon 3 Gen це до 80 МБ, AMD а - всі 256 МБ відповідно.
Наочне порівняння швидкості кеш пам'яті процесора
Важко уявити собі, наскільки це — «швидше» чи «повільніше», коли йдеться про передачу даних. Але якщо проводити аналогії з реальним життям, то співвідношення швидкостей для різних рівнів пам'яті та інших типів носіїв можна так:
- Уявіть, що ви це ядро процесора, і тоді регістри для вас як паперові стікери, розклеєні по периметру монітора. На них знаходиться інформація, яка потрібна тут і зараз, і щоб її прочитати, достатньо підняти погляд і сфокусуватися на потрібному листку;
- Кеш L1 – папка на робочому столі. Фізична, з масою файлів, де лежать документи, звіти з бухгалтерії та інші зведення роботи. Відкрив, порився у файлах, знайшов потрібний, прочитав інформацію в 50-му рядку на 20-й сторінці і взявся до роботи.
- Кеш L2 - алгоритм той же, але папка лежить не на столі на відстані витягнутої руки, а в книжковій шафі наприкінці кабінету. А значить необхідно піднятися з місця, дійти до шафи, знайти потрібну полицю і ще якийсь час витратити на пошук потрібної папки, сторінки та рядки.
- Кеш L3 – архівний відділ. Знаходиться на 5-му поверсі під охороною злого бухгалтера. При цьому всю інформацію розсортовано за стелажами, які практично не підписані.Більш того, один нещасний бухгалтер повинен обслуговувати 10-20 співробітників, що насідають (інших ядер ЦП, яким теж потрібно «ось-прямо-зараз») і носитися по всьому приміщенню, видаючи документи за різними запитами.
- Оперативна пам'ять – міська бібліотека у віддаленому районі. Спочатку до неї треба доїхати, потім розбудити бібліотекаря, дочекатися, поки він блукатиме архівом протягом кількох годин. А потім ще повернутися здобиччю назад. І не факт, що все необхідне знайдеться з першого разу через банальний недогляд.
- SSD-накопичувач - кур'єрська доставка із сусідньої області. За всього бажання і розвиненого логістичного ланцюжка, чекати доведеться кілька діб, а то й більше, якщо дороги переповнені.
- HDD-накопичувач - Аліекспрес. Вибір шикарний, багато, коштує — копійки. Але на доставку чекайте протягом місяця.
У такій інтерпретації розуміти різницю у пам'яті набагато простіше.
Зрозуміло, реальна швидкість сильно відрізняється від схематичних позначень. Наприклад, процесору для складання пари 64-бітових цілих чисел потрібно всього 1/4 наносекунди (10-9 ступінь), якщо він працює на частоті 4 ГГц (приблизно).
А ось HDD з їхньою неповороткою магнітною головкою доводиться витрачати мілісекунди (10-3 ступінь), і це справжня прірва. І це лише пошук, без доставки до ОЗП.
Звичайно, на тлі всього вищесказаного виникає логічне питання, чому не додати ще рівнів, і не зробити кеш такого розміру, щоб на ньому зберігалася вся інформація, яка може знадобитися процесору. Ось тільки проблема в тому, що кеш-пам'ять не збільшити в будь-якому обсязі, інакше чіп просто не поміститься на підкладку процесора. А якщо й поміститься, то розміром такий процесор буде з багатоповерховим будинком, а ціну його в принципі неможливо уявити.
Як обсяг кеш-пам'яті впливає на продуктивність
Тут все залежить від кількості ядер і призначення процесора. Перед виробником ЦП стоїть завдання зробити максимально збалансований продукт, який відповідає вимогам користувачів.
Візьмемо, наприклад, стандартний домашній чи офісний комп'ютер на 4 ядра із частотою близько 3 ГГц. Його сфера використання — таблиці, текстові редактори та офісні програми, мультимедіа, прості ігри та розваги. Немає жодного сенсу давати на процесор такої машини кеш L1 більше 256 КБ, на L2 – більше 1 МБ, на L3 – 4 МБ (сумарно). Завдання вирішують оптимізацією кешу, забезпечуючи до 90% кеш-попадань всіх етапах. У цьому промахами закінчується трохи більше 1-2% всіх операцій. Виробник десктопних пристроїв розуміє просту істину: нарощування показників не збільшить продуктивність, але дуже позначиться на вартості, оскільки фінальна ціна такого комп'ютера виявиться занадто високою.
Зовсім інша справа - серверний сегмент, де давно і міцно прописалися кристали на 16, 32 та 64 ядра. Ось тут об'ємний кеш необхідний (та й площа кристала для його розміщення більше), адже моделі з невеликим кешем просто не зможуть забезпечити серверу необхідну швидкість обчислень для тисяч завдань, які потрібно вирішувати в одну одиницю часу.
Ось так і з'являються гігантські цифри в 128 і навіть 256 МБ кеша L3, характерні, наприклад, для AMD EPYC 2 і 3 поколінь. Більше місця для швидкого доступу — вища продуктивність. І не варто забувати, що в серверному сегменті ніхто не займається розгоном ядер для компенсації малого розміру кеш-пам'яті, адже від цього залежить тепловиділення процесора, яке також потрібно відводити.Жодної користі не буде від машини, де кристал моментально нагрівається від розгону і вимагає відвести 400, а то й 500 Вт тепла. На одному охолодженні розоріться.
Коли потрібно більше кешу?
Чи отримає рядовий користувач хоч якийсь приріст для свого домашнього комп'ютера, якщо замінить процесор з кешем 8 МБ на 16 МБ за аналогічних показників решти (ядра, частота, виробник, архітектура)? Ні.
Величина цього параметра, як об'єм кешу, повністю проявляє себе лише при розрахунках у важких додатках, чи це складний рендер 3D-сцени, робота з величезною кількістю полігонів, звернення до структурованої бази даних на регулярній основі, термінальна робота і т.д. Сюди варто додати монтаж, стрімінг з високим бітрейтом.
Але, за великим рахунком, об'ємний кеш потрібен серверам з високим навантаженням та відвідуваністю. Як милиці виробники пропонують для прискорення роботи навіть окремі плати з кеш-пам'яттю L4, які підключаються або в пропрієтарні або PCI-E слоти.
Чи можна збільшити розмір кеш-пам'яті процесора?
Як було зазначено вище, така можливість існує, але це можна лише шляхом встановлення додаткових плат розширення. Довго, складно, дорого та далеко не завжди затребуване. Плюс, про це треба домовлятися з виробником обладнання заздалегідь, щоб він надав необхідну ревізію та прошивку материнської плати.
Простіший варіант збільшення кешу - заміна процесора на потужніший. Але при цьому від переходу з 2-го до 3-го покоління чіпів (Intel/AMD) різниця буде лише у збільшенні базової частоти ядра. Але якщо зробити стрибок, припустимо, з 1-го покоління на 3-е - то приріст продуктивності буде набагато відчутнішим.
Інших способів збільшити кеш-пам'ять, на жаль, не передбачено.
Рекомендації щодо вибору кешу
Загалом рекомендація одна: при виборі враховуйте свої потреби.
Наприклад, у процесорах настільних комп'ютерів величина кешу мало грає ролі для 90% типових завдань. Левова частка користувачів виконує виключно казуальні завдання на кшталт серфінгу інтернету та соціальних мереж. І їм не важливі рівні L1/L2/L3, як і загальний час затримок при зверненні від ЦП до ОЗУ і навпаки. Аби працювало.
Друга категорія користувачів - професіонали, для яких ПК є повноцінною робочою станцією. На цьому полі грають вже «проміжні» процесори на кшталт AMD Threadripper та Intel Core X. У них уже все гаразд із кількістю ядер та розміром кеш-пам'яті, де одне доповнює інше, збільшуючи сумарну продуктивність.
І найвибагливіші щодо цього — сервери. Тут кеш – цар і бог в одному флаконі. Якщо взяти дві моделі з ідентичними характеристиками, наприклад, для побудови мережі терміналів, то в гонці на виживання виграє та модель серверного процесора, де значення L3 буде вищим за інших рівних. Ось так і працює.
Якщо у вас ще залишилися питання, ви завжди можете поставити їх нашим спеціалістам, замовивши персональну консультацію для підбору параметрів обладнання, яка ідеально закриє всі ваші потреби.
Подібні статті
- Скільки рівнів кеш пам'яті
- Скільки оперативної пам'яті на телефоні Honor 8S
- Скільки кеш пам'яті потрібно процесору
- Чи потрібно телефону 8 Гб оперативної пам'яті
- Як запустити діагностику оперативної пам'яті Windows 10
- Як виділити пам'ять для вбудованої відеокарти
- Чим відрізняється протигаз та саморятівник
- Скільки оперативної пам'яті Samsung M21