IDE 磁盘性能调整及其测试方法

由 徐永久 发表于 2001年10月16日 20:54。

本文通过使用hdparm 和 tune2fs 等工具对磁盘性能调整的介绍,引出了另外一个测试磁盘的工具 Bonnie。

一、磁盘性能的调整
很多人可能不知道 Linux 内核有几个开关可以打开 IDE 磁盘的32 位 DMA 通道来加快传输速度。在性能上能加快两倍,几乎就和加一块磁盘镜像一样。

这些开关是几个命令的组合:

在PCI 总线上使用32 位 I/O :

# /sbin/hdparm -c 1 /dev/hda

(在有些芯片集的主板上,可能需要使用 -c 3 参数)

打开 DMA 通道:
# /sbin/hdparm -d 1 /dev/hda
(和内核是否支持主板芯片集,是否编译进去有关)

测试性能是否有改进:
# /sbin/hdparm -t /dev/hda

如果性能有改进的话,就可以保存设置:

# /sbin/hdparm -k 1 /dev/hda
内核会偶尔复位IDE 控制器,所以,如果没有保存的话,
先前的设置就丢失了,磁盘性能又回到死系胤健?
另外还有一个 -m 参数用来改变每次硬盘中断时的传递扇区数。

一般的机器都安装了 hdparm ,如果没有的话,可以在下面的地址找到:

http://metalab.unc.edu/pub/Linux/system/hardware/hdparm-3.5.tar.gz

用户报告在服务器上使用
# /sbin/hdparm -c1 -d1 -k1 -m16 -a128 /dev/hda

命令可以得到最大性能。

而在笔记本电脑上是:
# /sbin/hdparm -c1 -d1 -k1 -m16 /dev/hda

需要注意的时,打开DMA 通道在某些硬盘上会有危险,因为这些磁盘在DMA 的设计上不是很好。幸运的是,大多数磁盘还是可以使用这个方法来提升性能。如果你打开DMA 以后,经常碰到文件系统损坏的话,就要考虑不使用 DMA 了。

二、文件系统的调整
经常启动Linux 的人会知道,Linux 每当启动过一定次数后就会自动运行一个 fsck 程序,来检查文件系统。这个次数可以通过命令:

# tune2fs -c my_times

来调整。

tune2fs 是一个十分有用的工具,使用 -e 参数你可以指定文件系统遇到问题时应该怎样处理。详细的信息可以用

# man tune2fs

得到。

但是,不要在以读/写方式挂接的分区上运行 tune2fs。

三、磁盘速度测试

Bonnie 是一个用来测试文件系统性能的程序,使用方法为:

bonnie [-d dir] [-s size] [-html]

它往硬盘写入一个 100MB 的文件然后读出来测试磁盘性能。你可以用 -s 参数来调整这个文件的大小,单位是 MB。默认的测试目录是当前目录,可以用 -d 参数改变。
-html 参数用来把结果以 HTML 格式输出。

例如:
# bonnie -d /home/tuneup -s 50
会测试目录 /home/tuneup 所在的文件系统读写 50MB 文件时的性能。

最新版本的 Bonnie 1.2 可以在以下网址下载:
ftp://ftp.linux.com/mounts/u3/mirrors/suse/people/garloff/linux/bonnie/bonnie-1.2.tar.gz