NVMe(over PCIE) 的速度远超 AHCI(over SATA), 其中一个重要的原因是 NVME 的队列个数远超 AHCI。NVME 队列深度达到了64K,并且支持队列个数最大可达64K。AHCI 只有一个 Queue, Queue 深度只有32。作为NVME 重点中的重点,本文将浓墨重彩介绍命令队列SQ 和 CQ.
NVMe定义的命令有两种: Admin Command和 IO Command。
当Host要下发Admin command时,需要一个放置Admin command的队列,这个队列就叫做Admin Submission Queue, 简称Admin SQ.
Device执行完成Admin command时,会生成一个对应的Completion回应,此时也需要一个放置Completion的队列,这个队列就叫做Admin Comp