免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2690 | 回复: 0
打印 上一主题 下一主题

[RAID与磁盘阵列] aix下的磁盘块设备性能 [复制链接]

论坛徽章:
12
CU大牛徽章
日期:2013-09-18 15:20:4815-16赛季CBA联赛之同曦
日期:2016-02-01 20:28:25IT运维版块每日发帖之星
日期:2015-11-10 06:20:00操作系统版块每日发帖之星
日期:2015-10-28 06:20:002015亚冠之塔什干棉农
日期:2015-06-04 11:41:56丑牛
日期:2014-05-10 16:11:33技术图书徽章
日期:2013-09-23 13:25:58CU大牛徽章
日期:2013-09-18 15:21:17CU大牛徽章
日期:2013-09-18 15:21:12CU大牛徽章
日期:2013-09-18 15:21:06CU大牛徽章
日期:2013-09-18 15:20:58数据库技术版块每日发帖之星
日期:2016-02-08 06:20:00
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2013-11-11 14:49 |只看该作者 |倒序浏览
本帖最后由 mike79 于 2013-11-11 14:53 编辑

看到某专家说“AIX下块设备性能为什么总是那么差,不管底层用了多么高端的存储”,并且归因于“用了DIO性能也还是较差,本质原因在于AIX死心眼,低下都被拆分为4K的page IO,Linux就没这个问题”

说块设备比较拗口,我刚开始还以为是说裸设备性能。由于磁盘块设备基本用于文件系统,那就直接说文件系统性能了。

AIX下影响文件系统的性能很多,这就只针对一个问题:AIX针对文件系统的IO,无论文件系统是否采用dio,无论用户访问模式(读/写?顺序/随机?大容量?多并发?),都是以4KB为单位么?AIX这么傻么?
AIX针对磁盘的单个IO的最大吞吐量是在VG层面决定的,简单讲就是某个VG中吞吐量最小的磁盘决定了这个VG中所有磁盘的最大吞吐量。例如VG中有10块磁盘,9块磁盘的最大吞吐量可以到1MB,有1块磁盘只能到256KB,那么这个VG中所有磁盘的吞吐量就是256KB。

单个磁盘的吞吐量和整个VG的吞吐量都可以通过命令查看。看磁盘的吞吐量是lsattr -El hdiskX,max_transfer参数就是。不过有些存储厂商的设备没有提供这个参数。因此可以在VG层面看,lsvg XXvg,LTG size就是。

接下来我们做实验,看针对文件系统的IO吞吐量究竟能否超过4KB,到达LTG限定的值。
实验很简单,我们通过topas看磁盘的KBPS和TPS,两个值相除,也就是每个IO的吞吐量,暂且称之为KBPT。
先创建文件系统,用dio方式mount,然后用dd命令测试小并发(1个并发)、大容量(dd的bs参数决定)、顺序(dd就是测试顺序)、读写。
在我的实验环境中,LTG是1MB,那么就是看针对文件系统的IO的KBPT能否达到1MB。
为了突出实验效果,测试中设置bs=8m。其实只要超过LTG,相差其实不大。
因为专家特意提到了dio,以下就是dio的测试结果
写:dd if=/dev/zero of=test.txt bs=8m


读:dd if=/dev/test.txt of=/dev/null bs=2m


显然无论读写,hdisk5的吞吐量都近似为1MB,也就是LTG。这至少说明,AIX的文件系统IO并不限于4KB的page,是可以到达LTG。但这个也取决于用户的访问模式,比如将bs设置为4KB,那么吞吐量就只有4KB了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP