我无法获得我的设置的最大吞吐量。 硬件如下:
软件:
到目前为止,我基本上认为,条带化(RAID 0)几个物理设备应该大致线性地提高性能。 然而这不是这种情况:
那么这里发生了什么? 基本上我排除了总线或内存争用,因为当我在两个驱动器上同时运行dd时,聚合写入速度实际上达到了1.5 GB / s,并且读取速度达到了2 GB / s。
所以这不是PCIe总线。 我想这不是内存。 这不是文件系统,因为我得到了与原始设备或使用XFS完全相同的数字基准。 而且我也可以使用LVM条纹和md条纹获得完全相同的性能。
怎么了? 什么阻止了进程达到最大吞吐量? Linux条带有缺陷吗? 我可以运行哪些其他testing?
您是否尝试在执行基准testing时运行latencytop? 可能有助于查看哪个linux系统调用是罪魁祸首(如果有的话)。
就我所知,这是一张x8 PICe Gen 1卡 – 假设它的开销为零,它可以支持的最大数据速率是2GBytes / sec。 Adaptec自己只声称这些卡最多可以维持1.2Gbytes / sec,而且超出了这个范围。
采用业界领先的双核心芯片(RoC),x8 PCI Express连接和512MB DDR高速caching,每秒提供超过250,000个IO和1.2GB / s。
我的猜测是,既然你能够显着超过他们声称的性能与两个RAID 0集独立行事的额外负载,小和所有这可能是,条纹增加,这是超负荷的RAID CPU,或可能是RAM子系统上控制器,以GByte / sec加载。