Re: CDROM performance.

Kurt Garloff (garloff@kg1.ping.de)
Mon, 2 Mar 1998 23:53:25 +0100


On Wed, Feb 25, 1998 at 11:28:55AM +0100, Rogier Wolff wrote:
>
> I have a new 24x CDROM. The manual claims it can do 3500k per second.
>
> ...
>
> However at 280Mb, when the performance reaches around 2600 k per
> second, I get a "cloud" of data points, none above 2700k per second.
>
> Is there a kernel imposed speedlimit on CDROMs?

No, but the BIOS of your Mainboard normally puts your CDRom in a low PIO
mode, so you cannot take full advantage of the speed. This was reported by
the german computer magazine c't 10/97 p.196ff. They just got around 2.6
MB/s which is about what you did find.
On some boards (e.g. Asus P55TP4XE) you can force PIO mode 4 for the CDRom
and you will get full speed. On another boards (TX Chipset) this won't help
unless there's an IDE HD installed. The c't testers created a utility --
ctpio -- which should be downloadable (ftp://ftp.heise.de/ct) and heal the
problem. The mainboard creators are supposed to fix this problem, but I
don't know if this happened already.
I'll attach a small part of the article for reference.

However, I don't know, if the Linux IDE driver depends on the chipset
settings made by the BIOS. At least you should be able to modify the
settings using the hdparm utility. (hdparm -p4 -d1)

-- 
Kurt Garloff, Dortmund 
<K.Garloff@ping.de>
PGP key on http://student.physik.uni-dortmund.de/homepages/garloff

Some lines from c't 10/97, p.196: (Sorry, it's German and I won't translate) ---------------------------------------------------------------------------- Keines der Laufwerke erreichte zunächst die versprochene Transferrate von 24 ·150 KB/Sekunde = 3,6 MByte/Sekunde. Mit dem c't-Diagnosetool ctatbus4 gingen wir auf die Suche nach der verlorenen Zeit. Diese Version (4.4) des Programms mißt auch die mögliche Transferrate des Interfaces, die lag bei den CD-ROM-Drives aber bei maximal 2,6 MByte/Sekunde, egal, ob die Laufwerke am primären oder am sekundären EIDE-Kanal hingen, und es änderte auch nichts, wenn sie neben einer EIDE-Festplatte als Slave angeschlossen waren. Schallmauer Im BIOS war wie üblich für den PIO Mode Auto eingestellt. Erst als wir hier mit der Einstellung 4 den PIO Mode 4 erzwangen, konnten die Laufwerke ihre volle Datenrate ausspielen - jedenfalls am Testboard Asus P55TP4XE. Die Einstellung ist hierbei nur möglich ab der BIOS-Version 203. Bei einem neueren Board mit TTX-Chipsatz sah es schon wieder anders aus. Hier nützte die Einstellung im BIOS nichts, nur wenn eine EIDE-Platte installiert war, reichte die Transferrate über die 3-MByte-Marke. Wir lasen mit dem eigens zu diesem Zweck erstellten Programm ctpio die Register des EIDE-Controllers aus. Es zeigte sich, daß im entsprechenden Register kein Bit für einen höheren PIO-Mode gesetzt war, wenn der EIDE-Port nur mit CD-ROM-Laufwerk, ohne Platte bestückt war; es gilt dann Standard-Mode 0. Nach dem Setzen der entsprechenden Bits mit Hilfe von ctpio lief der Transfer im PIO Mode 4 ab. Bis die BIOS-Hersteller die Erkennung von schnellen CD-ROM-Drives und die entsprechende PIO-Mode-Einstellung nachgerüstet haben, können Sie sich mit unserem Tool ctpio behelfen. Es funktioniert nur mit Intels TX-Chipsatz und dem EIDE-Controllerchip PIIX4. Sie finden ctpio ebenso wie ctatbus4 in unserer Mailbox.

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu