![Linux 中的 SSD 性能测试](https://linux22.com/image/1422083/Linux%20%E4%B8%AD%E7%9A%84%20SSD%20%E6%80%A7%E8%83%BD%E6%B5%8B%E8%AF%95.png)
我正在测试我的新 SSD 卡的性能,即使我的控制器是 sata3,似乎我也只能使用 sata2 速度。
这是我正在使用的命令。
dd if=tempfile of=/dev/null bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1,1 GB) copied, 0,309558 s, 3,5 GB/s
我有3.5GB/秒即使我的设备是 SATA3:
消息 |删除 SATA
[ 7.035956] ahci 0000:00:1f.2: AHCI 0001.0300 32 slots 6 ports 6 Gbps 0x5 impl SATA mode
[ 7.051861] ata1: SATA max UDMA/133 abar m2048@0xf7a16000 port 0xf7a16100 irq 43
[ 7.051866] ata3: SATA max UDMA/133 abar m2048@0xf7a16000 port 0xf7a16200 irq 43
[ 7.368593] ata1: SATA link up 6.0 Gbps (SStatus 133 SControl 300)
[ 7.368621] ata3: SATA link up 1.5 Gbps (SStatus 113 SControl 300)
hdparm -iI /dev/sda |删除 SATA
Transport: Serial, ATA8-AST, SATA 1.0a, SATA II Extensions, SATA Rev 2.5, SATA Rev 2.6, SATA Rev 3.0
这是我的控制器:
linux - linux系统删除 SATA
00:1f.2 SATA controller: Intel Corporation 7 Series Chipset Family 6-port SATA Controller [AHCI mode] (rev 04)
这是 hdparam 测试:
hdparm -I /dev/sda | grep -i speed
* Gen1 signaling speed (1.5Gb/s)
* Gen2 signaling speed (3.0Gb/s)
* Gen3 signaling speed (6.0Gb/s)
分区对齐应该没问题(我不是 100% 确定)。
(parted) p
Model: ATA Samsung SSD 840 (scsi)
Disk /dev/sda: 250GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number Start End Size Type File system Flags
1 1049kB 92,9GB 92,9GB primary ext4
4 92,9GB 94,0GB 1128MB primary ext4 boot
2 94,0GB 241GB 147GB primary ext4
3 241GB 250GB 9222MB primary linux-swap(v1)
(parted) align-check opt 1
1 aligned
(parted) align-check opt 2
2 aligned
(parted) align-check opt 3
3 aligned
(parted) align-check opt 4
4 aligned
Bios 已正确配置 AHCI
我的笔记本电脑是华硕 A55VD,SSD 是三星 EVO 840。
为什么我使用的是 3GB/s 而不是 6GB/s?
是不是我的磁盘对齐不正确?
谢谢
答案1
您肯定漏掉了什么。SATA 速度数字以 Gbit/s 为单位,而 dd 显示的单位是 GByte/s。因此,您从 dd 获得的数字显然不是您想要的速度,因为即使 SATA3 也无法达到 3.5GByte/s(大约为 28Gbit/s)——您看到的数字肯定来自某些操作系统内部缓冲区复制速度。
我不知道您真正想要测试什么,但 dd 可能不是最佳选择。测量接口速度(SSD 控制器和 SATA 控制器之间)通常没什么用,因为数据路径中通常还有其他点,这些点要窄得多 - 例如闪存芯片本身。诸如 之类的工具iobench
可以配置为发出多个并行 I/O 请求,通常更有用。