Что такое disk cache
Что такое кэш память на жёстком диске
Нормальное функционирование операционной системы и быстрая работа программ на компьютере обеспечиваются оперативной памятью. Каждый пользователь знает, что от ее объема зависит количество задач, которые ПК может выполнять одновременно. Подобной памятью, только в меньших объемах, оснащаются и некоторые элементы компьютера. В данном материале речь пойдет о кэш-памяти жесткого диска.
Что такое кэш-память жёсткого диска
Кэш-память (или буферная память, буфер) – область, где хранятся данные, которые уже считались с винчестера, но еще не были переданы для дальнейшей обработки. Там хранится информация, которой ОС Windows пользуется чаще всего. Необходимость в этом хранилище возникла из-за большой разницы между скоростью считывания данных с накопителя и пропускной способностью системы. Подобным буфером обладают и другие элементы компьютера: процессоры, видеокарты, сетевые карты и др.
Объемы кэша
Немаловажное значение при выборе HDD имеет объем буферной памяти. Обычно эти устройства оснащают 8, 16, 32 и 64 Мб, но имеются буферы на 128 и 256 Мб. Кэш довольно часто перегружается и нуждается в чистке, так что в этом плане больший объем всегда лучше.
Современные HDD в основном оснащаются кэш-памятью на 32 и 64 Мб (меньший объем уже редкость). Обычно этого достаточно, тем более что у системы есть собственная память, которая вкупе с ОЗУ ускоряет работу жесткого диска. Правда, при выборе винчестера не все обращают внимание на устройство с наибольшим размером буфера, так как цена на такие высока, да и параметр этот не является единственным определяющим.
Главная задача кэш-памяти
Кэш служит для записи и чтения данных, но, как уже было сказано, это не основной фактор эффективной работы жесткого диска. Здесь важно и то, как организован процесс обмена информацией с буфером, а также, насколько хорошо работают технологии, предотвращающие возникновение ошибок.
В буферном хранилище содержаться данные, которые используются наиболее часто. Они подгружаются прямо из кэша, поэтому производительность увеличивается в несколько раз. Смысл в том, что нет необходимости в физическом чтении, которое предполагает прямое обращение к винчестеру и его секторам. Этот процесс слишком долгий, так как исчисляется в миллисекундах, в то время как из буфера данные передаются во много раз быстрее.
Преимущества кэш-памяти
Кэш занимается быстрой обработкой данных, но у него есть и другие преимущества. Винчестеры с объемным хранилищем могут значительно разгрузить процессор, что приводит к его минимальному задействованию.
Буферная память является своего рода ускорителем, который обеспечивает быструю и эффективную работу HDD. Она положительно влияет на запуск ПО, когда речь идет о частом обращении к одним и тем же данным, размер которых не превышает объема буфера. Для работы обычному пользователю более чем достаточно 32 и 64 Мб. Дальше эта характеристика начинает терять свою значимость, так как при взаимодействии с большими файлами эта разница несущественна, да и кому захочется сильно переплачивать за более объемный кэш.
Узнаем объем кэша
Если размер винчестера — величина, о которой несложно узнать, то с буферной памятью другая ситуация. Не каждый пользователь интересуется этой характеристикой, но если возникло такое желание, обычно ее указывают на упаковке с устройством. В противном случае можно найти эту информацию в интернете или воспользоваться бесплатной программой HD Tune.
Утилита, предназначенная для работы с HDD и SSD, занимается надежным удалением данных, оценкой состояния устройств, сканированием на наличие ошибок, а также дает подробную информацию о характеристиках винчестера.
В этой статье мы рассказали, что такое буферная память, какие задачи она выполняет, каковы ее преимущества и как узнать ее объем на винчестере. Выяснили, что она важна, но не является основным критерием при выборе жесткого диска, а это — положительный момент, учитывая высокую стоимость устройств, оснащенных большим объемом кэш-памяти.
Помимо этой статьи, на сайте еще 12542 инструкций.
Добавьте сайт Lumpics.ru в закладки (CTRL+D) и мы точно еще пригодимся вам.
Отблагодарите автора, поделитесь статьей в социальных сетях.
Зачем нужен Disk Cache?
New Member
New Member
New Member
интересно. прирост будет?
или просто плюнуть и поставить ОЗУ на максимум.
что лучше?
eddy445
Active Member
After Effects can store rendered items to your hard disk when the RAM cache is full during standard previews. Blue bars in the time ruler of the Timeline, Layer and Footage panels mark frames that are cached to disk.
А вот дядька утверждает что кэш помнит состояние каждого слоя, и вообще «вумный»
New Member
eddy445
Active Member
pavelusha
Gold Expert
По своему опыту могу сказать только одно. Этот кэш SSD не спасет если его не спасает даже Flash Storage. Все в теории очень хорошо и заманчиво, но когда реально начинаешь работать, то начинаются недетские глюки. Во многом, конечно, это может происходить и от того, что плаги не имеют 100% поддержки CS6, Но иногда он не понимает при включенном кеше изменения сделанные в настройках и тупо кадр не пересчитывает, а если даже сделать Purge image memory он тут же ее с дискового кеша поднимает и «опщть за рыбу деньги». Помогает только полная очистка кеша из настроек, но не будешь же туда лазить при каждом изменении параметров в плаге. Плюс они вообще намудрили с этим кешем. Открываешь проект, и он, скажем, нашел на диске его кеш, так вот пока он его не считает, просто жуткие тормоза. Даже изменить что либо в проекте практически невозможно.
В общем, лично я его отключаю сразу после установки АЕ. Работать без него намного спокойней.
P.S. Проверено как на Macbook Pro Retina в котором только Flash Strage drive так и на новом iMac 27″ с Fusion Drive. Поведение абсолютно одинаковое
angry shooter
New Member
из личного опыта могу сказать, что потратил какое то время на изучение этой темы методом тыка. речь о cs6.0. win7 ultimate 64bit, 32Гб оперативки, 8 «полуядер» (fx8150) в опциях включена многоядерность, принудительно в зависимости от проекта от 1.75 до 4Гб на ядро.
итого: для относительно простых и недлинных проектов, подтверждаю, полное отключение кеша может стать выгоднее, при условии, что кешируется на HDD, пусть даже и быстрый по меркам HDD. использовл как и довольно скоростные модели: 3 блиновый 2TB, линейные скорости чтения/записи
160мб/сек, так и рейд0 из 2х по 500Гб,
240мб/сек. т.е. если просчет какого то фрагмента или всего проекта целиком быстрее считывания данных с такого источника кеша.
Что такое размер кэша жесткого диска и как его проверить?
В высокотехнологичных гаджетах для хранения информации и данных используются жёсткие диски. Однако существуют разные типы жёстких дисков с нужной скоростью и объёмом памяти. В этом руководстве мы объясним различные типы жёстких дисков, их функции, важность размера кэша жёсткого диска и способы его проверки. Не теряя времени, давайте разберёмся в этом подробнее!
Теперь у всех есть драйв разной формы и размера. Это могут быть карты SSHD, HDD, MicroSD и Flash. Все они имеют разные функции и способы использования, и необходим правильный уход, если вы не хотите потерять свои данные. Кроме того, доступные сегодня жёсткие диски могут иметь различные формы и формы.
Некоторые из них приведены ниже:
Хотя они различаются анатомически, они служат одной цели — хранению и обработке данных.
Различные типы жёстких дисков?
Было изобретено четыре различных типа накопителей: Serial ATA, PATA, SCSI и SSD. Самые ранние диски использовали PATA, который относится к типу интерфейса, используемого для соединения вашего компьютера с жёстким диском.
Около 40 или 80 ленточных кабелей использовались для параллельной передачи данных в 16-битные карманы. Эта система дисков PATA может быть научно обоснована для современных дисков.
Последовательный ATA или SATA
Жёсткие диски SATA теперь заменили PATA из-за его улучшенной производительности. Они могут передавать данные намного быстрее (более 150 из 600 мегабайт), в отличие от PATA (133 мегабайта), который потребляет очень мало энергии (250 мВ, чем 5 В), а кабели SATA более гибкие и тонкие.
Интерфейс малой компьютерной системы или SCSI
SCSI позволяет подключать различные периферийные устройства, такие как принтеры, жёсткие диски, компакт-диски, сканеры и многое другое. Приводы интерфейса малых компьютерных систем могут быть легко подключены как внутри, так и снаружи.
Твердотельные накопители или SSD
Твердотельные накопители — это новейшие типы накопителей, которые не состоят из движущихся частей. Это делает их менее восприимчивыми к какому-либо повреждению. Они используют микросхемы флэш-памяти вместо хранения данных и предлагают более быстрый доступ к данным. В наши дни они довольно распространены в ноутбуках. SSD-накопители также используются для мобильных переводов. Имеет общую совместимость как флешка. Используется дополнительный провод, обеспечивающий высокую совместимость с другими устройствами.
Теперь давайте продолжим и проверим типы технологий, используемых в жёстких дисках:
Типы технологии HDD
Существуют три типа жёстких дисков: магнитные, твердотельные (SSD) и гибридные. Обсудим их кратко:
Магнитные жёсткие диски
В этих дисках используются вращающиеся магнитные диски, известные как пластины, и механический рычаг, который записывает и считывает данные с помощью процесса намагничивания. Данные могут храниться на круговых частях диска, известных как дорожки, которые можно разделить на различные секторы, содержащие блоки данных. Хотя они могут быть медленнее, чем твердотельные накопители, но они очень доступны и имеют большую ёмкость.
Твердотельные накопители (SSD)
Твердотельные накопители — это самые быстрые типы жёстких дисков и хранилищ данных со скоростью передачи данных, превышающей 550 мегабайт и выше. Отсутствие движущихся частей обеспечивает большую надёжность и исключает любую возможность повреждения данных или снижения производительности из-за вибрации и ударов. Диски могут допускать нарушение доступа к данным за миллисекунду, что сокращает время загрузки, запуск приложений и ускоряет работу системы.
Гибридные жёсткие диски
Гибридные жёсткие диски или жёсткие диски — это комбинации обоих ранее обсуждавшихся дисков с использованием флеш-памяти и пластин. Они хранят часто используемые данные во флэш-памяти, что обеспечивает более высокую скорость работы с файлами, тогда как остальные могут храниться на пластине. Если говорить о цене, они намного дороже, чем магнитные диски, но дешевле, чем твердотельные накопители.
Что такое кеш жёсткого диска?
Кэш жёсткого диска (HDC) также известен как дисковый буфер. Он действует как пространство временной памяти, когда жёсткий диск записывает и считывает данные в своё постоянное хранилище.
Вы можете подумать, что кеш жёсткого диска похож на RAM (оперативную память), созданную только для диска. Жёсткие диски имеют встроенные микроконтроллеры, которые обрабатывают и управляют выходящими данными, как и центральный процессор. И кеш работает в соответствии с микроконтроллером для хранения памяти во время её обработки.
Кэш жёсткого диска похож на буферизацию, когда речь идёт о потоковом контенте в реальном времени. Все имели дело с потоковое видео на медленном соединении. HDC позволяет вашему диску делать то же самое при записи и чтении данных.
Важен ли размер кэша жёсткого диска?
Использование и потребность в размере кэша ограничены конкретными ситуациями или случаями. Таким образом, это полностью зависит от конкретного использования. При копировании больших файлов на жёсткий диск скорость его вращения ограничивает скорость записи. Дисковый кеш не увеличит скорость передачи файлов. Таким образом, в такой ситуации размер кеша бесполезен.
В качестве альтернативы, при копировании файлов, размер которых меньше размера буфера, дисковый кеш может улучшить скорость передачи просто за счёт повышения эффективности привода. По этой причине в новых дисках увеличиваются размеры кэша, чтобы обеспечить более высокий диапазон эффективности.
Несмотря на то, что дисковый кеш небольшой и составляет менее 0,1% от всего объёма диска, он даёт достаточно места для размещения большого количества дорожек данных и делает возможным чередование. Данные поступают в дисковый буфер, и система извлекает данные из этого буфера. Таким образом, давая дисковым головкам достаточно времени, чтобы найти следующий блок и многое другое.
Имеет ли значение размер кэша жёсткого диска?
В бытовых жёстких дисках размер кэша составляет 32, 64, 128 и 256 МБ. Скорость доступа ко всем кешам одинакова. Размеры различаются и означают, что в кеше будет больше данных, доступ к которым будет осуществляться намного быстрее. Как правило, размер кэша имеет огромное значение для производительности, поскольку он может хранить больше.
Но если вы переносите небольшие файлы, размер которых меньше размера кеша, диск может сознательно изменить порядок файлов для повышения качества, и скорость передачи будет увеличена. Вот почему мы не можем полностью исключить из уравнения размер буферного кеша, который будет увеличен на следующем жёстком диске.
Если вы хотите купить жёсткий диск и немного запутались в спецификациях, которые вы хотите учитывать, вашим приоритетом должно быть «RPM», которое определяет скорость записи и чтения диска. Во-вторых, вас может беспокоить цена, по которой вы получаете жёсткий диск. Если разница в цене между обоими жёсткими дисками одинакова и единственная разница заключается в размере буфера, выберите более дешёвый, так как вы вряд ли найдёте разницу в них обоих.
Кэш SSD и HDD
Кэш обычно поставляется в небольших количествах, так как он дорог в производстве. Твердотельные накопители без движущихся физических компонентов будут дороже традиционных жёстких дисков.
Кроме того, доступ к информации из кеша жёсткого диска будет быстрее, чем с жёсткого диска, поскольку он потребляет флэш-память. Это несправедливое сравнение, поскольку кеш жёсткого диска относительно невелик по размеру, и большая часть данных, к которым вы пытаетесь получить доступ, обычно поступает с пластин жёсткого диска, а не из кеша жёсткого диска. Подумайте только на секунду, что стандартный жёсткий диск с кеш-памятью 64 МБ будет хранить от 2 до 3 HD-изображений. По сравнению с SSD на 1 ТБ, который поставляется с флэш-памятью, это нечестно.
Как проверить размер кеш-памяти жёсткого диска?
Давайте посмотрим на шаги, чтобы проверить размер кеша, и если эти шаги не работают, рассмотрите возможность установки стороннего программного обеспечения для того же:
В случае, если описанные выше шаги не сработают, вы должны рассмотреть возможность установки стороннего программного обеспечения под названием CrystalDiskInfo. Это замечательное программное обеспечение, которое позволяет вам бесплатно находить такие детали, как размер кеша, прошивка, серийный номер, интерфейс и детали SMART.
Покупка жёсткого диска
Имея следующую информацию, мы можем сделать вывод, что размер кеша имеет значение. Кэш не очень важен как характеристики основного диска; однако вы всё равно должны это учитывать. Предположим, ваш диск будет многозадачным и будет работать непрерывно, как на сервере или на игровых платформах, тогда вы должны выбрать больший размер кеша. Вы получите от этого огромную пользу. Даже домашние пользователи, которым нужен накопитель для обычного использования, не должны беспокоиться об этом.
Подходит ли мне размер кеш-памяти 256 МБ?
Размер кэша 256 МБ больше, и это означает, что больше места для хранения и реорганизации. Так что определённо, кэш 256 МБ — это хорошо по сравнению с кешем 64 МБ.
Какая кеш-память на жёстком диске?
Когда дело доходит до компьютерного хранилища, важную роль играет дисковый кеш. Это встроенная память, хранящаяся на жёстком диске, которая работает как щит для компьютеров и физических дисков, используемых для хранения.
Какие бывают жёсткие диски?
Есть два основных жёстких диска, и это жёсткие диски, использующие вращающиеся диски и в основном использующие магнитные хранилища. А твердотельные накопители не имеют движущихся частей и используют флэш-память, как USB- накопители.
Имеет ли значение размер кеша на жёстком диске?
Да, размер кеша имеет значение. Хотя кэш не так важен, как характеристики основного диска, вы всё равно должны это учитывать. Предположим, ваш диск будет многозадачным и будет работать непрерывно, так же, как на сервере или для игровых платформ, вы можете искать больший размер кеша.
Могут ли компьютеры работать без кеш-памяти?
У компьютера ограниченная память DRAM и меньше кэш-памяти. Таким образом, когда запущена какая-либо большая программа и несколько программ, память используется полностью. Следовательно, чтобы компенсировать нехватку этой физической памяти, операционная система компьютера создаст виртуальную память.
Как, почему и когда надо чистить кэш на Android
Кэш приложений может быть спорной темой на Android. Многие люди постоянно чистят кэш приложений, веря в то, что это позволит смартфону работать быстрей. Другие говорят, что это, в первую очередь, сводит на нет всю цель кэширования и просто увеличивает время запуска приложений и выполняемых действий. Истина, как обычно, где-то посередине. Некоторые приложения могут не использовать кэширование эффективно, из-за чего используются излишне большие объемы памяти. Иногда кэш может вызывать проблемы после выхода обновления и надо его сбрасывать. А еще некоторые приложения могут начинать работать медленнее, когда их кэш становится очень большим. Сказать однозначно, надо ли его удалять, нельзя. Но сейчас рассмотрим эту тему подробнее, чтобы вы понимали, когда это делать и как?
Надо ли чистить кэш телефона?
Что такое кэш на Андройд
Кэширование в компьютерном мире это то, что позволяет приложениям, таким, как браузеры, игры и потоковые сервисы хранить временные файлы, которые считаются актуальными для уменьшения времени загрузки и увеличения скорости работы. YouTube, Карты, музыкальные сервисы и множество других приложений сохраняют информацию в виде данных кэша. Это могут быть миниатюры видео, история поиска или временно сохраненные фрагменты видео. Кэширование может сэкономить много времени, так как качество и скорость Интернета не везде одинаковы. Но по иронии судьбы, когда приложения выгружают много данных на ваш телефон, это в конечном итоге замедляет его работу, особенно, когда остается мало места на встроенной памяти.
Наш Иван Кузнецов не так давно писал о том, что никогда не чистит кэш и считает это не нужным. Многие из вас, возможно, с ним не согласны. Да я и сам переодически провожу эту процедуру. Тем не менее, для полноты картины можете ознакомиться с его мнением.
Очистка кэша и данных на Android
Хотя мы часто упоминаем очистку кэша и данных в одном ключе, на Android это два совершенно разных действия. Например, музыкальные сервисы часто сохраняют в кэш информацию, относящуюся к исполнителям, которых вы слушали, но которые не входят в вашу библиотеку. Когда кэш приложения очищается, все упомянутые данные стираются.
Очистка лишней не будет? Не факт.
Более существенные данные включают в себя пользовательские настройки, базы данных и данные для входа в систему. Когда вы очистите кэш, это все удалится и будет не очень приятно. Если говорить грубо, можно сказать, что очистка кэша придает приложению тот вид, который был сразу после его установки, но у вас останутся данные, которые вы сами осознанно сохранили (загруженные песни, видео в оффлайн, карты и так далее). Если вы удалите и эти данные, то приложение будет вообще нулевым. Если чистите и кэш, и данные, проще тогда и приложение переустановить, чтобы вообще все красиво было.
Как очистить память смартфона. Пять простых шагов.
Когда надо чистить кэш
В чем-то я согласен с Иваном и с его мнением, которое я приводил в начале статьи. Нет смысла чистить кэш часто. После того, как вы его очистили, приложение все равно его создаст заново. Только в это время оно будет работать еще медленнее.
Тут важно найти баланс и понять, действительно ли ваш смартфон тормозит из-за кэша или, например, он просто старый и уже не тянет. Если не вникать в это, то можно посоветовать чистить кэш один раз в 3-6 месяцев, но быть готовым, что первые несколько дней скорость работы будет чуть ниже. В итоге, вы как бы освежите приложение, удалив лишний мусор и заново собрав только то, что нужно.
Google Play рассылает пустые обновления приложений. Что делать?
Как очистить кэш и данные на Android
Точную инструкцию для каждого смартфона дать не получится, так как все зависит от производителя и версии ОС, но общие правила будут следующими.
Шаг 1: Запустите «Настройки» и перейдите в раздел «Хранилище» (или найдите его поиском). Так вы сможете узнать, сколько памяти вашего смартфона занято и чем.
Шаг 2. В разделе «Хранилище» найдите «Приложения» (или «Другие приложения») и выберите его. В нем будут перечислены все приложения, а также то, сколько места каждое из них занимает. В некоторых версиях ОС можно найти сортировку приложений по алфавиту или размеру.
Шаг 3: Зайдите внутрь приложения и удалите кэш или данные. Только надо понимать, что это действие необратимо.
Три простых шага для очистки кэша.
В отношении специальных приложений для очистки я очень категоричен и не рекомендую ими пользоваться. Несмотря на их обещания ускорить систему чуть ли не в разы, в лучшем случае они просто сделают то же, что я только что описал. Так почему бы не сделать это самому без установки сомнительных приложений, которые еще и будут собирать ваши данные? Единственное приложение-оптимизатор, которому я доверяю, это Google Файлы, но работает оно именно с хранилищем и чистит в первую очередь мусор. Хотя, на него тоже нельзя слепо полагаться, но оно сделано Google, а к ней доверия куда больше, чем к каким-то левым разработчикам.
Если вы все еще хотите установить подобное приложение, просто помните о том, что они работают в фоновом режиме и используют системные ресурсы. Даже если они что-то ускорят, то сразу замедлят обратно.
Надо ли чистить кэш Android-приложений
Возможность очистки данных — это действительно полезная функция для решения многих проблем, уникальная для Android. Но как и любой полезной вещью злоупотреблять ей не стоит. Не надо чистить кэш и память каждый день. Делайте это периодически и только по мере надобности. Начал телефон работать медленно — пробегитесь по хранилищу. Если увидели, что какое-то из приложений занимает слишком много места, хотя не должно, очистите кэш.
Еще больше полезных советов и рассуждения в нашем Telegram-канале.
Еще раз: очистка кэша не испортит ваш смартфон, но приложение потеряет часть сохраненных данных и оптимизированных под вас настроек. Некоторое время придется накапливать их заново, зато так можно убрать действительно лишнее. Раньше можно было одной кнопкой очистить кэш всех приложений, теперь только по одному, но, наверное, это к лучшему.
Чего точно не стоит делать с кэшем, так это чистить его каждый день или каждую неделю. Так вы точно не сделаете лучше никому.
Дисковый кэш
Содержание
История
Впервые слово «кэш» в компьютерном контексте было использовано в 1967 году во время подготовки статьи для публикации в журнале «IBM Systems Journal». Статья касалась усовершенствования памяти в разрабатываемой модели 85 из серии IBM System/360. Редактор журнала Лайл Джонсон попросил придумать более описательный термин, нежели «высокоскоростной буфер», но из-за отсутствия идей сам предложил слово «кэш». Статья была опубликована в начале 1968 года, авторы были премированы [2]
Функционирование
Кэш — это память с большей скоростью доступа, предназначенная для ускорения обращения к данным, содержащимся постоянно в памяти с меньшей скоростью доступа (далее «основная память»). Кэширование применяется ЦПУ, жёсткими дисками, браузерами и веб-серверами.
Кэш состоит из набора записей. Каждая запись ассоциирована с элементом данных или блоком данных (небольшой части данных), которая является копией элемента данных в основной памяти. Каждая запись имеет идентификатор, определяющий соответствие между элементами данных в кэше и их копиями в основной памяти.
Когда клиент кэша (ЦПУ, веб-браузер, операционная система) обращается к данным, прежде всего исследуется кэш. Если в кэше найдена запись с идентификатором, совпадающим с идентификатором затребованного элемента данных, то используются элементы данных в кэше. Такой случай называется попаданием кэша. Если в кэше не найдено записей, содержащих затребованный элемент данных, то он читается из основной памяти в кэш, и становятся доступным для последующих обращений. Такой случай называется промахом кэша. Процент обращений к кэшу, когда в нём найден результат, называется уровнем попаданий или коэффициентом попаданий в кэш.
Например, веб-браузер проверяет локальный кэш на диске на наличие локальной копии веб-страницы, соответствующей запрошенному URL. В этом примере URL — это идентификатор, а содержимое веб-страницы — это элементы данных.
Если кэш ограничен в объёме, то при промахе может быть принято решение отбросить некоторую запись для освобождения пространства. Для выбора отбрасываемой записи используются разные алгоритмы вытеснения.
При модификации элементов данных в кэше выполняется их обновление в основной памяти. Задержка во времени между модификацией данных в кэше и обновлением основной памяти управляется так называемой политикой записи.
В кэше с немедленной записью каждое изменение вызывает синхронное обновление данных в основной памяти.
В кэше с отложенной записью (или обратной записью) обновление происходит в случае вытеснения элемента данных, периодически или по запросу клиента. Для отслеживания модифицированных элементов данных записи кэша хранят признак модификации (изменённый или «грязный»). Промах в кэше с отложенной записью может потребовать два обращения к основной памяти: первое для записи заменяемых данных из кэша, второе для чтения необходимого элемента данных.
В случае, если данные в основной памяти могут быть изменены независимо от кэша, то запись кэша может стать неактуальной. Протоколы взаимодействия между кэшами, которые сохраняют согласованность данных, называют протоколами когерентности кэша.
Кэш центрального процессора
Ряд моделей центральных процессоров (ЦП) обладают собственным кэшем, для того чтобы минимизировать доступ к оперативной памяти (ОЗУ), которая медленнее, чем регистры. Кэш-память может давать значительный выигрыш в производительности, в случае когда тактовая частота ОЗУ значительно меньше тактовой частоты ЦП. Тактовая частота для кэш-памяти обычно ненамного меньше частоты ЦП.
Уровни кэша
Кэш центрального процессора разделён на несколько уровней. Для универсальных процессоров — до 3. Кэш-память уровня N+1 как правило больше по размеру и медленнее по скорости обращения и передаче данных, чем кэш-память уровня N.
Самой быстрой памятью является кэш первого уровня — L1-cache. По сути, она является неотъемлемой частью процессора, поскольку расположена на одном с ним кристалле и входит в состав функциональных блоков. Состоит из кэша команд и кэша данных. Некоторые процессоры без L1 кэша не могут функционировать. На других его можно отключить, но тогда значительно падает производительность процессора. L1 кэш работает на частоте процессора, и, в общем случае, обращение к нему может производиться каждый такт (зачастую является возможным выполнять даже несколько чтений/записей одновременно). Латентность доступа обычно равна 2−4 тактам ядра. Объём обычно невелик — не более 128 Кбайт.
Вторым по быстродействию является L2-cache — кэш второго уровня. Обычно он расположен либо на кристалле, как и L1, либо в непосредственной близости от ядра, например, в процессорном картридже (только в слотовых процессорах). В старых процессорах — набор микросхем на системной плате. Объём L2 кэша от 128 Кбайт до 1−12 Мбайт. В современных многоядерных процессорах кэш второго уровня, находясь на том же кристалле, является памятью раздельного пользования — при общем объёме кэша в 8 Мбайт на каждое ядро приходится по 2 Мбайта. Обычно латентность L2 кэша, расположенного на кристалле ядра, составляет от 8 до 20 тактов ядра. В отличие от L1 кэша, его отключение может не повлиять на производительность системы. Однако, в задачах, связанных с многочисленными обращениями к ограниченной области памяти, например, СУБД, производительность может упасть в десятки раз.
Кэш третьего уровня наименее быстродействующий и обычно расположен отдельно от ядра ЦП, но он может быть очень внушительного размера — более 32 Мбайт. L3 кэш медленнее предыдущих кэшей, но всё равно значительно быстрее, чем оперативная память. В многопроцессорных системах находится в общем пользовании.
Отключение кэша второго и третьего уровней обычно используется в математических задачах, например, при обсчёте полигонов, когда объём данных меньше размера кэша. В этом случае, можно сразу записать все данные в кэш, а затем производить их обработку.
Ассоциативность кэша
При одинаковом объеме кэша схема с большей ассоциативностью будет наименее быстрой, но наиболее эффективной.
Кэширование внешних накопителей
Многие периферийные устройства хранения данных используют кэш для ускорения работы, в частности, жёсткие диски используют кэш-память от 1 до 32 Мбайт (модели с поддержкой
Применение кэширования внешних накопителей обусловлено следующими факторами:
Кэширование, выполняемое операционной системой
Кэш оперативной памяти состоит из следующих элементов:
Алгоритм работы кэша с отложенной записью
Изначально все заголовки буферов помещаются в список свободных буферов. Если процесс намеревается прочитать или модифицировать блок, то он выполняет следующий алгоритм:
Процесс читает данные в полученный буфер и освобождает его. В случае модификации процесс перед освобождением помечает буфер как «грязный». При освобождении буфер помещается в голову списка свободных буферов.
Алгоритм вытеснения
Если список свободных буферов пуст, то выполняется алгоритм вытеснения буфера. Алгоритм вытеснения существенно влияет на производительность кэша. Существуют следующие алгоритмы:
Программное кэширование
Политика записи при кэшировании
При чтении данных кэш-память даёт однозначный выигрыш в производительности. При записи данных выигрыш можно получить только ценой снижения надёжности. Поэтому в различных приложениях может быть выбрана та или иная политика записи кэш-памяти..
Существуют две основные политики записи кэш-памяти — сквозная запись (write-through) и отложенная запись (write-back).
Кэширование интернет-страниц
В процессе передачи информации по сети может использоваться кэширование интернет-страниц — процесс сохранения часто запрашиваемых документов на (промежуточных) прокси-серверах или машине пользователя, с целью предотвращения их постоянной загрузки с сервера-источника и уменьшения трафика. Таким образом, информация перемещается ближе к пользователю. Управление кэшированием осуществляется при помощи CMS конкретного сайта для снижения нагрузки на сервер при большой посещаемости. Кэширование может производится как в память, так и в файловый кэш (кэш на файлах).
Кэширование результатов работы
Многие программы записывают куда-либо промежуточные или вспомогательные результаты работы, чтобы не вычислять их каждый раз, когда они понадобятся. Это ускоряет работу, но требует дополнительной памяти (оперативной или дисковой). Примером такого кэширования является индексирование баз данных.