native command queuing что это

xTechx.ru

Новости Высоких Технологий

NCQ — технология. Плюсы при использовании, как работает и где наиболее эффективная технология NCQ.

NCQ (Аппаратная Очерёдность Команд, Native Command Queuing ) – технология, разработанная для повышения производительности жёстких дисков с интерфейсом SATA II и выше.

Данные на жестком диске, располагаются по всей поверхности магнитной пластины и головке нужно время, чтобы найти расположение нужной дорожки и считать её.

Без NCQ :

Команды поступают на контроллёр диска, он даёт указание приводу головки на определённый участок, головка выполняет данную операцию и за ней следует следующая. То есть команды никак не сортируются и имеют приоритет только по времени поступления в контроллёр.

С поддержкой NCQ:

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

native command queuing что это. Смотреть фото native command queuing что это. Смотреть картинку native command queuing что это. Картинка про native command queuing что это. Фото native command queuing что это

Сама технология призвана снизить время, затрачиваемое на перепозиционирование головки с дорожки на дорожку, оптимизируя перемещение до минимально возможного.

Что требуется для поддержки NCQ :

Жёсткий диск или твёрдотельный накопитель с поддержкой NCQ (все, что на интерфейсе Sata II (300) и выше).

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

В каких условиях NCQ наиболее эффективна?

Для обычного домашнего компьютера, ждать увеличения производительности более 5% ждать не приходится, за тем исключением, если у вас ёмкий жёсткий диск с наполнением более 75%. Также, больший прирост производительности появляется, если одновременно работают несколько программ с активным обращением к диску или диск сильно фрагментирован. В данных случаях, прирост производительности может быть до 15% (при сильной фрагментации вплоть до 20%).

Основное же применение технологии NCQ является — серверное «поприще». Когда большое количество пользователей обращаются к разной информации, эта технология обеспечивает хороший прирост ввода/вывода, за счёт умного распределения усилий головки по всей ширине пластины. Прирост производительности в серверных условиях может достигать 18%.

Если взглянуть обобщённо — NCQ улучшает время доступа, скорость произвольного чтения/записи и ввода/вывода.

От использования NCQ они тоже выигрывают в скорости ввода/вывода и операций в секунду. Принцип работы немного другой и контроллёр опирается на скорость самого SSD и вычисляет какие операции лучше выполнить в первую очередь для поддержания скорости обмена данными на максимально возможном уровне. Также учитываются наиболее важные системные команды, которые должны быть выполнены в первую очередь, и распределяет чтение/запись на своё усмотрение, что позволяет получить от SSD ещё большую скорость отклика и количество операций в секунду ( IOPS ).

Первоначальная реализация, которая была предназначена для PATA называлась TCQ (Tagged Command Queuing). Основным требованием, было использование протоколов ISA шины для операционной системы как основной, что увеличивало накладные расходы и ухудшало совместимость, а увеличение производительности было незначительным. Поэтому данная разработка не была поддержана производителями и в конце концов не получила распространение.

Источник

Жесткие диски WD2500KS и WD2500JS. Часть 2: NCQ disabled?

В первой части нашего обзора дисков WD2500KS и WD2500JS мы в деталях познакомились с достаточно удачными настольными накопителями среднего ценового диапазона серий WD Caviar SE16 и Caviar SE. Тогда мы обратили внимание на некоторую неясность с поддержкой Native Command Queuing (NCQ) в данных моделях дисков WD. Дело в том, что в этих дисках WD перешла на применение нового контроллера Marvell 88i6545 с поддержкой интерфейса Serial ATA со скоростью 3,0 Гбит/с и NCQ. Однако по некоторой информации от сотрудников WD компания решила поставлять потребителям свои настольные диски серий KS, KD и JS с отключенной NCQ, поскольку с включенной NCQ эти изделия демонстрируют худшую (по мнению WD) производительность при выполнении типичных для настольных ПК задач (о чем даже есть соответствующие официальные презентации WD, см., например, здесь (PDF, 1 Мбайт)).

Вместе с тем, до сих пор существует некоторая неразбериха, есть в этих дисках NCQ или нет. Например, в спецификациях дисков серий KS и JS на сайте WD нет упоминания о поддержке Native Command Queuing (NCQ). Однако в специальном разделе FAQ на сайте WD еще совсем недавно было отдельным пунктом подчеркнуто, что диски WDxxxxJS все-таки поддерживают NCQ. Более того, служба техподдержки WD через международный сайт на данный вопрос сначала отвечала, что NCQ есть и в KS, и в JS, но затем после моих «контраргументов» согласилась, что у KS NCQ все-таки нет, хотя продолжала упорствовать, что в JS NCQ все же есть, приводя при этом ссылку на раздел FAQ выше. Дело дошло до того, что «специалист» по техподдержке WD некто Altintas M. (westerndigital@custhelp.com) просто написал мне, что

Вот так вот! И среди заокеанских официальных ресурсов невежливость не редкость… Но самое интересное началось позднее: в том самом разделе FAQ WD, посвященном NCQ, спустя день после моего ответа на приведенную выше цитату УПОМИНАНИЕ О ПОДДЕРЖКЕ NCQ моделями WDxxxxJS просто-напросто ИСЧЕЗЛО. 🙂 Значит, все-таки WD НЕ поддерживает NCQ в JS? И я изначально в этом споре был прав? Вроде бы так, поскольку через день тот же самый «специалист по техподдержке» из WD написал мне, что, дескать,

и что я снова почему-то неправ (логики этого «пассажа» я вообще не понял :); учитесь умению вести спор у таких вот спецов по техподдержке, оголтелые бойцы нашего форума ;)). Однако из доверенных источников (благо, в WD много и хороших людей) недавно мне поступила информация, что WD в последнее время склоняется к тому, чтобы некоторые партии JS все же поставлялись со включенной NCQ…

В общем, пока что неразбериха с этим вопросом не утряслась, и несколько огорчает лишь то, что WD не позволяет самому пользователю решать, включать ему NCQ в дисках WDxxxxKS/JS или нет. Последнее было бы вполне логично и, если угодно, гуманно. 🙂

Беглая проверка «пустующего» джампера 7-8 на задней панели жестких дисков WDxxxxJS показала, что он не позволяет оперировать поддержкой NCQ в этих дисках. Поэтому нам пока остается довольствоваться тем, что есть. И в этой части нашего обзора мы на основе реальных испытаний данных жестких дисков попробуем выяснить текущий статус поддержки NCQ в дисках WD и сравнить их с некоторыми дисками конкурентов, таки поддерживающими NCQ.

Испытания проводились на стенде и по методике, описанным в первой части. Для проверки работы NCQ (и SATA II) с дисками использовался PCI-контроллер на чипе Silicon Image 3124-2, а для случая «без NCQ» использовался SATA-контроллер южного моста ICH5 чипсета Intel 875P.

Проверка статуса NCQ в тестируемых дисках утилитой HD Tune 2.52 показала, что флаг NCQ отключен во всех изученных моделях WD2500JS и WD2500KS.native command queuing что это. Смотреть фото native command queuing что это. Смотреть картинку native command queuing что это. Картинка про native command queuing что это. Фото native command queuing что это
native command queuing что это. Смотреть фото native command queuing что это. Смотреть картинку native command queuing что это. Картинка про native command queuing что это. Фото native command queuing что это

Однако та же утилита показывала, что для исследованных мной одновременно с ними дисков WD4000KD флаг NCQ присутствовал (!), хотя по неоднократно полученной из разных «мест» WD (в том числе, из официальной страницы FAQ, см. линк выше) информации накопитель WD4000KD не должен был бы обладать поддержкой NCQ.native command queuing что это. Смотреть фото native command queuing что это. Смотреть картинку native command queuing что это. Картинка про native command queuing что это. Фото native command queuing что это

Масла в огонь подлила строчка на этом же скриншоте, что данный жесткий диск поддерживает интерфейс SATA II, хотя и по спецификациям WD, и по информации от контроллера SiI3124-2native command queuing что это. Смотреть фото native command queuing что это. Смотреть картинку native command queuing что это. Картинка про native command queuing что это. Фото native command queuing что это

он не должен был бы этого делать, поскольку SATA II подразумевает, кроме прочего, поддержку скорости 3 Гбит/с. Таким образом, даже в правдивости такого, казалось бы, надежного инструмента, как чтение внутренних параметров диска, в отношении текущих продуктов WD возникли некоторые сомнения. (К слову, с дисками, например, Hitachi и Samsung таких подозрений не возникало.) То есть несмотря на отсутствие флага поддержки NCQ в данных накопителях по утилитам, неразбериха с ответами и утверждениями WD по этому поводу все же вынудила меня попытаться проверить наличие/отсутствие NCQ в них на практике по тестам. А заодно в наглядном виде разобраться, как ведут себя диски с контроллером SiI3124 с и без поддержки NCQ, что само по себе тоже небезынтересно. И что дает применение NCQ в разных вариантах реализации (от разных производителей).

Результаты тестов физических параметров

Скорость линейного чтения мы уже рассмотрели в первой части, поэтому перейдем сразу к скорости интерфейса.

Со всеми дисками в этой части обзора, кроме WD2500JD, контроллер SiI3124 работает по интерфейсу Serial ATA со скоростью передачи 3 Гбит/с, однако из-за ограничений пропускной способности шины PCI32/33 МГц эта скорость на диаграмме не прослеживается. Огорчаться по этому поводу не стоит, поскольку контрольные испытания с этим же контроллером на высокоскоростной шине PCI-X показали, что сколько-нибудь заметных преимуществ в быстродействии этих дисков скорость интерфейса SATA 3 Гбит/с не дает. В данном случае мы просто убедились, что со скоростью SATA у всех участников все в порядке. Разве что Samsung демонстрирует чуть худшие показатели, чем Hitachi и WD.

Все в порядке и со средним временем доступа к дискам при переходе от одного контроллера к другому. Значения совпадают практически с точностью измерений.

Об эффективности работы алгоритмов отложенной записи firmware диска и кэширования записываемых данных в буфере диска можно попытаться судить по тому, как падает среднее измеренное операционной системой время доступа при записи относительно чтения при включенном write-back кэшировании накопителя. Для этого мы используем результаты теста C’T H2benchW.

Особых различий по среднему времени доступа при записи (с учетом кэширования) между хост-контроллерами здесь тоже не видно, хотя с SiI3124 все же значения оказываются, как правило, немного меньше, чем с ICH5. Влияния NCQ здесь не прослеживается ввиду единичной глубины очереди запросов теста. Теперь перейдем к тестам производительности в приложениях.

Быстродействие в приложениях

Сначала посмотрим, насколько диски оптимизированы для многопотоковой работы в программе NBench 2.4, где файлы размером 100 Мбайт записываются на диск и читаются с него несколькими одновременными потоками — как близко, так и далеко отстоящими друг от друга на диске (в данном случае используется FAT32). На диаграмме ниже показаны только усредненные по нескольким паттернам результаты для чтения и записи, а подробности (без комментариев) можно найти на отдельной странице.

При многопотоковой записи можно выделить несколько важных моментов. Во-первых, для дисков с поддержкой NCQ есть однозначно положительное влияние реорганизации очереди команд при записи (напомним на всякий случай, что NCQ работает не только на операциях чтения, но и на операциях записи, а также на чередующихся командах). Так, для диска Hitachi средний показатель этого теста при записи улучшился на 7%, а для диска Samsung — на все 12%. Вместе с тем, для диска WD2500JD (у которого нет и не может быть поддержки NCQ) результаты с обоими контроллерами практически идентичны (на полпроцента выше для SiI3124 за счет особенностей драйверов). Поэтому то, что для дисков WD2500KS и WD2500JS мы также наблюдаем почти равные результаты при записи с разными контроллерами (на те же 0,5-1% выше с SiI3124), является подтверждением факта, что NCQ в данных дисках не задействовано (по крайней мере, при записи).

При многопотоковом чтении, однако, ситуация не столь однозначная. Работа NCQ с контроллером SiI3124 дает положительный (+20%!) эффект для диска Hitachi и явно отрицательный эффект (-50%. ) для диска Samsung. Тогда как для диска WD2500JD (без какого-либо влияния NCQ) только драйверы контроллера SiI3124 обеспечивают падение производительности в данном тесте на 13%! Однако для других винчестеров WD, WD2500JS и WD2500KS, мы, напротив, наблюдаем соответственно 7,4% и 10-12% прироста средней производительности при многопотоковом чтении благодаря использованию контроллера SiI3124. То есть этот прирост вполне можно было бы приписать и работе NCQ в дисках WD2500xS, и/или особенностям взаимодействия драйверов контроллера SiI3124 с firmware новых винчестеров WD (хотя со старыми дисками WD эти же драйверы дают эффект противоположный).

В популярных тестах Disk WinMark 99 из пакета WinBench 99 (напомню, что мы проводим эти тесты для «начала» и для «середины» (по объему) физического носителя и результаты усредняем) ситуация тоже далека от однозначной.

В Business-тесте прирост показателей от использования контроллера SiI3124 заметно выше для дисков Hitachi и Samsung, где поддержка NCQ присутствует. Вместе с тем, прирост от SiI3124 выше и для диска WD2500JS по сравнению с WD2500JD, поэтому говорить об отсутствии NCQ в WD2500xS на основании этих данных было бы неправильно, как и утверждать о наличии поддержки NCQ.

В тесте High-End картина еще более запутана: прирост средних показателей при переходе от ICH5 к SiI3124 составляет 15-20% для Samsung SP2504C, 16-18% для Hitachi T7K250, лишь 12% для без-NCQ-шного WD2500JD, и почти треть (26-32%) для WD2500JS и примерно столько же (23-28%) для WD2500KS! Впрочем, учитывая то, что драйверы контроллера SiI3124 уже не раз были заподозрены в «пристрастии» к тестам WinBench 99 Disk WinMark, утверждать что-либо определенное по отношению к NCQ в данном случае было бы опрометчивым.

Теперь — комплексные «трековые» тесты оценки производительности дисков в пакетах PCMakr04 и C’T H2BenchW.

В дисковом тесте популярного Futuremark PCMark04 ситуация достаточно однозначна: при использовании NCQ (в дисках Samsung и Hitachi) есть прирост производительности от 2,3 до 5,4% соответственно, тогда как для всех дисков WD2500xx, напротив, с контроллером SiI3124 результаты ниже, чем с ICH5 — на 2,5% у JD, на 1,1% у JS и на 0,7-1,2% у KS. Здесь с большой долей уверенности можно утверждать, что NCQ у данных дисков WD не работает.

Между тем, в похожем тесте C’T H2benchW, как правило, более чувствительном к различиям между моделями накопителей, картина иная. Здесь уже все диски WD ведут себя совершенно одинаково с обоими хост-контроллерами (в пределах погрешности измерений), вроде бы доказывая тем самым отсутствие поддержки NCQ. Однако же с задействованной NCQ в дисках Samsung и Hitachi наблюдается картина противоположная: производительность падает на 2-3%. Впрочем, последнее как раз можно списать на негативные результаты работы NCQ, неоднократно отмечаемые в прессе и даже самими производителями винчестеров (см. выше).

По скорости работы дисков с временным файлом программы Adobe Photoshop четких выводов о поддержке NCQ сделать нельзя поскольку результаты на разных контроллерах почти совпадают для всех дисков.

Тесты в Intel Iometer

Для имитации работы дисков в различных приложениях мы также используем специальные паттерны в программе Intel IOmeter: DataBase, File Server, Web Server и Workstation, а также паттерны чтения, записи и копирования мелких и крупных файлов по случайным адресам в пределах всего диска с четырьмя очередями запросов (1, 4, 16 и 64). Подробные результаты по каждому из паттернов представлены без комментариев на отдельной странице и в наших предыдущих обзорах дисков Hitachi, Samsung и WD, а здесь мы покажем лишь усредненные результаты. Усреднение проводилось геометрически по всем очередям запросов и паттернам без весовых коэффициентов.

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

Могу лишь отметить, что если для WD2500KS с контроллером SiI3124 в паттернах DataBase, File Server, Web Server и Workstation зависимости быстродействия от глубины очереди (от 1 до 16) почти нет (хотя она и появляется при глубине очереди 64), и в среднем для всех дисков WD результаты с контроллером SiI3124 существенно ниже, чем с ICH5, то для дисков Hitachi T7K250 и Samsung SP2504C с контроллером SiI3124 такая зависимость от глубины очереди все же есть, и результаты с SiI3124 для них явно выше, чем с ICH5. Исходя из этого можно заключить, что в данных дисках WD Caviar SE16 и SE поддержка NCQ отсутствует (или реализована крайне неэффективно).

Теперь — наши паттерны имитации работы с файлами (чтение/запись/копирование), более близкие по назначению пользователям обычных настольных ПК (подробные результаты — на отдельной странице). Снова, из-за кэширования контроллеров и дисков однозначных выводов о наличии NCQ по графикам зависимости от глубины очереди запросов здесь сделать не удается, хотя с контроллером SiI3124 ряд дисков (в том числе, Samsung) ведет себя иногда даже хуже, чем с мостом ICH5. Например, видно, что в паттернах копирования файлов результаты для дисков WD с SiI3124 оказываются ниже, чем с ICH5.

По результатам геометрического усреднения этих шести паттернов (чтение, запись и копирование файлов по случайным адресам) диски WD в среднем теряют от 3 до 5% производительности при переходе от ICH5 к SiI3124. Тогда как накопители Hitachi и Samsung, напротив, немного прибавляют (2-3%).

Поразительно ровная для дисков WD картина наблюдается в паттернах дефрагментации.

Разница для них между контроллерами SiI3124 и ICH5 практически отсутствует, а минимальные различия обусловлены скорее различиями драйверов самих контроллеров. Впрочем, это различие драйверов достаточно ярко проявляется с дисками Hitachi и Samsung, где в зависимости от паттерна (имитирующего ту или иную файловую систему) явно быстрее то один, то другой хост-контроллер. Хотя заподозрить в данном случае влияние NCQ сложно ввиду единичной глубины очереди запросов, посылаемых тестом.

В паттернах потокового одновременного чтения-записи крупными или мелкими блоками (что характеризует, например, работу ПК при редактировании цифрового видео или в режиме цифрового магнитофона с таймшифтингом) ситуация для дисков WD повторяется. Практически независимо от глубины очереди запросов результаты у WD2500xx одинаковы на обоих контроллерах (за редкими исключениями), подтверждая отсутствие поддержки NCQ в этих дисках. Тогда как для NCQ-дисков Hitachi и Samsung мы можем видеть однозначный и порой весьма значительный прирост скорости при глубине очереди =4, если вместо ICH5 используется SiI3124.

Заключение

Итак, проведенные нами испытания свидетельствуют, что поддержки Native Command Queuing в протестированных накопителях WD2500KS и WD2500JS, по всей видимости, нет, как о том и говорили информационные утилиты. К этому же, в конечном итоге, склоняются и разрозненные, а порой и противоречивые данные самого производителя дисков. Хотя в контроллерах этих дисков поддержка NCQ изначально и была предусмотрена. Жаль, что WD пока не хочет разрешить конечному пользователю самому решать, включать или отключать ему работу NCQ в дисках WD. Поэтому если вам такая поддержка все же необходима (в чем, кстати, у меня нет однозначной уверенности ;)), придется приобретать диски «профессиональных» серий WD Caviar RE2 или WD Raptor X.

Впрочем, есть информация, что WD скоро будет поставлять и Caviar SE со включенной NCQ, что мы постараемся своевременно отследить и проверить. В частности, удалось выяснить, что поддержкой NCQ будут обладать диски с новым firmware: WDxxxxJS-xxNCBx, WDxxxxJS-xxNGBx, WDxxxxKS-xxNDBx, WDxxxxKS-xxNHBx… То есть мы можем предположить (и с большой долей вероятности это является правдой), что третий символ в номере firmware дисков WD как раз говорит о наличии или отсутствии поддержки NCQ в этих дисках: если это «M», то NCQ отключена, если это «N», то NCQ работает. Это, кстати, согласуется и с показанным в начале статьи скриншотом для диска WD4000KD, таки поддерживающего NCQ, несмотря на все утверждения производителя об обратном. 🙂

Источник

Технология сортировки команд NCQ

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

Экстенсивный путь развития HDD, предполагающий увеличение плотности записи данных и повышение частоты вращения шпинделя, ведет к значительному удорожанию продукции или же не дает ожидаемого прироста быстродействия. Поэтому разработчикам приходится изыскивать новые пути решения проблемы, одним из которых является внедрение технологии сортировки очереди команд Native Command Queuing (NCQ), в последнее время ставшей довольно популярной.

Как работает NCQ

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

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

native command queuing что это. Смотреть фото native command queuing что это. Смотреть картинку native command queuing что это. Картинка про native command queuing что это. Фото native command queuing что это
Без NCQ(слева); С NCQ (справа)

Для наглядности приведем рисунок, иллюстрирующий работу винчестера с технологией NCQ и без нее. Здесь жесткому диску нужно получить данные, находящиеся в секторах 1, 2, 3 и 4. Использование NCQ способствует существенному упрощению траектории движения головки и уменьшению количества оборотов шпинделя, необходимых для завершения всей операции, по сравнению с последовательным выполнением этой же команды. Применение данной технологии позволяет также несколько снизить механическую нагрузку на блок головок чтения/записи, тем самым теоретически уменьшая его износ и увеличивая срок службы.

Неудивительно, что разработчики довольно давно занимаются проблемой оптимизации очереди команд. Более десяти лет аналогичная технология, Tagged Command Queuing (TCQ), успешно использовалась в SCSI-дисках, которыми оснащались серверные системы. В 1997 г. были предприняты попытки интегрировать подобную технологию в HDD с Parallel ATA, устанавливаемые в настольные ПК, однако из-за особенностей протокола и слабой реализации многозадачности массовых ОС того времени, эффективность такого решения не оправдывала затрат. Да и в случае ее неполной поддержки оборудованием могли возникать дополнительные «паузы» в работе контроллера. Ситуация существенно улучшилась после создания интерфейса Serial ATA (SATA). Внедрение NCQ не потребовало значительного изменения базового протокола SATA, к тому же появилась возможность идентификации поддержки устройством очереди команд (для SATA она составляет 32 запроса). Это позволило контроллеру без каких-либо проблем одновременно взаимодействовать с дисками, имеющими NCQ и нет.

Необходимое и достаточное

Технология NCQ была объявлена дополнительной функцией в SATA 1.0a, а в SATA II предполагалась как обязательная составляющая. Однако, к сожалению, в новой спецификации она осталась в качестве рекомендуемого пункта. Для ее работы необходимо выполнение следующих условий: поддержка NCQ жестким диском и контроллером SATA (интегрированным или внешним), а также наличие драйвера для ОС. Если с программной частью у пользователей, имеющих доступ в Интернет, проблем обычно не возникает, то с аппаратными возможностями все не так просто.

Поддержкой NCQ обладают контроллеры, интегрированные в южные мосты чипсетов Intel 9xx (ICH6R/M и ICH7R/M). В то же время, согласно информации с сайта компании Intel, базовые версии ICH6 и ICH7 и более ранние не имеют этой функции. Также обеспечивается работа данной технологии в серии чипсетов NVIDIA nForce4, а платы с наборами логики от VIA получают поддержку NCQ в случае применения южного моста VT8251. SIS включила NCQ в свой южный мост SIS966, а чипсеты с «югами» от ULi обзаведутся NCQ после установки M1575. Потому, если вы хотите иметь в своей системе технологию сортировки команд, при покупке новой материнской платы следует учитывать и этот момент. В случае использования внешних контроллеров SATA нужно внимательно изучить спецификацию.

Подавляющее большинство жестких дисков из новых линеек работает с NCQ. Однако перед приобретением HDD не лишним будет посетить сайты производителей, где обычно указываются такие подробности. Убедиться в том, что диск поддерживает технологию NCQ, можно и с помощью утилиты HD Tune (см. на диске).

Как винчестеры «становятся в очередь»

Для включения NCQ в BIOS платы необходимо выставить режим контроллера AHCI (Advanced Host Controller Interface) и во время инсталляции операционной системы установить (по нажатии F6) соответствующие драйверы (в нашем случае это Intel Matrix Storage Manager 5.5.0.1035), предварительно записав их на дискету.

После инсталляции ОС мы решили убедиться в справедливости суждения о том, что привычные операции последовательного чтения/записи/копирования из-за малой глубины очереди команд не получают заметного прироста производительности. Подтверждение ищите на соответствующей диаграмме.

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

Мы попытались разобраться, сможет ли исправить ситуацию технология NCQ. Для этого на жестком диске Maxtor MaXLine III 7V250F0 были созданы три раздела по 20 GB каждый (FAT32), которые физически располагались в разных областях HDD. На один из них записывались тестовые наборы, включающие крупные файлы (объем 4,9 GB, 9 фильмов AVI), мелкие (330 MB, всего 65 293 штуки) и среднего размера (3 GB, 747 MP3-композиций). После чего данные поочередно копировались во второй, свободный раздел, при этом одновременно ставилась следующая задача – копирование в третий раздел тестируемого диска образа DVD с другого винчестера (системного). Как видим, в таком случае применение NCQ действительно имеет практическую ценность для пользователя настольного компьютера. Ее активация приводит к уменьшению срока выполнения обоих заданий, что связано с хорошей работой алгоритма упорядочения команд и эффективным решением транспортной задачи для получения оптимального маршрута перемещения головок.

Кроме тестов с копированием, был проведен замер времени дефрагментирования раздела. В случае включения NCQ данный показатель уменьшается просто феноменально. Это как раз та ситуация, когда польза от NCQ максимальна.

Включать или не включать?

Да, технология действительно работает, однако стоит ли утруждаться, доставая с антресоли флоппик, чтобы считать с него при установке операционной системы необходимые драйверы и включить таким образом NCQ? Это скорее зависит от специфики использования ПК. Результаты тестов показали, что при повседневной работе сортировка очереди запросов не дает никакого преимущества. Более того, в ряде случаев производительность жесткого диска может даже незначительно снижаться. Линейные операции копирования не требуют сортировки, в то время как NCQ работает независимо от этого, затрудняя функционирование контроллера.

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

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *