MSN: luxuabc@hotmail.com

Linux性能监控之Memory篇(2)

上一篇 / 下一篇  2007-11-18 20:32:42 / 个人分类:性能测试技术

我们来看内存监控的一个例子,用vmstat命令的输出如下:

# vmstat 3
procs          memory            swap     io        system      cpu
r b  swpd   free   buff cache   si so    bi   bo    in   cs   us sy id wa
3 2 809192 261556 79760 886880 416 0    8244  751   426  863  17 3   6 75
0 3 809188 194916 79820 952900 307 0    21745 1005  1189 2590 34 6  12 48
0 3 809188 162212 79840 988920 95  0    12107 0     1801 2633 2  2   3 94
1 3 809268 88756 79924 1061424 260 28   18377 113   1142 1694 3  5   3 88
1 2 826284 17608 71240 1144180 100 6140 25839 16380 1528 1179 19 9  12 61
2 1 854780 17688 34140 1208980 1   9535 25557 30967 1764 2238 43 13 16 28
0 8 867528 17588 32332 1226392 31  4384 16524 27808 1490 1634 41 10  7 43
4 2 877372 17596 32372 1227532 213 3281 10912 3337  678  932  33 7   3 57
1 2 885980 17800 32408 1239160 204 2892 12347 12681 1033 982  40 12  2 46
5 2 900472 17980 32440 1253884 24  4851 17521 4856  934  1730 48 12 13 26
1 1 904404 17620 32492 1258928 15  1316 7647  15804 919  978  49 9  17 25
4 1 911192 17944 32540 1266724 37  2263 12907 3547  834  1421 47 14 20 20
1 1 919292 17876 31824 1275832 1   2745 16327 2747  617  1421 52 11 23 14
5 0 925216 17812 25008 1289320 12  1975 12760 3181  772  1254 50 10 21 19
0 5 932860 17736 21760 1300280 8   2556 15469 3873  825  1258 49 13 24 15

其中:swpd为虚拟内存的使用大小单位为KB.

     Free为空闲的物理内存的大小(KB);

     Buff为内存中缓存的大小,这些缓存是read()和write()函数使用的(KB);

     Cache进程的地址空间在物理内存中的映射(KB);

     So为从内存写入swap空间的数据大小(KB);

     Si为从swap空间写入内存的数据大小(KB);

     Bo为从内存写入硬盘或swap的页数量;

     Bi为从硬盘或swap写入内存的页数量;

从上面的输出我们可以看到:

1. 大量的disk pages(bi)被写入内存,这点可以从cache的不断增长来证明;

2. 在这个过程中,物理内存始终保持在17MB虽然不断有数据从硬盘读入来消耗内存;

3. 为了保持可用物理内存,kswapd不断的从Buff中偷取内存,来加入空闲列表,buff不断减小;

4. 同时kswapd不断的将垃圾页写入swap空间,我们可以看到so和swpd不断增加.

现在我们可以得出结论,这是一个IO Bound的程序,并且造成了虚拟内存的大量使用,加大物理内存可以改善性能.

总结下来:

1. 当一个系统有越少的页错误(所需数据不在内存,需要从硬盘读入),就会有越好的响应时间.因为内存比硬盘快得多.

2. Free memory数量低是一个好的征兆,因为证明了cache在起作用,除非同时存在大量的bi和so.

3. 如果一个系统有持续的si和so,就说明系统的内存是一个瓶颈.


TAG: 性能测试技术

luxuabc的个人空间 引用 删除 luxuabc   /   2007-11-19 17:07:32
good
 

评分:0

我来说两句

Open Toolbar