NVMe та SATA: чим відрізняються і що швидше

NVMe та SATA: чим відрізняються і що швидше
Хостинг
03 Jun 2019

Отже, що таке NVMe та які переваги має перед загальновідомим інтерфейсом SATA.

Ця стаття містить багато технічних деталей, тому, якщо вам цікаво просто вибрати, то ми написали іншу статтю Звичайні SSD диски та диски NVMe

NVMe (Non-Volatile Memory Express) - це інтерфейсний протокол, створений спеціально для твердотільних накопичувачів (SSD). SSD не мають рухомих частин і багато в чому більш міцні, ніж HDD. На даний момент SSD вже є основним джерелом зберігання для смартфонів і планшетів. При цьому твердотілі накопичувачі коштують дорожче, ніж жорсткі диски, і часто використовуються як кеш-пам'яті у поєднанні з жорсткими дисками для прискорення роботи комп'ютерних систем.

Оскільки твердотілі накопичувачі все частіше стали замінювати повільні жорсткі диски (HDD) на комп'ютерах, потрібен новий інтерфейс, здатний використовувати можливості вищої швидкості накопичувачів.

До появи даного інтерфейсу, при установці SSD доступ до нього здійснювався через такі інтерфейси, як Serial Attached SCSI (SAS) та Serial ATA (SATA), які історично використовувалися з не такими швидкими жорсткими дисками, як SSD. При цьому SSD мають явну перевагу завдяки швидшому доступу через стандарт послідовної шини PCI Express (PCIe).

NVMe був створений з нуля як новий спосіб ефективного доступу до пристроїв зберігання, спеціально створених з енергонезалежною (флеш) пам'яттю - SSD. NVMe забезпечує швидший інтерфейс для використання швидкостей, які здатні SSD.

Фактично, NVMe є оптимізованим масштабованим інтерфейсом хост-контролера, розробленим для задоволення потреб корпоративних систем, центрів обробки даних та клієнтських систем, що використовують твердотільні накопичувачі на основі PCI Express (PCIe). Специфікація для NVMe доступна на nvmexpress.org.

Альтернативними інтерфейсами SSD (для заміни жорстких дисків на ПК) є Serial ATA (SATA), mSATA або PCIe. Для PCIe внутрішній інтерфейс може бути використаний, якщо SSD знаходиться на платі, яку можна підключити до роз'єму PCIe на материнській платі. Сучасні сервери можуть отримати доступ до SSD через послідовний SCSI (SAS), SATA, PCIe або оптоволоконний канал.

Твердотільні накопичувачі на базі NVMe використовують PCIe для створення зменшеної затримки. Форм-фактори, які використовує протокол NVMe, повинні підключатися до PCIe на комп'ютері. Підключення для NVMe можуть бути виконані через карту розширення PCIe, 2,5-дюймовий роз'єм U.2 або малий форм-фактор M.2. Виробники твердотільних накопичувачів, схоже, переходять на PCIe, причому більшість використовують роз'єм M.2, відомий як «Форм-фактор наступного покоління».

Як працює NVMe?

Для NVMe система "Submission and Completion Queue" (черги на виконання та завершена черга) - це один з механізмів, що використовують переваги технології SSD. Програмне забезпечення хоста черги управляє потоком даних SSD, створює та видаляє окремі черги, скасовує команди тощо. Комп'ютер із чотирма ядрами може мати чотири пари черг, щоб гарантувати, що структури даних зберігаються у кеші відповідного ядра (див. малюнок). NVMe підтримує кілька глибоких незалежних черг.

Малюнок. Для NVMe система «Submission and Completion Queue» (черги на виконання та завершена черга) – це один із механізмів, що використовують переваги технології SSD (Зображення: nvmexpress.org)

NVMe SSD на ринку

Спершу NVMe створювалося для корпоративних систем та центрів обробки даних. Наразі NVMe поступово виходить на споживчий ринок.

Межа пропускної здатності SATA становить 6,0 гігабіт в секунду (Гбіт/с), у той час як SAS - 12 Гбіт/с.

NVMe - це інтерфейсний протокол, який використовує технологію PCIe для передачі даних між процесором та твердотілим накопичувачем.

PCIe 3.0 був випущений у 2010 році і забезпечує ~ 1 ГБ/с на лінію (двонаправлений).

При 4 лініях пропускна здатність PCIe 3.0 становитиме 8 Гбіт/с в обох напрямках одночасно (дуплекс), що в сумі становитиме 16 Гбіт/с.

PCIe також масштабується. На 16 лініях PCIe 3.0 дає дуплекс 16 Гбіт/с.

Специфікація PCIe 4.0 була опублікована наприкінці 2017р. Порівняно з PCIe 3.0 подвоїлася пропускна здатність, зменшено затримки, покращено масштабованість та підтримку віртуалізації. Поява специфікації стандарту PCI Express 5.0 запланована на 2019р. Очікується, що швидкість передачі даних по шині PCI Express 5.0 становитиме вже 32 GT/s (Гігатранзакцій/с).