среда, 31 августа 2016 г.

NVMe - что это? Обзор

    Вольный перевод обзорной листовки, представленной на сайте организации
http://www.nvmexpress.org/white-papers/
Собственно, документ:  http://www.nvmexpress.org/wp-content/uploads/NVMe_Overview.pdf


    NVM Express® (NVMe ™) - высокопроизводительный и масштабируемый интерфейс хост-контроллера. Оптимизирован для удовлетворения потребностей систем предприятия и клиентских систем, использующих твердотельные накопители с интерфейсом PCI Express®.

    Интерфейс разработан, чтобы выйти за рамки "древней" технологии жесткого диска, NVMe построен с нуля и учитывает особенности работы с энергонезависимой памятью (NVM, Non-volatile memory - https://ru.wikipedia.org/wiki/Энергонезависимая_память). NVMe предназначен для обеспечения эффективного доступа к устройствам хранения данных на энергонезависимой памяти, построенных как на современной технологии NAND флэш, так и на будущих высокопроизводительных типах памяти.

    Есть несколько ключевых характеристик, на которые ориентирован NVMe - пропускная способность, IOPs (количество операций ввода/вывода в секунду) и латентность (вносимые задержки).
    Например, максимально возможное значение IOPs для интерфейса Serial ATA - 200 000, в то время как устройства NVMe уже продемонстрировали уровень более 1 000 000 IOPS.

    Поскольку NVMe поддерживает передачу как через собственную структуру, так и  Fibre Channel fabric в качестве транспортного протокола (NVME Over Fabrics, NVMe Over Fibre Channel - обзор Qlogic ), а также прямой доступ к памяти  RDMA), NVM Express может поддерживать гораздо более высокую пропускную способность, чем  SATA или SAS. Например, хост-контроллер x4 PCI Express Gen3 (третьего поколения) обеспечивает скорость передачи 4 Гбит / с.
    Наконец, запоминающие устройства следующих поколений - как видится - будут иметь задержку на чтение, составляющую микросекунды. Для оптимальной работы с такими системами потребуется протокол, обеспечивающий суммарную задержку канала передачи из конца в конец менее 10 микросекунд, включая задержки, привносимые программным обеспечением.

    NVMe представляет собой комплексную законченную архитектуру хранения, включающую как средства (стек) программного обеспечения, так и аппаратные устройства и системы

    ИСТОРИЯ

    NVM Express Work Group - рабочая группа NVM Express зарегистрирована в 2014 году как консорциум и отвечает за разработку спецификаций протокола NVM Express.
    В настоящее время организация насчитывает более 100 компаний-членов. Заинтересованные в присоединении должны посетить www.nvmexpress.org/join-nvme.

    Версия 1.0 спецификации NVM Express, разработанная совместно компаниями-членами, была выпущен на 1 марта 2011г. Версия 1.1 спецификации была выпущена 11 октября 2012 года, а версия 1.2 - 3 ноября 2014.
    В ноябре 2015 г. выпущена спецификация Интерфейс Управления NVM Express (NVMe-MI), обеспечивающая управление удаленными компонентами и системами NVMe. NVMe-MI реализует общую базовую функцию управления всеми установленными устройствами и системами NVMe и метод расширения функционала дополнительными функциями. Команды интерфейса управления реализуют:
- запрос и настройку конфигурации,
- запрос текущего состояния системы,
- управление встроенным программным обеспечением,
- управления пространством имен
-, управление безопасностью
и т.д.
    Организация NVM Express в настоящее время работает над версией 1.3, которая, как ожидается, будет завершена в течение 2016 года. Версия 1.3 учитывает особенности мобильных устройств, в частности - их потребность в режиме низкого энергопотребления. Когда версия 1.3 будет завершена, NVMe станет единственным интерфейсом систем хранения данных, доступным как с мобильных устройств, так и с систем хранения ЦОД.
    Видя необходимость в управлении большим количеством устройств в системе, а также управление устройствами, расположенными на расстоянии, консорциум начал в 2014 и закончил в 2016 году работу над спецификацией NVMe Express over Fabrics, обеспецивающей доступ к отдельным устройствам NVMe и к целым системам хранения NVMe через сети, такие как Ethernet, Fibre Channel и InfiniBand®,


    ПРЕИМУЩЕСТВА ИНТЕРФЕЙСА

    Так как NVMe как протокол хранения разработан с нуля, он не имеет ограничений, присущих протоколам хранения данных, предназначенных для жестких дисков.
    Протокол NVMe поддерживает несколько глубоких очередей, что является усовершенствованием по сравнению с традиционными протоколами SAS и SATA. Типичные устройства SAS поддерживает до 256 команд и устройств SATA поддерживают до 32 команд в одной очереди. Эти показатели были достаточными для технологий жестких дисков, но не соответствуют возможностям, соответствующим устройствам текущего и следующих поколений NVM технологий.
    В противоположность этому, NVMe поддерживает команды 64K в очереди и до 64К очередей. Эти очереди сконструированы таким образом, что команды ввода / вывода и ответы на эти команды обрабатываются на одном и том же ядре процессора. Каждое приложение или поток может иметь свою собственную независимую очередь, поэтому не требуется блокировка ввода / вывода. В случае необходимости, можно использовать возможности параллельной обработки многоядерных процессоров. NVMe также поддерживает MSI-X (Message Signaled Interrupts, MSI, Прерывания, инициируемые сообщениями) и управление прерываниями, которые предотвращают возникновение узких мест (бутылочных горлышек) на уровне процессора и позволяет существенно повысить масштабируемость системы.


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

    Кроме того, NVMe имеет более простой набор команд, составляющий меньше половины числа тактов, необходимых процессору для обработки запросов ввода / вывода SAS или SATA. Благодаря этому, достигается более высокий показатель IOPS за такт инструкций процессора. NVMe также поддерживает расширенные функции - например, управление питанием, выводящие общую эффективность интерфейса за рамки только ввода / вывода.

Диаграмма Относительных IOPS/ ядро процессора для различных SAS, SATA интерфейсов в сравнении с NVMe

Сравнительная диаграмма циклов процессора / операций ввода-вывода для различных SAS, SATA интерфейсов в сравнении с NVMe


среда, 24 августа 2016 г.

Новый саммит Flashmemorysummit. Samsung с 32TB SAS SSD и 64-слойными чипами vertical NAND (V-NAND) без наград.

http://www.storagereview.com/samsung_introduces_64layer_vnand_a_32tb_sas_ssd


Новый саммит Flashmemorysummit - новые рекорды. 100TB SSD Toshiba - начнем производство хоть сейчас!

http://www.theregister.co.uk/2016/08/10/toshiba_100tb_qlc_ssd/

   Toshiba хоть сейчас готов производить 100-терабайтные накопители SSD на чипах с технологией Quad-level cell (QLC) http://www.theregister.co.uk/2016/07/28/qlc_flash_primer/
   Сей монстр емкости готов потреблять в активном состоянии лишь 9Вт. В спящем - 100мВт.

Новый саммит Flashmemorysummit - новые рекорды. Сигейт

http://www.flashmemorysummit.com/English/News_Info/BOS_Winners.html
http://www.theregister.co.uk/2016/08/09/flashy_seagate_demonstrates_monster_60tb_ssd/

Победа в разделе:

Most Innovative Flash Memory Technology

Product: 60TB SAS SSD
Category: Device
Company: Seagate

   Да, такой вот прототип в 3,5-дюймовом форм-факторе, содержащий более 1000 Micron 3D NAND чипов 1100 серии.
   Что ж, темпы роста плотности можно сравнить с недавно вышедшими на рынок 10TB гелиевыми HDD. Во сколько раз цена 60-терабайтного SSD выше 10-терабайтного винчестера сейчас не особенно интересует, важно техническое достижение. Когда выйдет промышленно и кому действительно надо - купят..  :)
   Выход в свет накопителя обещан в 2017 году.

   Там же представлен еще один продукт Сигейт - 8TB NVMe, почему-то не отмеченный на этот раз наградами..  :) Nytro NVMe drive XP7200.

   В категории Most Innovative Flash Memory Consumer Application награда досталась BG Series NVMe SSD Toshiba Corporation.

   ИтакNytro NVMe drive XP7200.
940 000 и 160 000 IOPS соответственно - случайное чтение и запись.  10GB/s скорость последовательного чтения и 3.6GB/s - такой же записи. Карта имеет интерфейс 16x PCIe gen 3.
   Плановый выход продукта в партнерский канал - конец 2016.

PS На сайте собственно Seagate - молчок.