Известно, что жесткие диски оснащаются собственной буферной памятью сравнительно небольшого объема. Буфер используется как встроенная кэш-память при выполнении операций чтения и записи, позволяя оптимизировать работу и минимизировать требующие существенного времени обращения к магнитным пластинам. Например, когда в буфере имеется свободное место, контроллер может временно поместить туда данные, которые необходимо записать, и подождать удобного момента, когда нет запросов от системы (хоста).
Выполняя запросы на чтение, контроллер хранит последние считанные данные на случай, если хост запросит их повторно – тогда не потребуется еще раз обращаться к диску. Контроллер часто выполняет упреждающее чтение, пытаясь спрогнозировать следующие запросы хоста, и считанные таким образом данные также помещает в буфер. Получается, что буфер используется жестким диском постоянно, и его роль очень важна.
Производители жестких дисков всегда стремились нарастить объем буферной памяти. Сегодня это сделать легче, поскольку обычные микросхемы синхронной динамической памяти (SDRAM), а в жестких дисках применяются именно они, стоят совсем недорого. В конце 90-х годов настольные винчестеры оснащались буфером 512 Кб, потом большинство моделей получило 2 Мб памяти, а сегодня наиболее распространены винчестеры с буфером 8 Мб. Впрочем, нет предела совершенству: компанияWD обновила свою массовую линейку винчестеров Caviar SE, дополнив ее моделями Caviar SE16. Основное их отличие, как вы уже догадались, заключается в увеличенном вдвое объеме буферной памяти.
Зачем нам 16 Мб?
Казалось бы, чем больше объем буферной памяти, тем выше будет производительность жесткого диска. Контроллер больше данных сможет поместить в буфер, а значит, реже будет обращаться к магнитным пластинам. Впрочем, не все так просто, как кажется на первый взгляд.
Алгоритмы кэширования обычно используют метод ассоциативного поиска для определения, имеются ли требуемые данные в буфере. Чтобы увеличить объем хранимых в кэше данных, следует либо увеличить объем одного блока (строки кэша), либо увеличить количество строк. А это чревато появлением дополнительных проблем с ассоциативным поиском и обменом данными с кэшем.
Впрочем, для жесткого диска скорость кэширования не так важна, поскольку оно в любом случае ничтожно по сравнению с задержками при доступе к магнитному носителю. Другое дело, действительно ли контроллеру нужен дополнительный объем памяти. Вполне возможно, что жесткий диск не настолько загружен работой, чтобы полностью использовать весь доступный объем буфера. Например, при простом копировании и загрузке программ кэшировать ничего не нужно, так как данные считываются лишь однократно. Зато при работе в серверной среде, когда запросы поступают хаотично и непрерывно, большой буфер – существенный плюс для винчестера. Собственно, поэтому серверные винчестеры всегда оснащались буфером не менее 8 Мб. Но в настольном компьютере важнее скорость чтения и доступа, чем эффективность буферизации.
(Правда, не будем забывать о технологии NCQ. C ее помощью винчестер может управлять очередью запросов, меняя порядок их обслуживания. Поскольку в этом случае характер доступа к носителю тоже меняется, дополнительная буферизация может помочь в улучшении производительности. Но увы – большинство пользователей до сих пор не знает, каким образом можно использовать NCQ, поскольку одной лишь поддержки со стороны винчестера тут недостаточно).
Получается, что большой объем буфера вряд ли окажет существенное влияние на общую скорость. Поставить микросхему более высокой емкости недостаточно для улучшения быстродействия. Разработчикам следует не только переработать микрокод, но и улучшить скорость чтения/записи носителя и пропускную способность интерфейса.
Caviar SE16. Особенности конструкции
Нам удалось сопоставить модель WD2500KS, входящую в линейку Caviar SE16, с моделью WD2000JS из «стандартной» линейки Caviar SE. Как оказалось, у них минимум отличий: маркировки гермоблока, разъемов, платы электроники совпадают. Даже версия микрокода одна и та же. Следовательно, разработчики из WD использовали прежнюю технологию, просто заменив одну микросхему памяти на другую.
Для тех, кто не в курсе особенностей жестких дисков WD, сообщим следующее. Этот производитель применяет только проверенные технологии и особенно заботится о защите дисков от повреждений. Конструкция гермоблока стандартная: массивный корпус и плоская верхняя крышка герметично соединены, на крышке сверху имеется вентиляционное отверстие. Но плата электроники по традиции перевернута микросхемами внутрь и прижата к корпусу, имеется термопроводящая прокладка.
Подобный прием позволяет защитить микросхемы от перегрева и внешних воздействий. Разъемов питания два – стандартный 4-контактный и новый плоский, в соответствии с требованиями Serial ATA. Для защиты интерфейсного разъема Serial ATA от случайного отключения WD предлагает использовать специальный кабель SecureConnect, имеющий защелки.
Серия Caviar SE16 выпускается только с поддержкой интерфейса Serial ATA. Причем контроллер жесткого диска поддерживает «вторую скорость» 3 Гбит/с (300 Мб/с). Другие технологии, в частности, NCQ, пока не реализованы – тут WD отстает от других производителей.
Диапазон емкостей винчестеров Caviar SE16 пока невелик. На сайте WD удалось найти данные по модели 250 Гб, плюс недавно появилась модель 400 Гб. Точную плотность записи и емкость одной пластины производитель не сообщает, но, по имеющимся данным, в нынешней серии винчестеров применяются пластины по 100 Гб. На сегодня это скромный результат, однако WD практикует модернизацию линейки без смены названий и спецификаций, поэтому вполне может оказаться, что в продаже уже имеются диски с более емкими пластинами.
Тестирование
В тестировании принимали участие жесткие диски трех производителей – WD, Seagate и Samsung. На момент написания статьи именно их продукция была представлена в широком ассортименте. Экземпляр рассматриваемого в обзоре жесткого диска серии Caviar SE16 имел следующие параметры:
- маркировка WD2500KS-00MJB0;
- объем 250 Гб;
- версия микрокода 02.01C03;
- режим «тихого позиционирования» (AAM) отключен (0FEh).
Мы будем сравнивать с ним следующие жесткие диски:
Caviar SE, из линейки с буфером 8 Мб, объем 200 Гб:
- маркировка: WD2000JS-00MHB0;
- объем буфера – 8 Мб;
- интерфейс – Serial ATA 3 Гбит/с, NCQ не поддерживается;
- версия микрокода – 02.01C03 (та же самая);
- режим «тихого» позиционирования (AAM) отключен (0FEh).
Samsung SpinPoint P120, 200 Гб:
- маркировка SP2004C;
- объем буфера – 8 Мб;
- интерфейс – Serial ATA 3 Гбит/с, NCQ поддерживается;
- версия микрокода – VM100-33;
- режим «тихого» позиционирования включен (код 00h).
Seagate Barracuda 7200.8, 200 Гб:
- маркировка ST3200826AS;
- объем буфера – 8 Мб;
- интерфейс – Serial ATA 1.5 Гбит/с, NCQ поддерживается;
- версия микрокода – 3.03;
- режим «тихого» позиционирования заблокирован (управление недоступно).
Жесткие диски Seagate и Samsung имеют более высокую плотность записи, чем WD Caviar. К тому же Seagate имеет более высокую заявленную скорость позиционирования (8 мс против 8.9 мс у Samsung и WD), а Samsung работает тише. То есть WD формально не имеют преимуществ по сравнению с дисками других производителей. Но на практике может быть все наоборот.
Жесткие диски подключались ко второму порту контроллера Serial ATA, встроенного в южный хаб ICH5 чипсета Intel 865G. К сожалению, чипсеты серии 865 не поддерживают скорость 3 Гбит/с и технологию NCQ, поэтому возможности современных винчестеров полностью раскрыть не позволяет. Другие параметры тестовой конфигурации:
- хост-винчестер, с которого выполнялась загрузка ОС и запуск тестов – Seagate Barracuda 7200.7 PATA 80 Гб;
- процессор Intel Pentium 4 2.80 (шина 800 МГц);
- материнская плата Intel D865GBF (Intel 865G);
- память 2 x 256 DDR400, включен двухканальный режим работы;
- видеокарта GeForce FX 5600;
- винчестеры устанавливались в 2.5-дюймовую корзину корпуса Inwin J551, специальное охлаждение не применялось.
Низкоуровневые тесты
Использование программ, работающих с диском напрямую, позволяет измерить теоретические параметры винчестера – скорость случайного доступа, усредненную (sustained) скорость чтения и записи, эффективность отложенной записи. При этом влияние алгоритмов кэширования минимально, так как доступ осуществляется непрерывно и по простой схеме.
Низкоуровневые параметры рассчитывались с помощью программ:
- IOMeter 2004.07.30;
- HDTach 2.68;
- HDTach 3.0.1.0;
- Winbench 2.0 (диск форматировался под один большой раздел NTFS).
Скорость доступа при чтении, мс
Скорость доступа оказалась выше у Caviar, поскольку винчестеры WD не используют алгоритмы замедления позиционирования (AAM). Seagate, несмотря на отличные заявленные цифры, оказался последним. Как ни странно, Caviar SE16 немного (0.3 мс) уступил своему собрату, что можно объяснить либо естественной разбежкой технологических параметров (все же механика имеет некоторые отклонения в ту или иную сторону), либо влиянием третьей пластины (чем больше число головок, тем больше будет задержка на их переключение). Конечно, отличия на самом деле очень небольшие, и говорить о серьезном отставании Caviar SE16 мы не будем.
Скорость доступа при записи, мс
По скорости доступа при записи винчестеры WD сравнялись, обеспечив двукратное ускорение по сравнению со скоростью доступа при чтении. Объясняется это влиянием алгоритма отложенной записи.
Скорость последовательного чтения, Мб/с
Скорость последовательной записи, Мб/с
По скорости последовательного чтения/записи Caviar SE16, наоборот, слегка опередил Caviar SE. Но их обогнал винчестер Seagate (+10%), что закономерно ввиду применения более высокой плотности записи, а Samsung, наоборот, настолько же отстал.
Более точный анализ скорости чтения/записи позволяет провести IOMeter. Если другие программы работают с блоками 64 Кб, IOMeter может варьировать размер блока.
График последовательного чтения
По чтению лидирует Seagate: он существенно лучше (+20%) справляется с мелкими и крупными блоками. Samsung, как оказалось, с мелкими блоками работает совсем плохо.
А WD отлично показали себя в тестах записи, обойдя Seagate при работе с блоками менее 64 Кб.
Программа Winbench’99, несмотря на свой почтенный возраст, довольно точно строит график последовательно чтения. Оба диска WD имеют одинаковую форму графика, с отсутствием пиков и провалов, что свидетельствует о высокой стабильности чтения. График Caviar SE16 более вытянут, что связано с большей его емкостью.
Увеличение масштаба графика позволяет рассмотреть кратковременные, но сильные провалы скорости у Seagate и Samsung (работа алгоритмов исправления ошибок ECC, задержки на переключения головок и смену дорожек) и отсутствие таковых у WD. И пусть плотность записи у WD хуже, проверенная технология производства имеет свои плюсы – выше стабильность работы.
Имитация работы приложений
Шаблон Workstation теста IOMeter позволяет генерировать нагрузку на дисковую подсистему, близкую к реальной (сбор статистики проводился по тесту Winstone 2002 Content Creation). Так вот, этот тест более чувствителен к скорости доступа, чем к скорости чтения/записи, плюс он учитывает работу алгоритмов кэширования, так как запросы поступают с нарастанием глубины очереди.
Графики быстродействия по шаблону Workstation
Согласно полученным данным, оба диска WD слегка опередили Samsung и буквально разгромили Seagate. Caviar SE опять чуть лучше Caviar SE16, так как у них есть небольшая разница по скорости доступа.
На тест PCMark05 мы возлагали большую надежду, так как именно он должен показать преимущество большого кэш-буфера. Этот тест использует шаблоны, записанные с помощью тестового пакета Intel IPEAK SPT при выполнении определенных задач. Следовательно, PCMark05 может более-менее правдоподобно смоделировать работу винчестера в реальных условиях.
Так вот, если по скорости загрузки Windows XP, копирования файлов и сканирования на вирусы винчестеры WD почти не отличаются, то по скорости загрузки приложений и доступу к данным во время работы приложений Caviar SE16 на 10-15% быстрее Caviar SE, не говоря уже о Samsung и Seagate.
Преимущество винчестера с большим буфером заметно и в тесте Winstone, особенно если используется файловая система FAT32.
Выводы
Результаты тестирования доказывают: положительный эффект от увеличения буфера есть. Он небольшой, в пределах 10-15%, и проявляется только при работе винчестера в условиях, близких к реальным. В низкоуровневых тестах разницы практически нет, что согласуется с теорией. Та же теория говорит о том, что с ростом пропускной способности интерфейса и плотности записи, а также с внедрением технологий оптимизации доступа к диску объем буфера придется увеличивать. Поэтому разработчики из WD немного поспешили; впрочем, лучше заняться отработкой технологии сейчас, чем впоследствии догонять конкурентов.