SSD как кэш считывания для ЧАСТО считываемых данных

Я задаюсь вопросом, почему Вы выбрали набор точек и стрелок для демонстрации шрифта вместо... Вы знаете... буквы.

Так или иначе команда для изменения шрифта на VTs setfont или consolechars. Выполнение setfont без args или consolechars -d загружает шрифт "по умолчанию". Другие, которых можно загрузить, найдены в /usr/share/consolefonts.

В Debian существует файл /etc/default/console-setup который использование сценариев начальной загрузки решить, что сделать со шрифтом консоли.

5
13.04.2017, 15:36
2 ответа

Для моего наилучшего понимания DM-Cache делает то, что вы просите. Я не мог найти определенный источник для этого, но здесь автор объясняет , что он должен был назвать его DM-Hotspot, потому что он пытается найти «горячие точки», то есть областей высокой активности и только кэширует те Отказ

На выходе состояние dmsetup Вы найдете две переменные, а именно Read_Proomote_adjustment и write_proomote_adjustment . Файл кэш-политик объясняет, что

внутренне политика MQ определяет порог продвижения. Если удар Количество блока, не в кэш-памяти выше, этот порог он получает повышен до кэша.

Итак, путем регулировки Read_Proomote_adjustment и write_proomote_adjustment Вы можете определить, что именно вы имеете ввиду в часто Чтение / письменные данные, и как только количество чтения / пишетов превышает это Порог, блок будет «продвигаться», то есть хранится в кеше.

Помните, что метаданные (предварительно кэш) метаданные обычно хранятся в памяти и только записаны на диск / SSD, когда устройство кэша приостановлено.

3
27.01.2020, 20:39

Однако, если я не пропускаю что-то, все три, кажется, хранят файл в кэше в первый раз, когда он читается.

Другая опция ничего не состояла бы в том, чтобы кэшировать в первый раз, когда она читается, и вместо этого проведите подсчет количества раз чего-то, необходим, затем используйте некоторых произвольно число для решения, когда что-то "часто использовалось".

Никто никогда не реализовывал бы систему этот путь, потому что это означает, говорим ли мы, что число 10 или 20 или 100 раз, затем после того как число достигнуто, очевидно, что системе не удалось кэшировать объект, к которому часто получают доступ, первое X количества раз. Не настолько полезный!

Я хотел бы, чтобы кэш кэшировал те чтения, которые я часто использую.

К виду повторяют предыдущую точку, что "часто"? Реалистично, это не могло быть постоянное число, с тех пор если система идет достаточно долго, много вещей могли бы стать "часто используемыми". Это могло быть число, масштабируемое к "высокому счету", но в этом случае, масштаб мог стать очень несбалансированным, если у Вас есть несколько мелочей, получил доступ к непропорциональному количеству раз.

Короче говоря: никакой механизм кэширования не собирается использовать минимальное количество. Это собирается кэшировать все, пока кэш не будет полон, затем это начнет выселять вещи на основе некоторого приоритетного алгоритма.

Так как "частота" является фактором "часто", она имеет смысл, что каждое чтение будет кэшировать что-то, даже если это будет первый раз, когда и кэш полон, так как последнее чтение файла будет "чаще всего файл чтения", если мы рассмотрим частоту "количества раз, этот файл был считан в прошлом X чтений", где X = 1.

Я волнуюсь, что поиск по телам всех моих maildir файлов или рекурсивного grep в некотором большом каталоге мог бы выселить значительные части материала, который я читал намного чаще.

Вероятно, не, если кэш был полон для запуска с. Каждое чтение будет кэшироваться, но оно будет также выселено раньше, чем ранее кэшируемый материал, к которому часто получали доступ.

Я предполагаю, что адаптивная замена могла бы быть термином, описывающим, что я после.

Заметьте в "Сводке" на том, что страница Википедии, что обсуждение о различных стратегиях (по сравнению с LRU) для рейтинга вещей в кэше, не вещей, которые никогда не были в кэше. Это следует за логикой, которую я описал выше: все входит в кэш, и эффективность механизма кэширования определяется алгоритмом для выселения вещей от кэша. Не вставление их.

2
27.01.2020, 20:39
  • 1
    Спасибо! я предполагаю, что считал бы X=2 для этого “волшебного порога” Вашим использованием мысленного эксперимента. Таким образом, чтение файла однажды не кэшировать только отмеченное, но дважды оно будет. Это (объединенный с уровнем ОС, кэширующимся к RAM), должно заботиться о наиболее редко файлах чтения, одновременно минимизируя влияние для действительно часто используемых объектов. Тем не менее стратегии замещения, которые я нашел, а именно, LRU, FIFO и случайный, не кажутся, что они были бы особенно нацелены на отслеживание частоты использования. Таким образом, даже если установленный с точки зрения политики замещения, проблема, по-видимому, остается. –  MvG 29.12.2013, 19:40
  • 2
    Следует иметь в виду, что нормальный кэш страницы (в RAM), вероятно, усложняет все это: так как наиболее часто используемые страницы кэшируются в RAM, количество раз, к дисковым блокам, откуда они прибыли, получают доступ, будет затронут (это будет очень низко)! Все же тот материал может быть выселен из кэша RAM в конечном счете - как механизм кэширования SSD должен компенсировать это? Существует много для рассмотрения здесь... Я уверен, что кэш дискового блока предназначается для одобрения часто используемых вещей, но точно как может не быть столь простым, как это могло бы казаться на первом соображении. –  goldilocks 29.12.2013, 20:24

Теги

Похожие вопросы