[SSD固态硬盘协议 4] NVME 命令队列 SQ/CQ 的奥秘
2023-09-14 09:10:00 时间
前言
NVMe(over PCIE) 的速度远超 AHCI(over SATA), 其中一个重要的原因是 NVME 的队列个数远超 AHCI。NVME 队列深度达到了64K,并且支持队列个数最大可达64K。AHCI 只有一个 Queue, Queue 深度只有32。作为NVME 重点中的重点,本文将浓墨重彩介绍命令队列SQ 和 CQ.
1. SQ 和 CQ 是什么?
NVMe定义的命令有两种: Admin Command和 IO Command。
当Host要下发Admin command时,需要一个放置Admin command的队列,这个队列就叫做Admin Submission Queue, 简称Admin SQ.
Device执行完成Admin command时,会生成一个对应的Completion回应,此时也需要一个放置Completion的队列,这个队列就叫做Admin Comp
相关文章
- Working Plan 优先队列+贪心
- hdu1837 看病要排队(优先队列)
- 线性表结构:队列
- 如何基于RabbitMQ实现优先级队列
- Java实现 LeetCode 632 最小区间(又是先序队列,官方给的是堆)
- Java实现 LeetCode 622 设计循环队列(暴力大法)
- 消息队列 RocketMQ 5.0:从消息服务到云原生事件流平台
- python 关于celery的异步任务队列的基本使用(celery+redis)【无配置文件设置】
- 【数据结构笔记07】数据结构之队列的链式表示和实现(链队)
- 【华为OD机试 2023】 打印机队列(C++ Java JavaScript Python)
- 【Android 异步操作】手写 Handler ( Message 消息 | ThreadLocal 线程本地变量 | Looper 中的消息队列 MessageQueue )
- 简单方法快速记忆数组栈和队列函数
- [译]Vulkan教程(07)物理设备和队列家族
- Berkeley DB的数据存储结构——哈希表(Hash Table)、B树(BTree)、队列(Queue)、记录号(Recno)