Полезные утилиты для управления кэшированием файлов

Светлана Шляхтина

Особенности кэширования в Windows

Утилиты для управления кэшированием

   O&O CleverCache 6.0 Professional

   CacheBoost Professional Edition 4

   CachemanXP 1.12

 

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

Кэширование в операционной системе Windows используется и при выполнении операций чтения и записи файлов. Кэширование файлов при чтении обеспечивает более быстрый доступ к ним в случае повторного обращения. При первоначальном обращении к файлу система считывает его с диска в оперативную память, а благодаря кэшированию при повторном чтении файла система мгновенно извлекает файл из оперативной памяти, вместо того чтобы считывать его с более медленного жесткого диска. Кэширование файлов при записи позволяет приложениям не тратить времени на ожидание завершения операции сохранения данных и практически мгновенно приступать к выполнению следующих операций. В результате возрастает скорость выполнения файловых операций: запуск программ, копирование файлов, открытие файлов, и т.д., но все это может иметь место только в случае оптимального управления дисковым кэшем. Дисковым кэшем (Disk Cache) называют часть установленной в компьютере оперативной памяти, используемой как промежуточный буфер при чтении данных и записи их на внешние устройства хранения (жесткий диск, дискеты, CD-ROM и пр.). Оптимальные размеры кэша диска зависят от аппаратной конфигурации, версии системы, используемых приложений, и в итоге они для каждого компьютера индивидуальны. Чем больше дисковый кэш, тем быстрее считываются файлы с жесткого диска и тем меньше остается свободной оперативной памяти для работы приложений — задача в том, чтобы найти удачный компромисс и определить такой размер кэша, чтобы файловые операции выполнялись быстро и оперативной памяти хватало для работы приложений.

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

Особенности кэширования в Windows

Устанавливаемые по умолчанию в Windows настройки кэширования на практике не всегда оказываются оптимальными в плане достижения максимальной производительности. По умолчанию память под дисковый кэш выделяется динамически, а значит, его размер зависит от выполняемых в данный момент задач. В целом это очень хорошо, так как размер кэша увеличивается при интенсивном обращении к жесткому диску, например при копировании большого числа файлов, и данные операции выполняются быстрее. Однако бывает, что это происходит в ущерб работающим приложениям, поскольку некоторые файловые операции резервируют и достаточно долго удерживают большие объемы оперативной памяти, уменьшая тем самым объем свободной оперативной памяти системы, доступной для управления приложениями. В то же время, когда приложения запрашивают у Windows оперативную память, последняя может перемещать часть неиспользуемых в текущий момент данных из оперативной памяти на жесткий диск в файл подкачки, хотя в этом случае лучше было бы немного сократить размер дискового кэша. В итоге быстрая оперативная память будет использоваться для хранения менее активных данных, что приводит к снижению общей производительности системы, так как извлечение данных из файла подкачки осуществляется значительно медленнее, чем из оперативной памяти. Вследствие этого кэширование файлов, изначально предназначенное для повышения производительности работы системы, может не повышать, а, наоборот, снижать ее.

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

К сожалению, непосредственно в Windows отсутствуют удобные встроенные механизмы для эффективного управления кэшированием. Стандартные средства настройки, предусмотренные для этой цели разработчиками, позволяют лишь включать/отключать дисковое кэширование записи. Для этого следует выбрать из контекстного меню папки Мой компьютер команду Свойства, перейти на вкладку Оборудование, щелкнуть на кнопке Диспетчер устройств и открыть раздел Дисковые устройства. Затем нужно вызвать контекстное меню нужного устройства, для которого следует изменить настройки дискового кэширования, выбрать команду Свойства и включить или выключить флажок Разрешить кэширование записи на диск (рис. 1).

 

Рис. 1. Включение режима кэширования записи

Все иные изменения в настройках кэширования файлов могут быть произведены только путем корректирования соответствующих параметров системного реестра или правкой файла System.ini. Но подобные операции требуют аккуратности, осторожности и профессионализма. Кроме того, они недостаточно эффективны, так как этим способом можно лишь жестко задать значения максимального и минимального объемов кэша, а они для каждого компьютера свои (хотя и существуют определенные рекомендации, которых можно придерживаться) и подбирать их придется вручную, путем многочисленных экспериментов. Более того, ограничение размера кэша далеко не всегда оказывается целесообразным — гораздо эффективнее оставить его динамическим, но изменить принцип управления процессом кэширования.

Утилиты для управления кэшированием

Чтобы более эффективно организовать управление кэшированием, лучше воспользоваться специализированной утилитой от сторонних производителей — это будет намного удобнее, быстрее, надежнее и может помочь оптимально настроить параметры кэширования и добиться более высокой производительности и стабильности работы системы. Правда, выбор ПО для управления кэшированием в Windows весьма ограничен. Те или иные возможности организации кэширования имеются в некоторых приложениях, отвечающих за настройку и оптимизацию операционной системы: Windows Accelerator, Reg Organizer, RAM Saver Pro и др. Однако существует и ряд специализированных утилит с более широкими возможностями в плане управления кэшированием — наиболее удачные из них мы и рассмотрим.

Однако не стоит думать, что установка той или иной утилиты позволит каждому пользователю значительно увеличить быстродействие системы, ибо здесь все зависит от аппаратной конфигурации компьютера и характера компьютерной деятельности: в одних случаях производительность может вырасти существенно, а в других — увеличение быстродействия системы будет менее ощутимым.

O&O CleverCache 6.0 Professional

Разработчик: O&O Software GmbH

Сайт программы: http://www.oo-software.com/en/products/ooclevercache/pro/

Размер дистрибутива: 6,79 Мбайт

Способ распространения: shareware

Цена: 29,95 долл.

Работа под управлением: Windows NT 4.0/2000/XP/2003

CleverCache — самое удачное решение для эффективного управления процессом кэширования в среде Windows. Приложение позволяет предотвратить нерациональное использование оперативной памяти, снижает нагрузку на дисковую и процессорные подсистемы компьютера и позволяет в два раза увеличить быстродействие системы без модернизации компьютера и без риска ухудшения стабильности ее работы. Это приложение самостоятельно эффективно управляет распределением памяти между дисковым кэшем и приложениями с помощью технологии AutoSense и к тому же не требует предварительной настройки со стороны пользователя, что позволяет рекомендовать CleverCache в качестве надежного инструмента даже новичкам. В то же время профессионалы при необходимости могут корректировать настройки программы через панель управления, так как программа встраивается в операционную систему в качестве системной службы. Например, вручную можно определить максимальное и минимальное значения файлового кэша, объем всегда свободной оперативной памяти (рис. 2), временной интервал между помещением файла в кэш-память и его записью на диск и т.п. Экспериментируя с настройками, стоит обратить внимание на подробную документацию, где приведены рекомендуемые значения параметров в зависимости от аппаратуры и нюансов работы. Пользовательские настройки могут сохраняться в профилях для дальнейшего использования.

 

Рис. 2. Настройка параметров функции Mem-O-Free, отвечающей за контроль свободной оперативной памяти

При каждой загрузке операционной системы CleverCache загружается в системный трей, выполняет проверку аппаратной конфигурации компьютера и автоматически подбирает лучшие параметры настройки для оптимального использования ресурсов оперативной памяти. Результаты настройки отображаются в окне встроенного модуля Cache Monitor (рис. 3). Программа постоянно контролирует объем свободной оперативной памяти, и если он оказывается меньше некоторой величины, то неиспользуемые участки памяти сбрасываются в файл подкачки и освобождается недостающий объем оперативной памяти. В итоге в системе в любой момент времени оказывается доступным некоторый фиксированный объем свободной оперативной памяти, необходимой приложениям. Это приводит к уменьшению времени отклика и наиболее заметно при одновременном запуске нескольких приложений и частых переключениях между ними.

 

Рис. 3. Статистика CleverCache в окне Cache Monitor

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

CacheBoost Professional Edition 4

Разработчик: Systweak

Сайт программы: http://www.systweak.com/CacheBoost/

Размер дистрибутива: 898 Кбайт

Способ распространения: shareware

Цена: 29,95 долл.

Работа под управлением: Windows NT/2000/XP

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

CacheBoost обеспечивает интеллектуальное управление дисковым кэшем, самостоятельно подбирая оптимальные для данной конфигурации параметры кэширования и непрерывно контролируя объем свободной оперативной памяти и размер кэша. При настройке на автоматический контроль программа самостоятельно меняет размер дискового кэша исходя из объема доступной в системе оперативной памяти. Это означает, что при открытии большого числа приложений CacheBoost сразу же уменьшает размер кэша, чтобы увеличить объем свободной оперативной памяти, доступной для приложений. В случае работы с небольшим числом приложений программа увеличивает размер кэша, чтобы ускорить выполнение файловых операций. При необходимости можно настроить параметры кэширования вручную (рис. 4), указав максимальный размер кэша, определив возможный баланс между размером кэша и доступной памятью и установив временной интервал между помещением файла в кэш-память и его записью на диск.

 

Рис 4. Вариант настройки параметров кэширования вручную

CacheBoost контролирует наличие свободной оперативной памяти, распределение ее между приложениями и активность использования дискового кэша, наглядно отображая статистику на графике (рис. 5). Программа дефрагментирует системную память для быстрого доступа к ней (рис. 6), восстанавливает утечку памяти в плохо оптимизированных приложениях и периодически освобождает часть оперативной памяти, помещая неиспользуемые данные в swap-файл. Это освобождает свободную оперативную память, необходимую для приложений, и тем самым повышает устойчивость работы системы, позволяет активным приложениям быстрее реагировать на действия пользователя. По желанию пользователя возможно принудительное очищение памяти, занятой дисковым кэшем. Реализованная в программе технология Data Safe обеспечивает полную безопасность кэшируемых данных.

 

Рис 5. График использования оперативной памяти и дискового кэша

Рис 6. Автоматическая оптимизация оперативной памяти

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

CachemanXP 1.12

Разработчик: Outer Technologies

Сайт программы: http://www.outertech.com/index.php?_charisma_page=product&id=7

Размер дистрибутива: 1,25 Мбайт

Способ распространения: shareware

Цена: 25 долл.

Работа под управлением: Windows NT/2000/XP

CachemanXP — простой инструмент для повышения производительности компьютера путем оптимизации настроек кэширования и автоматического освобождения оперативной памяти. Программа позволяет найти оптимальный размер дискового кэша и предотвратить частое перемещение данных приложений на жесткий диск, что приводит к более стабильной работе системы и сокращает время ее реакции на действия пользователя. Удобный интуитивно понятный интерфейс и наличие режима автоматической оптимизации, не требующего серьезных знаний ОС, позволяют успешно использовать ее даже новичкам, а возможности ручной настройки параметров делают ее интересной и для продвинутых пользователей. Для защиты системы от неудачной настройки в программе предусмотрена функция автоматического резервного копирования, которая позволит мгновенно восстановить измененные параметры.

Утилита работает в фоновом режиме, а иконка программы отображается в системном трее. Программа непрерывно контролирует загрузку процессора, объем свободной оперативной памяти и то, как ее расходуют различные запущенные процессы. Процессы, потребляющие свыше 10% загрузки центрального процессора, отображаются в информационном окне синим цветом, а процессы, которые потребляют свыше 80% загрузки процессора, показаны красным. При необходимости приоритет выполнения любого из соответствующих процессов можно изменить (рис. 7). CachemanXP позволяет вручную настраивать параметры дискового кэша (рис. 8), а также задавать размеры кэша DNS, кэша иконок и кэша Internet Explorer, хотя может сделать это и автоматически — в режиме автооптимизации. Кроме того, программа может периодически или по команде пользователя освобождать часть оперативной памяти, перемещая из нее часть не используемых в данный момент приложений из оперативной памяти на жесткий диск в файл подкачки. Дополнительно программа позволяет проводить тонкую настройку некоторых системных параметров.

 

Рис. 7. Изменение приоритета одного из запущенных процессов

Рис. 8. Настройка параметров дискового кэша

Имеется более дешевая упрощенная версия программы CachemanXP — Cacheman (http://www.outertech.com/index.php?_charisma_page=product&id=2, 927 Кбайт, 10 долл., рис. 9). Она еще более проста в работе и рассчитана на новичков, которые благодаря серии встроенных мастеров и поддержке профилей смогут быстро настроить параметры кэширования оптимальным для своего компьютера образом.

 

Рис. 9. Настройка параметров освобождения оперативной памяти

 

В начало В начало

КомпьютерПресс 5'2006