Интернет магазин китайских планшетных компьютеров



Компьютеры - TCQ - Сравнение SCSI TCQ, ATA TCQ и SATA NCQ

14 июня 2011


Оглавление:
1. TCQ
2. Обзор
3. Сравнение SCSI TCQ, ATA TCQ и SATA NCQ



SCSI TCQ

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

  • в начало очереди
  • упорядоченно
  • просто

В режиме в начало очереди, который применяется исключительно в SCSI TCQ, задача помещается в начало очереди, опережая все прочие задачи, включая ранее запланированные задачи предыдущего начала очереди. . Этот режим не слишком используется, так как может вызвать нехватку данных при каких-либо отклонениях.

В упорядоченном режиме задача должна выполняться сразу после всех предыдущих задач и перед всеми более новыми, исключая только более новые задачи начала очереди.

Простой режим позволяет выполнять задачив любом порядке, не нарушающем правил и ограничений задач, связанных с двумя предыдущими режимами. После выполнения команды в задаче устройством отсылается адаптеру главной шины уведомление о завершении команды. Так или иначе, SCSI TCQ приводит к использованию больших накладных расходов при использовании прерываний в зависимости от шины, связывающей с корневым адаптером шины SCSI. Для PCI, PCI-X, PCI Express и других шин, допускающих это, использование DMA позволяет этого избежать за счет снижения нагрузки. Устаревшая шина ISA требует наличия SCSI-адаптера для генерации прерываний для доступа к процессору, чтобы сторонние DMA-контроллеры могли выполнить передачу, а затем требуется еще одно прерывание для уведомления процессора о том, что задача в очереди выполнена , вызывая тем самым довольно большую нагрузку на центральный процессор.

Длина тега в SCSI TCQ

Протокол SCSI-3 отводит 64 бита на использование в качестве поля для метки, позволяя умещать до 2 задач в одном наборе для передачи, указывая, что некоторые из команд должны быть завершены перед передачей последующих команд . Однако, различные протоколы, реализованные в рамках SCSI-прокола, могут не позволить использование всех 64 битов. Например, устаревший параллельный вариант SCSI допускает использование лишь 8 бит для меток, iSCSI позволяет использовать до 32 бит, а Fibre Channel предусматривает использование до 16 бит для тегов с зарезервированым тегом 0xFFFF. Подобная гибкость позволяет проектировщику протокола находить компромисс между способностью обрабатывать очереди и "ценой". Сети, способные достигать крупных размеров, как например, iSCSI-сети, преимущества от большего числа битов для меток хорошо сочетается с бОльшим числом дисков в сети и бОльшими задержками, вызванных подобными размерами сетей, в то время как более мелкие сети, как например, параллельные цепочки SCSI, не обладают достаточным количеством дисков или задержками чтобы нуждаться в большом количестве битов для меток и позволяют экономить за счёт использования систем с поддержкой меньшего числа битов.

ATA TCQ

ATA TCQ был разработан в попытке привнести преимущества SCSI в жесткие диски стандарта ATA. Технология существует как для обычного так и для Serial ATA.

Эта затея не увенчалась успехом, так как ATA-шина представляла собой вариант ISA-шины с уменьшенным количеством штырьков. Требование программной совместимости сделали ATA-адаптеры весьма схожими с устройствами для ISA-шины без поддержки Bus mastering. Когда привод готов к передаче данных, он должен послать сигнал прерывания в ЦП, подождать пока процессор "спросит" диск какую именно команду он готов выполнить, ответить, что он готов ее выполнить, подождать пока процессор запрограммирует адаптер шины для контроля через опосредованный DMA исходя из результатов предыдущей команды, подождать пока контроллер опосредованного DMA выполнит команду, а затем должен вновь отослать сигнал прерывания процессору, дабы уведомить его когда DMA-контроллер завершит выполнение задачи, чтобы процессор мог уведомить поток о том, что запршенная задача была выполнена.. Так как ответы на сигналы прерывания приводят к слишком высоким накладным расходам, коэффициент использования процессора при включенном ATA TCQ быстро растет . Кроме того, так как время обработки сигнала прерывания заранее предсказать невозможно, то бывают ситуации, когда диск готов передавать данные, но передать их не может из-за того, что ему необходимо дождаться ответа процессора на сигнал прерывания, так как именно он отвечает за настройку опосредованного DMA.

Поэтому, данный стандарт крайне редко реализуется из-за высокой нагрузки на ЦП, причем без ощутимого улучшения производительности, ради чего все это имело бы смысл. Данный стандарт предусматривает до 32 необработанных команд на одно устройство .

SATA NCQ

SATA NCQ - новый стандарт, не требующий сигналов прерываний ЦП. Как и ATA TCQ он предусматривает до 32 необработанных команд на устройство, но он был спроектирован с расчетом на возможности адаптеров SATA без эмуляции работы параллельного ATA при поддержке прямого DMA. Вместо сигналов прерывания используется следующая схема: перед тем как задание принуждает ЦП программировать DMA-адаптер, жесткий диск сообщает адаптеру какую именно команду он хочет выполнить, в результате чего адаптер программирует свой встроенный DMA-контроллер в соответствие с параметрами, указанными в команде, выбранной жестким дисков ранее, затем DMA-контроллер передает данные, необходимые для выполнения команды. Для последующего снижения накладных расходов прерываний диск может задерживать сигналы прерываний с сигналами завершения задачи пока их не наберется некоторое количество для их совместной отсылки, тем самым позволяя ЦП уведмлять множество потоков за раз о том, что их задачи выполнены. Если завершается еще одна задача после подобной отсылки сигнала прерывания, то адаптер может скорректировать сообщения о завершении в случае если они не были отправлены процессору. Это позволяет микропрограмме жесткого диска искать консенсус между производительностью диска и нагрузкой на ЦП за счет определения момента, когда нужно воздержаться, а когда отсылать сообщения о завершении.



Просмотров: 2698


<<< Оперативная память