[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: growisofs will not write at 8x with NEC 3540A

Joerg Schilling <schilling@fokus.fraunhofer.de> writes:

>> NEC has introduced a new feature with the 3540A model: When too many 
>> buffer underruns occur, it reduces the write speed. I can, on Windows 
>> XP, reproduce the problem that too many buffer underruns occur on this 
>> drive when using cdrecord-prodvd at 8x speed, so that it falls back to 
>> 6x speed right after the zone change to 8x.
> As cdrecord meters the max DMA speed before accepting a write speed,
> it seems to be unlikely that there are many buffer underruns.

cdrecord cannot predict the future system load, if the DMA check runs
while the computer is idle, and it gets under I/O load while writing,
all bets are off. Plus, I/O load is much nastier than regular CPU load,
as it causes processes to go into D state, deep, uninterruptible,
in-kernel sleep. Real-Time scheduling on non-Real-Time OS doesn't help
with that.

I've seen buffer underruns on a really fast machine (Athlon XP 2500+, 1
GB RAM, DMA speed around 28 MB/s) when a couple of mail virus scanners
descended on incoming messages and started reading their virus
definition files.

cdrecord was running as root, i. e. with RT priority, mlocked pages and
everything. OK, it was Linux, not FreeBSD or Solaris...

In this context: what's the difference between "10 predicted buffer
underruns" and "burnproof was 1x used"?

Matthias Andree

Reply to: