Назначение Windows Readyboost

1327
agz

Я получаю смешанные ответы в Google. Вот что я думаю о readyboost:

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


Другой вопрос, который у меня возникает, заключается в том, что файл подкачки также хранится на флешке readyboost, и это дает больший прирост производительности?
Также он постоянно кеширует (я не хочу изнашивать срок службы mu flashdrive)
И просто чтобы убедиться: Windows не использует мою флешку как дополнение к памяти, она использует ее для кеширования.

3

3 ответа на вопрос

2
Keltari

Вы путаете SuperFetch с ReadyBoost. Вот хорошая статья, объясняющая SuperFetch .

ReadyBoost отличается. ReadyBoost использует технологию SuperFetch для кэширования файлов на флэш-носители для ускорения чтения. Увеличивает ли это производительность? Да, однако это заметно только в системах с низким объемом памяти. Современные компьютеры имеют более чем достаточно оперативной памяти и быстрых дисков, что дает мало пользы от использования выделенного диска ReadyBoost.

Однако, если у вас есть запасная старая флешка (большинство людей, работающих на компьютере), которая будет поддерживать ReadyBoost, то нет никаких причин не вставлять ее в запасной порт USB. Преимущества будут незначительными, но что еще вы будете делать с запасным диском? На моей машине установлена ​​старая флешка на 512 МБ с ReadyBoost. Используя PerfMon, я вижу, что он иногда получает попадание в кэш ReadyBoost, поэтому я знаю, что он работает, хотя на самом деле он ничего не делает.

Я бы не стал помещать файл подкачки на диск ReadyBoost. ReadyBoost должен быть разрешен только на съемных флэш-накопителях, таких как флэш-накопители USB. Если ваш файл подкачки находится на одном из этих дисков, то ваша производительность будет ухудшаться из-за узкого места на шине USB. Тем не менее, внутренний SSD - отличное место для размещения вашего файла подкачки. Microsoft даже рекомендует это.

Что касается изнашивания твоего драйва ... Это моя техническая любимая мозоль ... Я просто не понимаю страх людей по этому поводу. Вы купили диск для использования . Если вы боитесь его изнашивать, вам не следовало покупать его. Это синдром «мы не используем полотенца для гостей».

Наконец, вы правы. Windows не использует вашу флешку в качестве ОЗУ. Кэширование является более эффективным использованием флэш-носителей, поскольку оно далеко не так быстро, как оперативная память. Хотя технически вы могли бы сделать это с программным обеспечением RAM-диска, это фактически ухудшило бы производительность вашей системы.

Так википедия отключена? Использование флэш-памяти с поддержкой ReadyBoost (устройства памяти NAND) для кэширования позволяет Windows Vista и более поздним версиям обслуживать произвольные операции чтения с диска с большей производительностью, чем без кэша. Это кэширование применяется ко всему содержимому диска, а не только к файлу подкачки или системным DLL. Флэш-устройства обычно работают медленнее, чем механический жесткий диск для последовательного ввода-вывода, поэтому для максимизации производительности ReadyBoost включает логику, которая распознает большие последовательные запросы на чтение и обслуживает эти запросы на жестком диске. agz 11 лет назад 1
Я думаю, что описание ОП является точным. Superfetch анализирует шаблоны использования и сохраняет часто используемые * исполняемые файлы * в кэш-памяти RAM для быстрого доступа. Readyboost анализирует шаблоны использования и сохраняет часто используемые * файлы * в кэш-памяти флэш-памяти NAND для быстрого доступа. Readyboost - это самодельный аналог гибридного жесткого диска. Thomas 10 лет назад 0
@Thomas За исключением того, что это не совсем эквивалентно. Гибридный SSD не имеет медленной шины USB, расположенной между микросхемой FLASH и жесткими дисками жесткого диска, не так ли? Часть о ReadyBoost, которую я до сих пор не понимаю, является узким местом на USB-шине. Доступ к жесткому диску всегда будет быстрее, потому что он (почти всегда) подключен через интерфейс SATA - быстрее, чем USB 2.0. Единственное исключение, возможно, будет USB 3.0? Что мне здесь не хватает? dtmland 10 лет назад 0
@dtmland SATA2 может поддерживать скорость передачи данных до 6 Гбит / с, но ни один вращающийся диск не может читать или записывать данные достаточно быстро, чтобы использовать все 6. Если вы запустите на своем жестком диске `winsat diskformal`, вы, вероятно, получите * случайные * скорости чтения около 1,5 Мбит / с , Это всего лишь физическое ограничение скорости вращения пластин и возможности чтения рычага. Приличная флешка USB 2.0 может максимально использовать 480 Мбит / с (60 Мбит / с), которые может обрабатывать ваша шина USB, что дает вам * случайное * чтение примерно равное или немного меньшее, чем у вашего жесткого диска * последовательная * скорость чтения. Медленнее, чем SSD или настоящий гибрид, но намного быстрее, чем обычный HDD. Thomas 10 лет назад 1
1
Jamie Hanrahan

@agz at the start you are almost completely correct. In your second paragraph, it is entirely possible that all of a file is loaded from the flash drive. (On the other hand, it is very possible to open a file and not even try to read all of it... this is often the case with large code files, like exe's and dll's.)

Re the pagefile, the pagefile is never cached to the ReadyBoost device.

I'm afraid that both Keltari and Thomas are incorrect.

As of Windows 7 and later, ReadyBoost is not a separate implementation of file caching from SuperFetch. If enabled, ReadyBoost simply provides additional storage space for SuperFetch to use. SuperFetch will generally use this before it uses RAM.

But whether ReadyBoost is enabled or not, SuperFetch does what it always does, which is to try to cache frequently- and recently-used files (not just exe's and dll's).

(Let me be plainer about that last: The assertion that SuperFetch only caches exe's and dll's is incorrect.)

But not the pagefile. The pagefile will never be cached by SuperFetch. (Think: The pagefile contains data that was evicted from RAM because it was deemed of less importance than other stuff that needs RAM. So why would SuperFetch ever decide to read it back into RAM? The memory manager already decided to put it in the pagefile.)

Therefore pagefile contents will not be cached to a ReadyBoost drive, because ReadyBoost never caches anything that SuperFetch won't; ReadyBoost does not have its own "what to cache?" algorithms. ReadyBoost simply provides space for SuperFetch to use.

Another reason that SuperFetch, and therefore ReadyBoost, won't cache the pagefile: SuperFetch does not cache files that are currently open for writing. Its purpose is to cache files that are "read-mostly". The pagefile may be being written to constantly. So there is never an opportunity to snapshot it, or a part of it, to another cache device. The cache would have to be updated every time the real file was, and there is no mechanism for that for any file.

Nor will Windows allow you to create a pagefile on a USB drive. Reason: If Windows needed to read pagefile contents from a USB drive, and someone had pulled the USB drive from its port, there would be no other place to get that data. Windows would have to crash, just as it does on any other page read attempt from a failing drive.

(If you want to give your pagefile SSD-like speed, but you can't afford to make your entire system drive an SSD, buy a small cheap SSD like 16 GB or so and put your pagefile on that.)

0
Thomas

Как сказал Келтари, ReadyBoost использует технологию SuperFetch для кэширования файлов и повышения производительности. SuperFetch сам по себе анализирует шаблоны использования и кэширует копии часто используемых исполняемых файлов (и библиотек) в оперативную память для более быстрого доступа, чем чтение их с жесткого диска - это работает, потому что оперативная память намного быстрее, чем жесткий диск. ReadyBoost анализирует шаблоны использования и сохраняет некоторые часто используемые файлы (не только исполняемые файлы и библиотеки) на флешке ReadyBoost (а не в ОЗУ). ReadyBoost работает, потому что флэш-память USB намного быстрее, чем жесткий диск для определенных видов операций .

Жесткие диски работают, сохраняя данные на жестком (по сравнению с гибким) вращающемся магнитном диске, называемом дисководом, и читая или записывая эти данные, используя небольшую магнитную иглу, которая сидит на руке, которая качается поверх диска. Если все данные, которые вам нужно прочитать, - это все подряд, известные как последовательные данные, то ваш жесткий диск может читать их довольно быстро - обычно от 60 до 100 мегабайт в секунду. Но если данные не сохраняются последовательно, рычаг чтения должен много двигаться вперед и назад, прежде чем он сможет даже начать читать новый кусок данных - это называется задержкой, и это сильно замедляет процесс. Средний жесткий диск сегодня, вероятно, будет считывать около 1,5 мегабайт в секунду, если данные случайно разбросаны по пластине.

Поскольку случайное чтение на жестком диске происходит слишком медленно, а флэш-память невероятно хороша при случайном чтении, хранение кеш-памяти на USB-накопителе может значительно повысить производительность по сравнению с обычным жестким диском для случайного чтения. Как я уже говорил в моих комментариях ранее, хороший флэш-накопитель USB 2.0 может максимально использовать вашу шину USB со скоростью 480 мегабит (60 мегабайт) в секунду. Это немного лучше, чем 1,5;)

Есть несколько предостережений.
Чем быстрее вращается диск жесткого диска, тем меньше задержка и скорость чтения. Стандарт для настольных накопителей сейчас составляет 7200 об / мин. Высокопроизводительные накопители для центров обработки данных вращаются со скоростью 15 000 об / мин.
Не все флешки созданы одинаковыми. Вы можете использовать встроенную команду Windows, winsatчтобы измерить производительность вашей флешки и сравнить ее с вашим жестким диском.

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

ReadyBoost записывает или читает данные с вашего накопителя ReadyBoost только тогда, когда от этого выиграет ваш компьютер. Как отметил Келтари в своем ответе, системы с более высокой производительностью будут очень редко использовать ReadyBoost. Низкоэффективные системы, такие как старый ноутбук, будут использовать ваш диск ReadyBoost довольно редко - но он все равно должен прослужить вам 10 лет или более, что больше, чем срок службы вашего старого ноутбука;)

На ReadyBoost не влияет и не влияет на оперативную память вашей системы. Множество бессмыслиц, которые вы видите в Интернете о том, что компьютеры с низким объемом памяти приносят пользу, в значительной степени фальшиво - ReadyBoost просто так не работает; это то, для чего ваш файл подкачки.

Если у вас есть SSD или гибридный жесткий диск, ReadyBoost будет для вас совершенно бесполезным, поскольку флэш-память USB намного медленнее, чем флэш-память на вашем SSD или гибридном жестком диске. На момент написания этой статьи я не нашел способа настроить ReadyBoost, то есть заставить его кешировать данные со вторичного жесткого диска.


Примечание. Чтобы сравнить производительность жесткого диска (c :) и флэш-накопителя USB (e :), чтобы определить, пользуетесь ли вы преимуществами ReadyBoost, вы можете запустить эти команды в командной строке с повышенными привилегиями :
winsat disk -read -ran -ransize 40960 -drive c:
winsat disk -read -ran -ransize 40960 -drive e: