我的计算机之间有 1Gb/s 的带宽。源实际上可以通过 SSH 以 25MB/s 的速度读取和发送数据。我的测试文件是 4GB,我使用不带压缩的 scp 进行测试传输。开始时速率为 25MB/s,但过了一段时间后,速率开始突然下降。发送 2GB 后,速率下降到4.5MB/秒几乎稳定,负载高达 6。磁盘是 WDC WD5001ABYS-01YNA0 型号。文件系统是 ext3。
瓶颈似乎是RAID bus controller: 3ware Inc 9550SX SATA-II RAID PCI-X
命令tw_cli
运行非常慢(我看到输出逐行出现,在没有压力时不会出现)。
# tw_cli /c1 show
Unit UnitType Status %RCmpl %V/I/M Stripe Size(GB) Cache AVrfy
------------------------------------------------------------------------------
u0 RAID-5 OK - - 256K 931.303 OFF OFF
Port Status Unit Size Blocks Serial
---------------------------------------------------------------
p0 OK u0 465.76 GB 976773168 WD-WCAS87320631
p1 OK - 465.76 GB 976773168 WD-WCAS87223554
p2 OK u0 465.76 GB 976773168 WD-WCAS87159042
p3 OK u0 465.76 GB 976773168 WD-WMAYP6812676
p4 NOT-PRESENT - - - -
p5 NOT-PRESENT - - - -
p6 NOT-PRESENT - - - -
p7 NOT-PRESENT - - - -
的头tw_cli /c1 diag
### CLI Version: x86 (32 bit)
### Time Stamp: 00:13.27 11-Dec-2013
### Host Name: somelinux
### OS Version: Linux 2.6.18
### Driver Version: 2.26.02.010
### Controller ID: 1
### Model: 9550SXU-8LP
### Firmware: FE9X 3.04.00.005
### BIOS: BE9X 3.04.00.002
### Serial #: L320810A7430290
### Available Memory: 112MB
据我所知,在这种情况下缓存不能计算在内,因为写入是长线性的。这些驱动器可以做到40MB/秒当他们独处时写作。
这一切可能是什么原因造成的?我该怎么办?
附加信息
阅读是32MB/秒造成的负荷为1.5。
答案1
tw_cli 的输出显示写缓存已禁用。默认情况下,如果 BBU 不存在,3ware 卡将禁用写缓存。
当写缓存被禁用时,必须将每个写操作刷新到所有磁盘,以防止在电源故障时可能出现的损坏。
可以通过运行以下命令启用写入缓存:
tw_cli /c1/u0 set cache=on
请注意,如果在没有工作/充电的 BBU 或 UPS 的情况下启用写入缓存,则在发生意外电源故障时可能会丢失数据。