«Дисковая революция» с появлением накопителей M.2 открыла новые варианты SSD для комплектации ноутбуков, оставив выбор не только по цене, но и по ряду факторов, напрямую связанных с производительностью, комфортом и эксплуатационными характеристиками. Оценим их, используя универсальную платформу ASUSPRO P2540F с доступом к отсеку, где установлены накопители NVMe и SATA.

Закрыть вопрос «NVMe против SATA» можно, даже не приступая к тестированию: преимущество NVM Express перед устаревающим Serial ATA очевидно. Дело за количественными оценками и их трактовкой. Сравним для этого весьма бюджетный WD PC SN520 (в прошлом — SanDisk), использующий в подключении всего две линии PCI Express, с накопителем Kingston SA400M8, подключенным к традиционной шине SATA. За его работу отвечает AHCI-контроллер в составе системной логики от Intel (чипсет 400-й серии). Оба устройства выполнены в конструктиве M.2.
Тестирование с помощью AIDA64
Первое впечатление о производительности соперничающих архитектур дает информационная утилита AIDA64:

Не вдаваясь в подробности, можно сразу отметить троекратное превосходство интерфейса, не требующего посредников в виде AHCI-контроллера, что, впрочем, мало сказывается на таком параметре, как Average Read Access — времени доступа к данным. Это означает, что лучшая пропускная способность NVMe мало скажется на латентности, и, вследствие этого, — на субъективных ощущениях пользователя за компьютером.
Слово NIOBench
На этом можно было бы и закончить сравнение SATA SSD с NVMe, но мы пойдем дальше и постараемся узнать больше. В конце концов, платформа, общаясь с накопителем, выполняет не только чтение, но и запись. Для построения объективной характеристики обоих M.2 устройств воспользуемся инженерным релизом утилиты NIOBench. С ее помощью измерим скорость чтения и записи, как с привлечением ускоряющих механизмов драйверного стека Windows 10, так и блокируя все спекулятивные операции.
Неблокирующий сценарий
Сначала используем все преимущества, которые предоставляет операционная система: неблокирующий сценарий NIO Channels именно для этого и предусмотрен и использует самый производительный режим ввода-вывода.

Левый скриншот — показатели SATA-накопителя Kingston SA400M8,
правый — NVMe-устройство от Western Digital в неблокирующем сценарии NIOBench
Как видим, по-прежнему сохраняя трехкратный перевес в скорости чтения, WD PC SN520 не оставляет никаких шансов сопернику при оценке производительности записи. Здесь преимущество еще удваивается — Kingston SA400M8 отстает в 5,84 раза: сказывается наличие «слабого звена» в виде AHCI-контроллера.
Релевантность с результатами, полученными в AIDA64, для SATA-интерфейса достаточно высокая. Расхождение с NVMe даже по самым скромным оценкам составляет около 15%. Оно объясняется тюнингом, присущим AIDA64 в отношениях со стеком драйверов PCIe-шины, а также влиянием Java-среды, в которой оперирует NIOBench.
Нативный сценарий
Стоило нам только отказаться от кэширования и буферизации потоков данных (и обслуживающих спекулятивных механизмов — упреждающего чтения и отложенной записи), как картина производительности обоих накопителей кардинально поменялась.

Левый скриншот — показатели SATA-накопителя Kingston SA400M8,
правый — NVMe-устройство от Western Digital в нативном сценарии NIOBench
NB: Для того, чтобы упредить вопрос о количестве итераций (в неблокирующем сценарии их было 500, в нативном — всего 40), заметим, что в первом случае NIOBench сначала записывает все файлы и только потом их вычитывает. Нативный тест повторяет цикл «запись → чтение → копирование» для тестового файла предписанного размера (в данном случае 1 ГБ), повторяя серию файловых операций заданное количество раз. Если для оценки производительности в неблокирующем сценарии требуется длительная процедура, то в нативном сценарии минимизация влияния вспомогательных согласующих операций происходит уже после первого десятка тестовых итераций.
Сравнивая полученные результаты, довольно просто заметить, что Kingston SA400M8 не так уж плох в смысле чтения. Можно даже сказать, что он очень хорош! Во всяком случае, лучше даже, чем WD PC SN520, использующий все преимущества PCIe-шины. А со стороны выглядит так, как будто оба устройства в чтении ограничены теоретическим пределом возможностей SATA-III с его 600 MBPS. Когда дело доходит до записи, здесь AHCI-контроллеру нечем крыть козыри NVMe: шестикратное преимущество как было у WD PC SN520, так и осталось.
Что осталось за кадром?
Легко накопителю Kingston SA400M8 тягаться с «синим» NVMe от Western Digital, даже проигрывая с разгромным счетом. Если бы устройство, подключенное к PCIe-шине, нарастило количество линий и ускорилось за счет Gen4, белый флаг стоило бы выбросить еще до поединка (что умеет Seagate FireCuda 520, можно увидеть здесь). Но устраивать соревнования в разных весовых ценовых категориях — не наш метод.
В споре между SATA и NVMe x2 часто можно услышать аргумент из серии: а у вас устройство греется! В процессе тестирования стало ясно, что и Kingston SA400M8, и WD PC SN520 нагревались в одном и том же сценарии приблизительно на 10°C. С той лишь разницей, что базовые условия у них неодинаковы: NVMe по определению горячее, чем SATA на те же самые 10°C!
Это могло бы стать аргументом, если бы не абсолютные значения зафиксированных температур в окружающей среде 24°C: Kingston SA400M8 нагрелся с до 34°C, а WD SN520 исходно оказался горячее и нагрелся с 33°C до 45°C. Пользователям корпоративного ноутбука ASUSPRO P2540F и в первом, и в о втором случае волноваться не о чем: надежная система вентиляции и охлаждения легко справляется с таким нагревом.