Non-volatile memory express, also known as NVM Express or short NVMe, is designed for SSDs and PCIe and is optimized for low latency.
AHCI (Advanced Host Controller Interface) was designed with hard drives in mind and is therefore optimized for high latency rotating media.
Differences between AHCI and NVMe
|Maximum queue depth||One command queue;
32 commands per queue
65536 commands per queue
|Un-cacheable register accesses (2000 cycles each)||Six per non-queue command; nine per queued command||Two per command|
|MSI-X and interrupt steering||A single interrup; no steering||2048 MSI-X interrupts|
|Parallelism and multiple threads||Requires synchronization lock to issue a command||No locking|
|Efficiency for 4 KB commands||Command parameters require two serialized host DRAM fetches||Gets command parameters in one 64-byte fetch|
Generally speaking, NVMe drives are faster than AHCI drives
The AHCI and NVMe specifications can be applied to different connector standards. For computer storage devices like the traditional spinning hard disk drive, you will usually find the common SATA interface with the AHCI standard. For solid state drives (SSDs), you have the common SATA interface with the AHCI standard but also further interface options like PCIe and M.2 that are available with the AHCI and/or NVMe standard.
For example, our AKiTiO Thunder3 PCIe SSD is using an Intel® Solid State Drive 750 Series, which is a NVMe PCIe SSD.
Can I install a PCIe SSD in the AKiTiO Thunderbolt expansion chassis?
The AKiTiO Thunder2 PCIe Box is using a Gen2 x4 bus interface and the real world limit of the Thunderbolt 2 interface is around 1375 MB/s. The AKiTiO Thunder3 PCIe Box is using a Gen3 x4 bus interface and the real world limit of the Thunderbolt 3 interface is around 2700 MB/s. If your PCIe SSD is faster than that (e.g. the Intel® Solid State Drive 750 Series inside the Thunder2 PCIe Box or the Samsung 960 Pro NVMe SSD inside the Thunder3 PCIe Box), the transfer rates in the external expansion chassis are potentially limited by the bus interface and the Thunderbolt interface.
Make sure your system supports the PCIe SSD. A NVMe drive for example cannot be used on macOS. Currently, drivers for NVMe drives are available for the following systems only:
|OS||NVMe driver available|
|Linux||RHEL 6.5, 6.6, 6.7, 7.0, 7.1
SUSE 11 SP3, 12
Ubuntu 13, 14
|Windows||Windows 7, 8, 8.1, 10
Windows Server 2008 R2, 2012, 2012 R2
Solaris 11.2 and higher
|ESXi 5.5, 6.0|