开启硬盘 DMA 支持。
系统安装完毕後,硬盘的 DMA 是没有打开的,我的方法是在
/etc/rc.d/rc.local 最後面加上一行 /sbin/hdparm -d1 -c3 -m16 /dev/hda,注:我的硬盘是sda, 这样每次开机後,硬盘的 DMA 就会开启,不必每次手动设定。
如果您的硬盘机支持 ATA33 可以加上 -X66 这个参数,ATA66则是 -X68,像我的硬盘是 ATA66 那麽完整参数就是 /sbin/hdparm -d1 -X68 -c3 -m16 /dev/hda 经过我的测试 ,在 DMA 未开启以前,实际读取效率是每秒约 4.10 Mb 左右,开启 DMA 後,每秒实际读取效率跃升为 20 Mb 大约提升 5 倍之多。
§未开启 DMA 时的测试
[root@firefly /root]# hdparm -d0 /dev/hda
/dev/hda:
setting using_dma to 0 (off)
using_dma = 0 (off)
[root@firefly /root]# hdparm -Tt /dev/hda
/dev/hda:
Timing buffer-cache reads: 128 MB in 2.75 seconds = 46.55 MB/sec
Timing buffered disk reads: 64 MB in 15.58 seconds = 4.11 MB/sec
§开启 DMA 後的测试结果
[root@firefly /root]# hdparm -d1 -X68 -c3 -m16 /dev/hda
/dev/hda:
setting 32-bit I/O support flag to 3
setting multcount to 16
setting using_dma to 1 (on)
setting xfermode to 69 (UltraDMA mode5)
multcount = 16 (on)
I/O support = 3 (32-bit w/sync)
using_dma = 1 (on)
[root@firefly /root]# hdparm -Tt /dev/hda/dev/hda:
[root@BTazuo d]# /sbin/hdparm -Tt /dev/sda
/dev/sda:
Timing cached reads: 958 MB in 2.00 seconds = 478.53 MB/sec
Timing buffered disk reads: 168 MB in 3.00 seconds = 55.93 MB/sec
[root@BTazuo d]#
由以上的数据,可以看得出来,硬盘 DMA 是否开启,对读取效率影响很大。
系统安装完毕後,硬盘的 DMA 是没有打开的,我的方法是在
/etc/rc.d/rc.local 最後面加上一行 /sbin/hdparm -d1 -c3 -m16 /dev/hda,注:我的硬盘是sda, 这样每次开机後,硬盘的 DMA 就会开启,不必每次手动设定。
如果您的硬盘机支持 ATA33 可以加上 -X66 这个参数,ATA66则是 -X68,像我的硬盘是 ATA66 那麽完整参数就是 /sbin/hdparm -d1 -X68 -c3 -m16 /dev/hda 经过我的测试 ,在 DMA 未开启以前,实际读取效率是每秒约 4.10 Mb 左右,开启 DMA 後,每秒实际读取效率跃升为 20 Mb 大约提升 5 倍之多。
§未开启 DMA 时的测试
[root@firefly /root]# hdparm -d0 /dev/hda
/dev/hda:
setting using_dma to 0 (off)
using_dma = 0 (off)
[root@firefly /root]# hdparm -Tt /dev/hda
/dev/hda:
Timing buffer-cache reads: 128 MB in 2.75 seconds = 46.55 MB/sec
Timing buffered disk reads: 64 MB in 15.58 seconds = 4.11 MB/sec
§开启 DMA 後的测试结果
[root@firefly /root]# hdparm -d1 -X68 -c3 -m16 /dev/hda
/dev/hda:
setting 32-bit I/O support flag to 3
setting multcount to 16
setting using_dma to 1 (on)
setting xfermode to 69 (UltraDMA mode5)
multcount = 16 (on)
I/O support = 3 (32-bit w/sync)
using_dma = 1 (on)
[root@firefly /root]# hdparm -Tt /dev/hda/dev/hda:
[root@BTazuo d]# /sbin/hdparm -Tt /dev/sda
/dev/sda:
Timing cached reads: 958 MB in 2.00 seconds = 478.53 MB/sec
Timing buffered disk reads: 168 MB in 3.00 seconds = 55.93 MB/sec
[root@BTazuo d]#
由以上的数据,可以看得出来,硬盘 DMA 是否开启,对读取效率影响很大。