Имеет ли значение размер кэша жесткого диска в RAID?

Имеет ли значение размер кэша жесткого диска в RAID?

Возможный дубликат:
Имеет ли значение размер буфера жесткого диска?

Ладно, это не совсем RAID, но я только что купил Drobo без дисков, чтобы использовать его в качестве хранилища для видео/фоторабот, и теперь просматриваю жесткие диски, чтобы вставить в него. В большинстве случаев существует довольно большая разница в цене между дисками с размером кэша 16 МБ/32 МБ/64 МБ. В моем конкретном случае, с 4 дисками по 1 ТБ в Drobo, размер кэша как-то увеличивает производительность? Заранее спасибо!

решение1

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

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

решение2

Размер кэша жесткого диска не имеет значения нигде, поскольку все современные операционные системы выполняют собственное кэширование и имеют НАМНОГО больше памяти для этого. Если к нему недавно обращались, то он в любом случае будет в кэше ОС, поэтому наличие его в кэше диска не имеет значения, поскольку ОС не будет снова запрашивать эти данные у диска.

Если сравнивать с кэшами ЦП, то это как если бы у современных ЦП был ваш хороший толстый кэш L3 объемом 8 МБ, а затем, наблюдая за тем, как идут годы, находят ЦП с кэшем L2 объемом 128 МБ, который в 32 раза быстрее, но все еще имеющий этот старый, медленный кэш L3 объемом 8 МБ. Это не принесет никакой пользы, поскольку L2 всегда просматривается первым, а он и больше, и быстрее. В этом случае спор о том, должен ли кэш L3 быть объемом 8 или 16 МБ, является спорным вопросом, поскольку все, что находится в L3, также будет находиться в L2, поэтому L3 даже не увидит запрос.

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

sudo dd if=/dev/sda of=/dev/null bs=52488 count=1

Это прочитает 512 КБ с диска. Повторите это несколько раз, и вы начнете видеть очень быстрые цифры. На этой старой машине, которая у меня есть под рукой, я вижу порядка 751 МБ/с. Это с кэшем ядра. Теперь, если вы добавите опцию iflag=direct, это отключит кэш ядра, что позволит вам измерить скорость кэша диска. Повторяя это, я вижу только около 100 МБ/с, что примерно соответствует максимальной скорости передачи этого старого интерфейса IDE. Это не намного лучше, чем небуферизованная пропускная способность диска около 61 МБ/с.

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

Связанный контент