ramfs无法限制其大小,可能会把内存耗尽。
tmpfs可以限制大小,但有可能使用swap分区,使用时根据系统资源情况适当分配大小。
安装iostat:(从网上搜的一个下载链接)
wget
tar zxvf sysstat-11.1.2.tar.gz
cd sysstat-11.1.2
./configure
make
make install
用dd命令测试瞬间写的能力。用dd测试一下实际磁盘的IO性能。
-
[root@localhost cpp]# dd if=/dev/zero of=111.tmp bs=100M count=10
-
10+0 records in
-
10+0 records out
-
1048576000 bytes (1.0 GB) copied, 3.74677 seconds, 280 MB/s
-
[root@localhost cpp]# dd if=/dev/zero of=111.tmp bs=100M count=10
-
10+0 records in
-
10+0 records out
-
1048576000 bytes (1.0 GB) copied, 3.01066 seconds, 348 MB/s
-
[root@localhost cpp]# dd if=/dev/zero of=111.tmp bs=100M count=10
-
10+0 records in
-
10+0 records out
-
1048576000 bytes (1.0 GB) copied, 1.68588 seconds, 622 MB/s
-
[root@localhost cpp]# dd if=/dev/zero of=2.tmp bs=200M count=10
-
10+0 records in
-
10+0 records out
-
2097152000 bytes (2.1 GB) copied, 6.94783 seconds, 302 MB/s
-
[root@localhost cpp]# dd if=/dev/zero of=2.tmp bs=200M count=10
-
10+0 records in
-
10+0 records out
-
2097152000 bytes (2.1 GB) copied, 7.14008 seconds, 294 MB/s
在用dd测试的时候,同时开iostat查看io开销,实际最多将近250MB/s,可能是系统缓存了一部分IO。
-
[root@localhost cpp]mount tmpfs ./dir_tmpfs -t tmpfs -o size=2G
-
文件系统 容量 已用 可用 已用% 挂载点
-
tmpfs 2.0G 0 2.0G 0% /home/cpp/dir_tmpfs
-
[root@localhost dir_tmpfs]# dd if=/dev/zero of=2.tmp bs=200M count=10
-
10+0 records in
-
10+0 records out
-
2097152000 bytes (2.1 GB) copied, 1.33054 seconds, 1.6 GB/s
-
[root@localhost dir_tmpfs]# free -m
-
total used free shared buffers cached
-
Mem: 3948 3919 29 0 144 3528
-
-/+ buffers/cache: 245 3703
-
Swap: 8189 0 8189
-
[root@localhost dir_tmpfs]# ll
-
总计 2052012
-
-rw-r--r-- 1 root root 2097152000 02-03 10:38 2.tmp
-
[root@localhost dir_tmpfs]# rm 2.tmp
-
rm:是否删除 一般文件 “2.tmp”? y
-
[root@localhost dir_tmpfs]# free -m
-
total used free shared buffers cached
-
Mem: 3948 1914 2034 0 145 1528
-
-/+ buffers/cache: 240 3708
-
Swap: 8189 0 8189
从上面测试可以看出,tmpfs占用的是buffer,如果系统内存不够用,估计tmpfs里的东西会被转入swap。
执行dd的时候,iostat显示占用磁盘io。内存的写入速度1.6~1.9GB/s。
阅读(1067) | 评论(0) | 转发(0) |