On Nov 11, 2007, at 1:20 PM, Andresen, Jason R. wrote:

From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Joshua Isom

Redirected from freebsd-questions after no reply.

I currently have an SATA DVD-RW drive for my computer.  I have to boot

using a CURRENT kernel to get the drive recognized, and dmesg lists it

as running at 3.3MB/s.  Running mplayer -dumpstream gets around 3 megs

a second.  Copying off a data dvd gets about the same.  But I recall
reading about playing a dvd before trying to get the data off of it
when using dd, and it seems to work.  But the odd part is, it can get
up to 20 megabytes a second.  Does anyone know how to get the higher
speeds all the time?

What you're probably seeing is a feature of how modern optical drives
work.  Unlike the "4x" drives of old, the drive does not speed up or
slow down the disc based on the position of the head, instead they
maintain a fixed rotation speed.  Because of this, the pits on the edge
of the disc move much faster than the ones near the center of the disc.
As you write to the disc you will see your speed increase as the laser
gets closer to the edge.  Of course the drive manufacturers advertise
the speed of reading/writing the outermost track when selling the
drive.


I think you don't really notice some of the details. The kernel says the drive is only capable of 3.3M/s. Mplayer can dump a dvd at around 3.0M/s. If I "play" the dvd a little bit(just a few seconds), and then use dd to dump it, I can achieve three times the speed that the kernel says is possible. If I mount as UDF, I get around 3.0M/s. If I mount as cd9660, I get the higher speeds. I believe it is largely due to block size(too much time spent on read calls and protocols than reading data, as the speed can quickly triple when the reads are cut down to 10% of what they were).

It seems to me as though the fastest ways for FreeBSD to copy DVD are to use dd or mount_cd9660, or else wait an excruciatingly long time.

But, the drive is getting speeds far faster than the kernel lists it as capable of, and in gstat not even listing it as 100% busy. Here's a quick snapshot of gstat, using cp -R with the dvd mounted as cd9660.

dT: 1.002s  w: 1.000s  filter: ^[a-z]+[0-9]+$
 L(q)  ops/s    r/s   kBps   ms/r    w/s   kBps   ms/w   %busy Name
    0      0      0      0    0.0      0      0    0.0    0.0| ad0
    0      0      0      0    0.0      0      0    0.0    0.0| cd0
    0      0      0      0    0.0      0      0    0.0    0.0| acd0
    0    126      0      0    0.0    126  16096    1.6   19.9| ad4
    0      0      0      0    0.0      0      0    0.0    0.0| cd1
    1    250    250  15968    3.5      0      0    0.0   87.3| acd1

The drive is reading five times faster than I can achieve with mplayer or a udf filesystem, and five times faster than the kernel says is possible. Is the drive initially lieing about it's speed and somehow sending an updated speed that's not being reported? Here's the product page for the drive. http://www.liteonit.com/global/index.php? option=com_content&task=view&id=199&Itemid=67

_______________________________________________
freebsd-questions@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to