我是一名视频设计师,有很多渲染程序。我决定在我的 PC 中购买 120GB SSD,我正在寻找最佳性能。SSD 中最佳性能的关键必须是高 IOPS、高 4k 读写值、MLC NAND 闪存,OK 到目前为止很清楚。
但是队列深度 (QD) 1、2、3...32 是什么?例如随机读取 4k-QD1、随机读取 4k-QD2、随机写入 4k-QD1、随机读取 4k-QD2... 哪些 QD 值对我来说很重要,因为我没有服务器,也不是标准家庭用户。而重要的 QD-X 值对我来说至少要是多少?
答案1
QD 表示“队列深度”。实际上,它表示操作系统在等待任何操作的响应之前能够向该设备发出多少次 IO 操作。
普通应用程序通常会读取某些内容,等待结果,然后在处理完第一个结果后继续读取其他内容。这是 QD1,因为只并行执行一个读取操作,并且在执行另一个请求之前需要结果。几乎所有非数据库应用程序都属于此类。(所有视频作品通常都属于此类,但 IO 大小比 4K 大得多/更容易。)
服务器系统通常并行运行多个 QD1 进程,如果服务器运行 32-64 个并行 QD1 进程,则设备的总负载可能在 QD32 左右。
如果某些 SSD 设备规格只是说“随机 4K 读取”或“随机 4K 写入”,您可以绝对肯定它意味着 QD32(甚至是高队列深度!)因为 QD1 规格总是低得多,制造商不喜欢规格表中的低数字。(一些制造商还喜欢通过显示“QD1 T32”数字来作弊,其中“T32”表示 32 个并行线程正在执行并行 QD1 读取请求。从逻辑上讲,这与 QD32 相同,但实际行为可能比普通的旧 QD32 稍差或稍好,具体取决于操作系统。如果规格表仅提到此结果,您可以非常肯定制造商发现此方法提供了最具市场价值的规格值。如果规格表未提及 QD 或 T 值,您可以假设制造商使用了导致最佳规格结果的任何组合,并且您无法将其与其他设备的任何其他类似未指定规格的结果进行比较。)
您真正想要的是QD1 T1 random read 4kB
测量值。这是对大多数通用用途真正重要的唯一数字,并且可以保证您将获得的最低性能。如果请求恰好更容易执行实际存储,您可以更快地获得结果,这很好。如果您的要求不那么严格,我认为您已经知道正确的数字。
如果您不确定您的系统是否能够持续以真实的 QD32 级别运行,则应仅查看 QD1 数字。如果您对任何给定操作的延迟感兴趣,则即使系统总体运行的是 QD32,您也应该仅查看 QD1 数字。
TL;DR:QD32 = 最佳情况行为,QD1 = 最坏情况行为。
例如,东芝 Hawk HK4E SSD 驱动器声称具有“随机 4K 读取:75K IOPS”和“随机 4K 写入:30K IOPS”。这些是 QD32 数字。实际 QD1 性能约为读取 6.5K IOPS 和写入 6.5K IOPS。并且,如果您在每次操作后同步驱动器(等待数据在磁盘上后再继续),对于 4K 随机写入 QD1,您将获得大约 0.7K IOPS,或规格表中数字的约 1%。
如果您运行的是 Linux,则可以使用以下测试与当前磁盘进行比较(此测试test.img
在当前工作目录中创建一个名为的测试文件,因此切换到与您要测试的存储设备匹配的目录):
fio --name TEST --eta-newline=5s --filename=test.img --rw=randwrite --size=500m \
--io_size=10g --blocksize=4k --ioengine=libaio --fsync=1 --iodepth=1 \
--direct=1 --numjobs=1 --runtime=60 --group_reporting
用于--fsync=0
不同步永久存储的测试(如果将数据传送到驱动器内部缓存就足够了),并设置--iodepth=32
为 QD32 测试。最后,设置--blocksize=2048k
以了解视频编辑的可用带宽(但请记住,视频软件通常具有 QD1 或 QD2)。
大多数情况下,将所有应用程序文件(可执行文件、图标、数据库等)保存在快速 SSD 上就足够了。所有顺序数据(例如视频文件和照片)都可以存储在 HDD 或 HDD RAID 上,因为它们只需要顺序访问,如果您的预算有限,将顺序访问文件存储在 HDD 上要便宜得多。但是,请确保您的照片目录软件将其内容索引数据库和缩略图保存在 SSD 上。如果您选择高端产品(2020 年,这意味着每个颜色通道 10 位的 4K 视频),您应该获得 3-5 Gbps 的存储系统,这意味着 HDD RAID 具有 4-6 个数据磁盘和奇偶校验磁盘。(来源:https://www.quora.com/Whats-the-recommended-speed-for-a-hard-drive-to-edit-in-10-bit-4K-in-Mb-S-MBPS)。请注意,此类源材料所需的存储量将以 10 TB 为单位,因此全固态硬盘 (SSD) 并不是一个现实的选择,因为成本太高。
此外,由于您对视频编辑感兴趣,我认为足够的 RAM 对于视频编辑/创建工作来说是更好的投资。视频工作不应该需要随机的 4K 性能。除非您的视频片段非常非常短,否则我建议任何与视频相关的工作至少使用 32 GB RAM。如果您的系统似乎不稳定,请购买高质量电源 - 我建议使用 Corsair 或 Silverstone)。如果系统仍然不稳定,请使用 UPS。如果系统对您来说仍然不够稳定,请购买 ECC RAM - 这通常也需要升级主板和 CPU。
2024 年更新:
以下是三星 990 Pro 4 TB NVMe SSD 官方规格的示例:
- 连续读取: 最高 7450 MB/s
- 连续写入:最高 6900 MB/s
- 随机读取(4KB,QD32):高达 1,600,000 IOPS
- 随机写入(4KB,QD32):高达 1,550,000 IOPS
- 随机读取(4KB,QD1):高达 22 000 IOPS
- 随机写入(4KB,QD1):高达 80 000 IOPS
请注意,随机读取 QD1 IOPS 远小于 QD32 IOPS 除以 32!如果您并行使用多个驱动器(例如 RAID 0),则可以近乎线性地提高 QD32 数字(即,如果将驱动器数量加倍,结果也会加倍),但 QD1 结果根本没有改善。
如果你采用 QD1 IOPS 结果,你会发现该驱动器可以做到取决于22000*4096/1024/1024 MB/s 或 86 MB/s,这与连续读取性能略有不同。
这是目前我们可以拥有的最好的消费硬件,其他制造商的设备性能较差。
唯一明显更好的技术是英特尔傲腾,但它不再出售,因为英特尔认为出售这些设备利润不够。2018 年英特尔 905p 仍然是有史以来最快的消费级 SSD,它的随机 4K QD1 结果约为 68000 IOPS,比最新一代三星 SSD 快 3 倍左右。
答案2
QD 基本上是对 SSD 上运行的线程数的测量。
大多数用户的 QD 只会达到 1,但是在服务器环境中,在密集的 IO 负载下,您可以达到 64 或 128。
我会买类似的东西,无论你想要什么尺寸。 http://www.amazon.com/Samsung-2-5-Inch-Internal-MZ-75E250B-AM/dp/B00OAJ412U/ref=sr_1_1?s=pc&ie=UTF8&qid=1457283469&sr=1-1&keywords=ssd
以下是一篇详细讨论 QD 的论文: http://www.samsung.com/global/business/semiconductor/minisite/SSD/global/html/whitepaper/whitepaper08.html