NVM Express

NVM Express

Существует множество интерфейсов подключения накопителей:

  • SATA;
  • SAS;
  • SCSI;
  • FIREWIRE;
  • IDE.

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

Появилась эта спецификация неспроста, хоть SSD появились довольно давно, еще в 2000-х годах, но обеспечить высокую скорость работы SATA или SAS не могли, так как были предназначены для обыкновенных HDD. Ограничения накладывались как на скорость чтения, так и на скорость записи, потому, пришлось искать способы устранения выявленной проблемы.

NWMe

Разработки методов подключения твердотельных дисков к шине PCI-E велись параллельно с развитием SSD на других интерфейсах, к сожалению, методы были неэффективны. Реализовалось подключение к этой шине посредством компоновки нескольких блоков SSD интерфейсами SAS или SATA между собой и размещением оных на одной плате либо с использованием уникальных закрытых стандартов, что тоже накладывало серьезные ограничения на скорость.

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

Первых успехов достигла компания Intel, разработав интерфейс NVMHCI, что расшифровывается следующим образом: Non-Volatile Memory Host Controller Interface. Именно с него и пошел современный NVMe, который начали разрабатывать после середины 2009 года. Участвовали в разработке большое число компаний, больше 90, но, несмотря на колоссальные вложения и пущенные на решения задачи ресурсы, успеха достигли только в 2011 году, выпустив первую спецификацию.

На данный момент передовой версией является 1.3c, которая была создана 24 мая 2018 года. Она обеспечивает наибольшую производительность SSD.

ssd от intel

Сравнение с другими механизмами подключения

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

ВозможностьNVM ExpressAHCI
Механизм обработки прерываний и работы с очередямиДо 2048 операций единовременноНе более одного прерывания, возможности работы с очередями нет
Глубина очереди запросовКоличество очередей и команд в каждой очереди составляет 65536Не более 32 в очереди
Параллельная обработка запросовДоступна в полной мере, ограничена только количеством очередей и командДоступна, но ограничена количеством блоков и межблочной синхронизацией
Набор командСложный набор команд, требует специальные драйвера, расшифровывающие эти запросыСокращенный, всего 13 обязательных команд, остальные по желанию, что упрощает разработку данного типа устройств
Некэшируемые регистры для доступа (2000 каждый)2 на запрос6 на внеочередные команды, до 9 на команды в соответствии с очередью
Продуктивность для команд на 4 КбКаждый запрос обрабатывается в одном 64-байтном диапазонеНеобходимо два модуля динамической памяти с произвольным доступом, в противном случае эффективного исполнения команд не будет

Так же, если посмотреть на картинку ниже, можно увидеть, каким образом работает AHCI:

AHCI scheme

По сути, несколько блоков SATA либо SAS будут посредством данной спецификации соединены с PCI-E и отображаться как единый блок.

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

Схема ячеек NVMe

Преимущества

Итак, к чему все это сказано, наверное, чтобы было понятно, что представляет собой NVMe. Из всего сказанного вытекает ряд преимуществ, которые будут полезны любому пользователю, не только обладателям сервера:

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

Перечислять можно долго, информация получится пустая. Проще сказать иначе. SSD NVMe быстрее, порой, на порядок, особенно при единовременной обработке большой численности запросов. Это главное и самое важное преимущество.

Как выбрать накопитель

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

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

На самом деле линейка постоянно пополняется, выходят новые устройства, потому, отображать в рамках статьи, какие лучше, какие хуже, практически бессмысленно. Устройства практически всех компаний хороши и надежны, потому ориентироваться стоит на характеристики отдельного накопителя NVMe и цену. Остальное не столь принципиально.

Установка

В качестве разъемов для твердотельных накопителей NVMe используется PCI-Express. В персональных компьютерах из-за этого периодически случаются проблемы, ведь слот может быть занят видеокартой или даже двумя.

В серверах подобной проблемы не возникает. В них, как правило, предусмотрены данные разъемы и их целесообразная компоновка. Но подключение посредством PCI-E постепенно отходит на второй план, так как прогресс шагает в сторону уменьшения форм-фактора разъемов.

U.2

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

NVME от Intel

M.2

Данный форм-фактор наиболее популярен в пользовательском сегменте. Большинство современных материнских плат, в том числе и серверных, имеют поддержку данного разъема. Но для «горячей» замены он не подходит. Для серверов все же желательно использовать U.2.

Samsung 950 Pro с интерфейсом NVM Express

Выводы

Итак, приходим к выводу, что NVMe – спецификация чисто для SSD, с обычными HDD ее использовать не получится. Данный интерфейс лучше всего раскрывает возможности твердотельных накопителей, чего не могут сделать устаревшие варианты.

Потому, если требуется максимальная производительность дисковой подсистемы, ориентируемся на NVMe, если же она не принципиальна, то можно взять устройства подешевле.

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

Покупка

Купить SSD NVMe можно у нас. В наличии есть накопители разных форм-факторов и объемов. Для связи и получения прайс-листа можно использовать форму обратной связи, либо связаться любым методом, присутствующим в разделе «Контакты».