Tôi đã thực hiện một số thử nghiệm hiệu năng đơn giản và có vẻ như việc đọc từ RAID1 của tôi chậm hơn so với viết:
root@dss0:~# for i in 1 2 3; do dd if=/dev/zero of=/dev/sda bs=1048576 count=131072; done
137438953472 bytes (137 GB) copied, 192.349 s, 715 MB/s
137438953472 bytes (137 GB) copied, 192.851 s, 713 MB/s
137438953472 bytes (137 GB) copied, 193.026 s, 712 MB/s
root@dss0:~# for i in 1 2 3; do dd if=/dev/sda of=/dev/null bs=1048576 count=131072; done
137438953472 bytes (137 GB) copied, 257.201 s, 534 MB/s
137438953472 bytes (137 GB) copied, 255.522 s, 538 MB/s
137438953472 bytes (137 GB) copied, 259.945 s, 529 MB/s
Tôi hiểu rằng dd không phải là một công cụ kiểm tra hiệu suất, nhưng kết quả này vẫn là một bất ngờ.
Hệ thống được xây dựng bởi nhà cung cấp và có bo mạch chính Supermicro với RAM 16 GByte. Bộ điều khiển RAID là MegaRAID 9271-8i với bộ nhớ cache 1 GB. Có 8 đĩa 2 TByte trên bảng nối đa năng SAS-933EL1. Tôi không chắc chắn về hệ thống cáp, một đầu nối của bộ điều khiển đi đến bảng nối đa năng của SAS, đầu còn lại đi đến hai đĩa SATA chứa HĐH.
RAID1 đã được thiết lập với lệnh này:
root@dss0:~# /opt/MegaRAID/MegaCli/MegaCli64 -CfgLdAdd -r1 [8:0,8:1,8:2,8:3,8:4,8:5,8:6,8:7] WB NORA Direct -a0
Adapter 0: Created VD 0
Adapter 0: Configured the Adapter!!
Exit Code: 0x00
root@dss0:~# /opt/MegaRAID/MegaCli/MegaCli64 -LDInfo -LALL -aALL
Adapter 0 -- Virtual Drive Information:
Virtual Drive: 0 (Target Id: 0)
Name :
RAID Level : Primary-1, Secondary-0, RAID Level Qualifier-0
Size : 7.275 TB
Sector Size : 512
Is VD emulated : No
Mirror Data : 7.275 TB
State : Optimal
Strip Size : 256 KB
Number Of Drives : 8
Span Depth : 1
Default Cache Policy: WriteBack, ReadAheadNone, Direct, No Write Cache if Bad BBU
Current Cache Policy: WriteBack, ReadAheadNone, Direct, No Write Cache if Bad BBU
Default Access Policy: Read/Write
Current Access Policy: Read/Write
Disk Cache Policy : Disk's Default
Encryption Type : None
PI type: No PI
Is VD Cached: No
Exit Code: 0x00
Tôi hy vọng rằng việc truy cập đọc ít nhất cũng nhanh như truy cập ghi, thậm chí có thể nhanh hơn. Tốc độ ghi 715 MByte / giây dường như gần giới hạn 6 GBit của một đầu nối SAS / SATA. Đây có thể là một vấn đề cấu hình hoặc cáp với bảng nối đa năng của SAS? Cấu hình bảng nối đa năng của SAS có thể được truy vấn bằng lệnh MegaRAID không? Xin tư vấn.
Cập nhật
Như đã được trình bày bởi poige và Peter, hiệu suất đọc chậm hơn dự kiến có thể là do bộ nhớ đệm của hệ thống con I / O của Linux.
Khi sử dụng cờ trực tiếp trong lệnh dd tôi nhận được
root@dss0:~# dd if=/dev/sda of=/dev/null bs=1048576 count=131072 iflag=direct
137438953472 bytes (137 GB) copied, 199.862 s, 688 MB/s
cái này tốt hơn nhiều nhưng tốc độ ghi vẫn chậm hơn 10%. Sử dụng oflag = direct không ảnh hưởng đến tốc độ ghi.