reduce interrupt rate for CD/DVD drive(r)
Jin Guojun [VFFS]
j_guojun at lbl.gov
Mon Aug 28 18:41:58 UTC 2006
Peter Jeremy wrote:
>On Sun, 2006-Aug-27 16:37:29 -0700, Jin Guojun [VFFS] wrote:
>
>
>>I have difficulty to get CD/DVD write speed above 1.6MB/s (10x for CD,
>>or 1.1x for DVD).
>>The problem seems to be the interrupt rate is high (70-80% of CPU) for
>>CD/DVD drive(r).
>>
>>
>
>Your drive is probably in PIO4 mode (due to there being bugs in the
>UDMA implementation on many drives). Check hw.ata.atapi_dma and
>"atacontrol mode acd0". You may find you can change to WDMA2 mode
>which will significantly reduce the interrupt and CPU load. You will
>need to do some experimenting with your drives to see what works for
>you.
>
>
Yes, this is the problem.
hw.ata.atapi_dma=1
but 6.1-R configures acd0 to PIO4.
"atacontrol mode acd0 WDMA2" makes acd0 into correct mode.
Under 4.11-R, things are complicated.
hw.ata.atapi_dma=1 makes boot process configure acd0 to UDMA2,
but Tx (I/O) rate limits at 1.6 MB/s. atacontrol will not help.
hw.ata.atapi_dma=0 makes boot process configure acd0 to PIO4,
and initial Tx rate is 1.6 MB/s. However, use atacontrol to change
mode to WDMA2, or UDMA2, or back to PIO4, Tx rate can go up
for a single I/O session or more , but not stable. In random time,
the Tx rate will drop back to 1.6 MB/s.
Since 6.1-R works, I would not think we need to worry about 4.11-R
for this issue.
Thanks for the information,
-Jin
More information about the freebsd-performance
mailing list