用hdparm优化硬盘
Reference:
1,Linux通用系统优化
2,中文手册:
3,英文手册:
4, Speeding up Linux Using hdparm
需要配置的原因是硬盘不断更新换代,而linux系统为了兼容和稳定,默认没有采用较新的硬盘技术.
俺们的流媒体服务器配置:
/sbin/hdparm -c3 -u1 -d1 -m0 /dev/hda
/sbin/hdparm -c3 -u1 -d1 -m0 /dev/sda
/sbin/hdparm -c3 -u1 -d1 -m0 /dev/sdb
/sbin/hdparm -c3 -u1 -d1 -m0 /dev/hdc
分别为采用32位模式,响应其他中断,打开DMA模式,最后一个是扇区,估计是因为采用了自己的文件系统,内部有优化,所以关闭这个特性
-X因为大多数/全部现代 IDE 驱动器默认它们最快的 PIO 传输模式为打开. 所以摆弄它是没有必要的也是冒险的.
比较有用的参数如下:
Hdparm命令的一些常用的其他参数功能
-g 显示硬盘的磁轨,磁头,磁区等参数。
-i 显示硬盘的硬件规格信息,这些信息是在开机时由硬盘本身所提供。
-I 直接读取硬盘所提供的硬件规格信息。
-p 设定硬盘的PIO模式。
-Tt 评估硬盘的读取效率和硬盘快取的读取效率。
-u <0或1> 在硬盘存取时,允许其他中断要求同时执行。
-v 显示硬盘的相关设定。
尤其是
[root@ME_90_146 rss]# hdparm -Tt /dev/hda
/dev/hda:
Timing buffer-cache reads: 128 MB in 0.20 seconds =624.39 MB/sec
Timing buffered disk reads: 64 MB in 1.39 seconds = 45.94 MB/sec
[root@ME_90_146 rss]#
[root@ME_90_146 rss]# hdparm /dev/hda
/dev/hda:
multcount = 0 (off)
IO_support = 3 (32-bit w/sync)
unmaskirq = 1 (on)
using_dma = 1 (on)
keepsettings = 0 (off)
readonly = 0 (off)
readahead = 8 (on)
geometry = 30401/255/63, sectors = 488397168, start = 0
Reference:
1,Linux通用系统优化
http://blog.chinaunix.net/u/19412/showart_185301.html使用hdparm改善Linux系统性能
如
果你的Linux系统运行于IDE硬盘,可以使用hdparm工具来提高磁盘I/O的性能。不过使用hdparm要小心,因为可能破坏硬盘上的数据。所以
在使用hdparm之前,仔细阅读你的硬盘手册。根据你具体的硬盘规格来使用相应的hdparm开关参数。对一块UltraATA/66
EIDE 硬盘,其控制芯片支持多 PIO 模式和DMA,我们使用以下命令来调谐磁盘性能:
# /sbin/hdparm -x66 -d1 -u1 -m16 -c3 /dev/hda
选项说明:
① c3 :就是把硬盘的16位格式转换为32位模式(32-bit mode w/sync)。控制数据如何从pci总线传递到控制器。
② m16 :改变硬盘的多路扇区的读功能,-m16可以使得硬盘在一次i/o中断中读入16个扇区的数据(据具体硬盘而定)。
③ d1:打开DMA模式。
④ x66 :在支持UDMA-capable的硬盘中,这个参数可以支持双DMA通道的数据传输模式。
⑤ u1 :Linux在处理磁盘中断时,可以unmask其他的中断或者响应其他中断相关的任务。
查看以上的更改情况可以使用命令:
# /sbin/hdparm /dev/hda
测试磁盘I/O性能可以使用命令:
# /sbin/hdparm -tT /dev/hda
如果磁盘的性能有改进的话,可以使用以下命令来保存设置:
# /sbin/hdparm -k1 /dev/had
阅读(699) | 评论(0) | 转发(0) |