Я хотел бы использовать (маленький) SSD-диск в качестве кеша для большого жесткого диска. Я понимаю, что есть аппаратные продукты, которые делают это: HighPoint RocketHybrid HBA , Intel SmartResponse и другие. Я могу найти только один программный продукт: ExpressCache от Diskeeper :
ExpressCache разумно и автоматически объединяет лучшие атрибуты твердотельных накопителей и жестких дисков без каких-либо усилий или предварительных знаний пользователя, поэтому пользователи получают лучшее из обоих миров; динамическая производительность и масштабируемая емкость. Поскольку могут использоваться твердотельные накопители размером до 4 ГБ, это обеспечивает невероятно доступное решение для производителей.
Состоящий из компонентов пользовательского режима и режима ядра, ExpressCache использует твердотельный накопитель в качестве интеллектуального кэша в сочетании с жестким диском для повышения общей производительности системы и значительного ускорения запуска ПК с Windows, запуска приложений и скорости доступа к данным.
Тем не менее, этот продукт только OEM !
Я искал альтернативы, но безуспешно ... Я не могу понять это: звучит как отличная идея, никакого дополнительного оборудования не требуется, и это может реально повысить производительность диска, не тратя целое состояние.
Итак, я спрашиваю, знает ли кто-нибудь программное обеспечение, которое делает это, для Windows или Linux. Или, если вы думаете, что это плохая идея, я хотел бы знать, почему.
Примечание: ReadyBoost не очень подходит для этого. Он построен на предположении, что запись на диск действительно дорогая, мало влияет на системы с большим количеством оперативной памяти и не масштабируется должным образом, если ваш SSD составляет более 100 ГБ +.
источник
Ответы:
Есть несколько способов использовать SSD в качестве кеша для вашего обычного жесткого диска. Это не новая идея, и уже имеет несколько реализаций.
В Windows:
Лучшая реализация от NVelo: Dataplex - имеет кэширование чтения и опциональное кэширование записи. К сожалению, как и ExpressCache, он доступен только OEM-производителям. Самый дешевый способ получить его - купить OCZ SSD, который упаковывает адаптер PCIE с небольшим SSD и использует программное обеспечение dataplex для кэширования вашего существующего жесткого диска.
Однако существуют и чистые программные реализации: FancyCache - работает так, как если бы вы ожидали выполнения кэширования чтения и записи на уровне блоков. Он в основном существует как кэш-память, но недавно получил поддержку SSD-кэша второго уровня (немного похожего на ZFS L2ARC), который может быть произвольно большим.
Если вы просто хотите максимально использовать IOPS за счет долговечности записи (например, идеально подходит для ИБП), альтернативой может быть что-то вроде: SuperCache - при этом будет использоваться только ОЗУ, но не SSD. Но, в отличие от других, счастливо будет превышать 100 000 операций ввода-вывода в секунду на обычном оборудовании. Очень полезно, например, для кэширования блочного устройства, содержащего индексы базы данных. По сути, обеспечивает производительность, подобную RAM-диску, для тома любого размера (при условии, что базовое устройство может не отставать от объема записи).
В Linux все немного лучше:
Как упоминалось ранее, у вас есть Flashcache - он работает довольно хорошо, но его производительность сильно зависит от вашей рабочей нагрузки. Во многих случаях при плохом доступе он не будет работать так, как вы ожидаете. Не уверен, почему это так, но для большинства рабочих нагрузок это отличный вариант.
Наилучший вариант (хотя код все еще не совсем «готов к работе») - это bcache (более подробная информация здесь , хотя некоторые из них устарели) - он имеет лучшую производительность среди всех SSD-кешей, которые я когда-либо пробовал, и в отличие от всех остальных упомянутые опции поддерживают кеширование нескольких блочных устройств в одном кеше. Он также поддерживает (хотя я лично не пробовал это, возможно, он еще не работает) несколько кеш-устройств, поэтому вы можете использовать несколько более дешевых SSD для максимизации IOPS. Код находится в репозитории git: git: //evilpiepirate.org/~kent/linux-bcache.git . Поговаривают о том, чтобы объединить его со следующим выпуском ядра, хотя это еще точно не решено.
Лично я считаю, что наиболее эффективным вариантом является bcache (моя рабочая нагрузка в основном связана с базой данных, хотя я также полностью кэширую свой основной ноутбук). По моему опыту, пропускная способность записи жесткого диска часто является узким местом, поскольку кэш быстро заполняется, а жесткий диск должен записывать кэшированные сектора, поэтому чем быстрее, тем лучше. Это, конечно, для тяжелой рабочей нагрузки записи, при более сбалансированной рабочей нагрузке чтения-записи, скорее всего, все будет иначе.
Я также должен предупредить вас, что на полной скорости вы быстро исчерпаете пределы записи вашего SSD. В настоящее время я использую свой третий OCZ Vertex 3. SSD, хотя и очень очень быстрые, просто не очень долговечные, поэтому ожидайте заменять их каждые несколько месяцев.
источник
Существует очень интересное программное обеспечение для Linux, которое используется очень загруженными серверами:
https://github.com/facebook/flashcache
На SATAII, 8 магнитных ротационных дисков в конфигурации RAID6 я получаю серьезное повышение производительности. Произвольное чтение с SSD-устройства SATAIII flashcache (чтение 540, запись 420) насыщает мою шину SATAII почти до 90-95% - у меня 280 МБ чтения (в пиковое время), 270 МБ записи (только при моделируемой нагрузке ... никогда не достигалось в производстве) , Это длится уже около полугода. Дисковод пишет: 20-30 МБ / с - используйте свободное время ввода-вывода ...
источник
Насколько велик ваш SSD?
Вероятно, наилучшего эффекта вы достигнете, установив всю ОС и программное обеспечение на SSD, сохраняя при этом большое количество данных на жестком диске.
Если у вас маленький SSD, то было бы полезно поместить на него файл подкачки. Я сомневаюсь, что Windows поместит большую часть ваших файлов в кэш, но, по крайней мере, она позволит вам иметь память недавних приложений и кэш файлов в оперативной памяти, в то же время позволяя быстро переключаться на не совсем новые используемые приложения (которые будут находиться в файле подкачки, который, в свою очередь, на SSD).
источник
FancyFlash сделал свою работу. У меня есть собственный сервер Hyper-V R2 @home для моих лабораторий, и я получил привод OCZ Revo Hybrid PCIe. К сожалению, драйвер встроенного кэша работает только с Windows 7. Нет плана для Windows Server 2008 R2. Поэтому я установил драйвер FancyFlash на свой хост Hyper-V и сконфигурировал мой SSD на Revo Hybrid, чтобы он работал в качестве кеша для встроенного диска объемом 1 ТБ (где находится мой VHD). TaDa! Работает и ускоряет мои виртуальные машины много! :)
Я надеюсь, что финальный релиз будет доступным $$$ ...
источник
eBoostr - это приложение, которое кэширует большие части регулярно используемых приложений для ускорения работы вашей системы. Как правило, он предназначен для использования USB-накопителей или неиспользуемой оперативной памяти, но нет реальной причины, по которой вы не можете использовать вместо этого SSD.
Он доступен для всех основных версий Windows и очень похож на то, что вам нужно.
Узнайте больше: http://www.eboostr.com/feature
источник
Хотя, безусловно, можно загрузить всю операционную систему и приложения на одном SSD, вы, вероятно, не должны этого делать. Со временем твердотельные накопители замедляются непрерывной перезаписью и должны быть «обновлены», чтобы ускорить их резервное копирование. Вам лучше использовать самый быстрый жесткий диск, который вы можете найти, например, диск SATA 600 Гбит / с, и получить материнскую плату или другой контроллер, поддерживающий кэширование SSD на аппаратном уровне. Все материнские платы Asus ROG Maximus поддерживают эту функцию встроенной.
Однако, пока я не собрал эту новую систему, я нашел способ получить некоторую выгоду от SSD. Я построил кэш-память на SSD, и, хотя на моем основном жестком диске она есть, Windows, похоже, автоматически использует более быстрый SSD. Я также переместил весь свой кеш Internet Explorer на SSD, что ускорило серфинг и интернет-видео как минимум в 2 или 3 раза.
Я буду строить свою новую систему на материнской плате Asus Maximus VI Hero с процессором Intel i7 4-го поколения в формате сокета 1150. Кажется, это хороший уровень производительности, не тратя тысячи, чтобы добраться туда. Предполагается, что общая стоимость составит от 800 до 900 долл. США, включая новую версию Windows.
источник
Можно использовать технологии ввода-вывода Windows ReadyDrive и ReadyBoost . Поскольку эти технологии датируются еще до появления SSD, мало информации о том, работают ли они с SSD или насколько хорошо.
Для ReadyBoost см. Несколько советов о том, как использовать мой SSD в качестве кеш-диска ReadyBoost? , хотя этот другой поток утверждает обратное.
ReadyDrive - это функция Windows Vista, которая позволяет компьютерам с ОС Windows Vista или более поздней версии, оснащенным гибридным диском или другими кэшами флэш-памяти (например, Intel Turbo Memory), загружаться быстрее и выходить из спящего режима за меньшее время.
Можно также поместить файл подкачки на SSD, хотя ожидаемое улучшение будет ограниченным, если вашей системной памяти будет достаточно.
Как отмечают в Penartur, наилучшим улучшением станет установка Windows на SSD.
источник
Скачать ExpressCache
Вы искали в Google ExpresCache? Я вижу, можно скачать его с
Особенно в Lenovo, вы можете скачать версию для x86 или x64. Sandisk, кажется, просто предлагает ExpressCacheSetup.exe, и я не знаю, какую архитектуру он поддерживает. Может быть один, может оба ...
источник
ExpressCache является только OEM-продуктом. Я вполне уверен, что он имеет внутренний контроль, предотвращающий его использование на оборудовании, отличном от лицензированных производителей.
Похоже, что сейчас FancyCache - единственный жизнеспособный инструмент для общего использования / не-oems. Я могу неправильно понять вещи, но я думаю, что что-то вроде readyboost на SSD довольно быстро прожигает циклы записи. Для меня идея здесь состоит в том, чтобы иметь только одну букву диска для основного жесткого диска и SSD, помещая наиболее часто используемые и обычно статические файлы на SSD и сохраняя на жестком диске менее часто используемые и часто изменяемые файлы. Это дало бы преимущество в производительности SSD и долгосрочную жизнеспособность жесткого диска и не требовало бы от пользователя попытки балансировать пространство на SSD с объемом жесткого диска. Необходимость в этом настолько очевидна, по крайней мере, для меня, что я ошеломлен отсутствием решений этой потребности.
источник
Не назван здесь VeloSSD. Я не могу дать хорошую репутацию этому программному обеспечению, так как оно часто ломало мои данные, но другой пользователь сообщил, что работает нормально
источник