我希望有人能給我一個提示,告訴我去哪裡找。我的 Crucial MX300 750MB 在 Windows 上的表現比在 Linux 上好得多,但我不知道為什麼。結果如下:
- Windows:533 MB/秒最大讀取速度 Crucial_CT750MX300SSD1 /dev/sdb6 的 CrystalDiskMark 8.0.0 基準測試結果
- Linux:346MB/秒最大讀取速度
~$ hdparm -Ttv /dev/sdb6
/dev/sdb6:
multcount = 0 (off)
IO_support = 1 (32-bit)
readonly = 0 (off)
readahead = 256 (on)
geometry = 25665/255/63, sectors = 127432704, start = 83892224
Timing cached reads: 16474 MB in 1.99 seconds = 8269.94 MB/sec
Timing buffered disk reads: 1038 MB in 3.00 seconds = 345.86 MB/sec
~$ hdparm -V
hdparm v9.58
~$ smartctl -d ata -x /dev/sdb | grep "SATA\|Firmware"
Firmware Version: M0CR070 # <-- latest firmware
SATA Version is: SATA 3.2, 6.0 Gb/s (current: 6.0 Gb/s)
~$ lspci -nnk
SATA controller [0106]: Intel Corporation 6 Series/C200 Series Chipset Family 6 port Mobile SATA AHCI Controller [8086:1c03] (rev 04)
Subsystem: Lenovo ThinkPad T520 [17aa:21cf]
Kernel driver in use: ahci
Kernel modules: ahci
~$ dmesg
[ 1.917727] ata2: SATA link up 6.0 Gbps (SStatus 133 SControl 300)
[ 1.920398] ata2.00: ACPI cmd ef/02:00:00:00:00:a0 (SET FEATURES) succeeded
[ 1.920405] ata2.00: ACPI cmd f5/00:00:00:00:00:a0 (SECURITY FREEZE LOCK) filtered out
[ 1.920409] ata2.00: ACPI cmd ef/10:03:00:00:00:a0 (SET FEATURES) filtered out
[ 1.920772] ata2.00: supports DRM functions and may not be fully accessible
[ 1.921965] ata2.00: ATA-10: Crucial_CT750MX300SSD1, M0CR070, max UDMA/133
[ 1.921971] ata2.00: 1465149168 sectors, multi 16: LBA48 NCQ (depth 32), AA
[ 1.926973] ata2.00: ACPI cmd ef/02:00:00:00:00:a0 (SET FEATURES) succeeded
[ 1.926980] ata2.00: ACPI cmd f5/00:00:00:00:00:a0 (SECURITY FREEZE LOCK) filtered out
[ 1.926984] ata2.00: ACPI cmd ef/10:03:00:00:00:a0 (SET FEATURES) filtered out
[ 1.927288] ata2.00: supports DRM functions and may not be fully accessible
[ 1.930516] ata2.00: configured for UDMA/133
[ 1.941605] ata2.00: Enabling discard_zeroes_data
~$ uname -r
5.8.0-40-generic
~$ cat /sys/block/sdb/queue/scheduler
[mq-deadline] none
使用 hdparm 測量同一磁碟的速度為 485 MB/秒這裡:
lptp [ ~ ]: sudo hdparm -Tt /dev/sda /dev/sda: Timing cached reads: 12388 MB in 2.00 seconds = 6197.19 MB/sec Timing buffered disk reads: 1454 MB in 3.00 seconds = 484.59 MB/sec
所以這似乎並不是 hdparm 無法與 CrystalDiskMark 相媲美。我還使用最新的 Debian live iso 以及 Ubuntu 16.04.7 iso 進行了測試,並安裝了 5.10.10 主線核心。相同的 hdparm 結果。
因此,目前可以排除以下導致效能差異的原因:
- 固態硬碟
- 電源管理
- 我的Linux安裝
- 可能也是內核
編輯:
我找到了這個舊貼文我的,同一個磁碟在 Linux 和同一台筆記型電腦上的表現更好...我不知道這裡發生了什麼...我只是在 Windows 上使用相同的程式測試了 SSD,結果和當時一樣!
編輯2:更新了BIOS。不用找了。
編輯 3:在 Ubuntu 16.04.1 的即時 ISO 上,hdparm 測量不同的值!
ubuntu@ubuntu:~$ sudo hdparm -Tt /dev/sdb
/dev/sdb:
Timing cached reads: 15580 MB in 2.00 seconds = 7795.60 MB/sec
Timing buffered disk reads: 1308 MB in 3.00 seconds = 435.76 MB/sec
ubuntu@ubuntu:~$ hdparm -V
hdparm v9.48
ubuntu@ubuntu:~$ uname -r
4.4.0-31-generic
ubuntu@ubuntu:~$ lsb_release -d
Description: Ubuntu 16.04.1 LTS
編輯4:這是內核!
ubuntu@ubuntu:~$ uname -r
4.9.253-0409253-generic
ubuntu@ubuntu:~$ sudo hdparm -Ttv /dev/sdb
[...]
Timing buffered disk reads: 1302 MB in 3.00 seconds = 433.43 MB/sec
ubuntu@ubuntu:~$ uname -r
4.10.0-041000rc1-generic
ubuntu@ubuntu:~$ sudo hdparm -Ttv /dev/sdb
[...]
Timing buffered disk reads: 1028 MB in 3.01 seconds = 342.02 MB/sec
測試系統中的其他所有內容都保持相同。如果這是一個核心錯誤,那麼它自 4.10 以來就一直存在。我將提交一份關於 bugzilla 的報告,並希望有人花時間去做。