home *** CD-ROM | disk | FTP | other *** search
/ PC World 1999 June / PCWorld_1999-06_cd.bin / Hardware / Drivers / h2bench / LIESMICH.TXT < prev    next >
Text File  |  1999-01-20  |  16KB  |  328 lines

  1. H2bench -- by Harald Bögeholz / c't Magazin für Computertechnik
  2. Copyright (C) 1999 Verlag Heinz Heise GmbH
  3. ===============================================================
  4.  
  5.  
  6. H2bench läuft unter DOS und greift direkt über das BIOS auf die
  7. Festplatte zu. Um unsere Messungen nachvollziehen zu können, müssen
  8. Sie DOS ohne irgendwelche Cacheprogramme und nur mit den unbedingt
  9. notwendigen Treibern booten. Wenn Sie einen SCSI-Adapter von NCR oder
  10. Symbios Logic einsetzen und das SDMS-BIOS Version 3 haben, brauchen
  11. Sie den Doscam-Treiber, ohne den die Platten nur im langsameren
  12. Asynchronmodus des SCSI-Busses betrieben würden. 
  13.  
  14. Bei EIDE-Platten hängt es vom BIOS des EIDE-Adapters ab, ob ein
  15. Treiber erforderlich ist. Das BIOS unseres mittlerweile etwas betagten
  16. Testsystems (Asus P/I-P55TP4XE) erreicht auch ohne Treiberhilfe die
  17. volle Performance. Bei den meisten Pentium-Pro- und
  18. Pentium-II-Systemen ist das jedoch anders, da das weit verbreitete
  19. Award-BIOS die EIDE-Schnittstelle nicht mit voller Geschwindigkeit
  20. ansprechen an (siehe auch unten im FAQ-Abschnitt). Wenn der Hersteller
  21. eines solchen Boards einen busmasterfähigen DOS-Treiber für die
  22. EIDE-Schnittstelle mitliefert, sollten Sie diesen installieren.
  23.  
  24. In den DOS-Boxen von Windows, Windows 95/98/NT oder OS/2 liefert
  25. H2bench keine zuverlässigen Ergebnisse. Ebenso würden Treiber wie
  26. Emm386, die den Prozessor im virtuellen 8086-Modus betreiben, die
  27. Messungen verfälschen und sollten daher weggelassen werden.
  28.  
  29. H2bench erwartet auf der Kommandozeile die Nummer der zu testenden
  30. Festplatte sowie Optionen, die die durchzuführenden Tests festlegen.
  31. Ein Aufruf ohne Parameter liefert einen kurzen Hilfstext. Alle
  32. Optionen müssen als Kleinbuchstaben angegeben werden; die Reihenfolge
  33. ist beliebig. Der wichtigste Parameter ist die Nummer der zu testenden
  34. Festplatte. Die erste physikalische Platte hat die Nummer 0, die
  35. nächste die Nummer 1 und so weiter. Gibt man auf der Kommandozeile nur
  36. die Plattennummer ohne Optionen an, so zeigt H2bench die Geometrie
  37. (Zylinder, Köpfe, Sektoren) und die Kapazität der Platte an. Wenn
  38. mehrere Platten im Rechner sind, empfiehlt es sich, H2bench zunächst
  39. einmal nur so aufzurufen, um sicherzustellen, daß man die richtige
  40. Platte trifft.
  41.  
  42. Da H2bench unter Umgehung der Partitionierung direkt auf die Platte
  43. zugreift, würden beim Beschreiben der Platte alle Daten verlorengehen.
  44. Daher führt er alle Benchmarks normalerweise nur lesenderweise durch.
  45. Erst die Option "-!" aktiviert auch die Schreibmessungen. Diese
  46. wiederum funktionieren aus Sicherheitsgründen nur, wenn keine
  47. Partitionen auf der Platte sind.
  48.  
  49. H2bench hat vier Komponenten: Die Messung der Interface-Transferrate,
  50. die Zonenmessung, die Hdbench-Messung und die Messung der mittleren
  51. Zugriffszeit (Seek). Die Option "-c <n>" (-c steht aus historischen
  52. Gründen für "Coretest") veranlaßt die Messung der
  53. Interface-Transferrate bei <n> % der Kapazität der Platte.
  54. Üblicherweise gibt man hier 0 an, da die meisten Festplatten dort am
  55. schnellsten sind.
  56.  
  57. Die Option "-z" aktiviert die Zonenmessung, "-s" die Seek-Messung. Die
  58. Hdbench-Messung kombiniert Lese- und Schreibzugriffe mit verschiedenen
  59. Blockgrößen in einem 6 MByte großen Bereich der Platte. Die Option "-h
  60. <n>" veranlaßt diese Messung bei <n> % der Kapazität der Platte (die
  61. Leerstelle zwischen -h und <n> ist wichtig). Wir führen die
  62. Hdbench-Messung grundsätzlich in der schnellsten Medienzone durch, die
  63. bei den allermeisten Festplatten ganz außen, also bei 0 % der
  64. Kapazität liegt.
  65.  
  66. Mit der Option "-ha" sucht sich H2bench die schnellste Medienzone
  67. selbst. Dazu führt das Programm zunächst die Zonenmessung durch und
  68. legt dann die Hdbench-Zone an Hand der ermittelten Leseraten fest. Da
  69. es die Schreibrate für die Wahl der schnellsten Zone nicht
  70. berücksichtigt, kann es in seltenen Fällen passieren, daß es die
  71. "falsche" Zone wählt, so zum Beispiel bei bestimmten EIDE-Platten von
  72. Western Digital. Bei der AC21600 bricht die Schreibrate im
  73. Außenbereich stark ein, der gewichtete Mittelwert beträgt nur 2,95
  74. MByte/s. Mißt man dagegen bei 20 % der Kapazität, wo die Schreibrate
  75. in Ordnung ist, so schafft sie respektable 3,39 MByte/s. Die Option
  76. "-a" schließlich führt alle vier Teilmessungen durch; sie entspricht
  77. der Kombination von "-c", "-z", "-ha" und "-s".
  78.  
  79. Die Option "-w <Dateiname>" legt einen <Dateinamen> für das
  80. Abspeichern der Ergebnisse fest. Der angegebene Name darf keine
  81. Extension enthalten, da das Programm diese selbst anhängt. H2bench
  82. erzeugt zwei Ergebnisdateien mit den Extensions ".txt" und ".ps". Die
  83. Die .txt-Datei ist eine ASCII-Datei, die im vorderen Teil die
  84. Ergebnisse im Klartext zusammenfaßt. Der hintere Teil enthält die
  85. Detailergebnisse der Hdbench-Messung und der Zonenmessung. Vorsicht:
  86. Die Zonenmessung hat für Lesen und Schreiben jeweils bis zu 1000
  87. Meßpunkte. Die Ergebnisse stehen jeweils in einer eigenen Zeile, um
  88. die Auswertung mit anderen Programmen zu ermöglichen. Bevor Sie auf
  89. die Idee kommen, die .txt-Datei auszudrucken, sollten Sie mit einem
  90. Texteditor den hinteren Teil der Datei abschneiden, da Sie sonst über
  91. 30 Seiten "Zahlenmüll" zu Papier bringen.
  92.  
  93. Für den Ausdruck ist die .ps-Datei gedacht. Sie enthält alle
  94. Meßergebnisse auf einer DIN-A4-Seite zusammengefaßt im
  95. PostScript-Format. Besitzer eines PostScript-Druckers können die Datei
  96. einfach so zum Drucker schicken, beispielsweise mit dem DOS-Befehl
  97.  
  98. copy /b Dateiname.ps prn
  99.  
  100. Wer über einen weniger edlen Drucker verfügt oder die Ergebnisse am
  101. Bildschirm betrachten möchte, kann den Freeware-Interpreter
  102. GhostScript beziehungsweise das Programm GhostView zur Anzeige
  103. benutzen. Die Programme sind für praktisch alle Betriebssysteme
  104. verfügbar und stehen unter anderem in der c't-Mailbox zum kostenlosen
  105. Download bereit.
  106.  
  107. Zu Dokumentationszwecken dienen die folgenden Optionen: "-tt", gefolgt
  108. von der Bezeichnung der Festplatte (in Anführungszeichen), legt den
  109. "Titel" des Tests fest. Entsprechend gibt es "-tb" für das BIOS, "-tc"
  110. für die CPU, "-tm" für das Motherboard und "-ta" für den verwendeten
  111. (SCSI- oder EIDE-) Adapter. Da letztere Komponenten häufig
  112. gleichbleiben, kann man die Angaben auch in Environment-Variablen
  113. unterbringen, zum Beispiel per SET-Befehl in der Autoexec.bat. Die
  114. entsprechenden Variablen heißen H2btitle, H2bbios, H2bcpu, H2bboard
  115. und H2badapter und kommen dann zum Zuge, wenn auf der Kommandozeile
  116. keine antsprechenden Angaben vorliegen.
  117.  
  118. Meist braucht man beim Test dann nur noch den Namen der Festplatte
  119. anzugeben. Ein typischer Aufruf lautet beispielsweise
  120.  
  121. h2bench 0 -a -! -tt "Festplatte 42" -w 42
  122.  
  123. Dies führt mit der ersten am Rechner angeschlossenen Festplatte alle
  124. Messungen durch und speichert die Ergebnisse in den beiden Dateien
  125. "42.txt" und "42.ps".
  126.  
  127.  
  128. Platten über 8 GByte
  129. ====================
  130.  
  131. Ab Version 2.3 kann H2bench neuere BIOS-Funktionen (INT 13h,
  132. Funktionen AH=41h bis 49h) benutzen, um Platten mit mehr als 8 GByte
  133. anzusprechen. Bei Angabe der Option -e nutzt H2bench diese
  134. BIOS-Erweiterungen, falls vorhanden. Wenn sie nicht vorhanden sind
  135. oder nicht richtig funktionieren, erhalten Sie eine Fehlermeldung. Die
  136. Warnung "!!! Warnung: Blockgröße laut Phoenix-EDD-Spec 1.1
  137. unzulässig", die bei aktivierten BIOS-Extensions auftritt, können Sie
  138. getrost ignorieren, falls keine weiteren Fehler auftreten (siehe unten
  139. im FAQ-Abschnitt).
  140.  
  141.  
  142. Platten über 32 GByte
  143. =====================
  144.  
  145. H2bench-Versionen vor 2.26 hatten einen Fehler, der bei Platten über
  146. 32 GByte zu Abstürzen oder fehlerhaften Meßergebnissen bei der
  147. Dauertransferrate Schreiben führen konnte. Bitte verwenden Sie die
  148. alten Versionen nicht mehr und löschen Sie sie. Wenn Sie irgendwo eine
  149. veraltete H2bench-Version entdecken, informieren Sie bitte den
  150. Besitzer oder Anbieter über diesen Fehler.
  151.  
  152.  
  153. Sprachoptionen
  154. ==============
  155.  
  156. H2bench "spricht" derzeit drei Sprachen: Deutsch, Englisch und
  157. Holländisch. Die Kommandozeilenoption "-deutsch" wählt deutsche Texte,
  158. die Option "-english" englische und die option "-nederlands"
  159. holländische.
  160.  
  161. Über die Environment-Variable H2BLANGUAGE läßt sich die Sprache
  162. voreinstellen, um sich die Angabe der entsprechenden
  163. Kommandozeilenoption zu ersparen. Zweckmäßigerweise setzt man sie über
  164. eine SET-Anweisung in der Datei Autoexec.bat. Beispiele:
  165.  
  166. SET H2BLANGUAGE=deutsch     für Deutsch
  167.  
  168. SET H2BLANGUAGE=english     für Englisch
  169.  
  170. SET H2BLANGUAGE=nederlands  für Holländisch
  171.  
  172.  
  173. Fragen
  174. ======
  175.  
  176. Fragen zu H2bench richten Sie bitte per EMail (in deutscher oder
  177. englischer Sprache) an bo@ct.heise.de. Ich werde mir erlauben, Fragen,
  178. die in den untenstehenden FAQ beantwortet sind, zu ignorieren.
  179.  
  180.  
  181. FAQ:
  182. ====
  183.  
  184. ?  Der Benchmark H2bench bricht immer mit einem Lesefehler ab.
  185.  
  186. :  Wenn physikalische Defekte vorliegen, kann die aktuelle Version von
  187.    H2bench die Dauertransferraten nicht messen. Mit der Option "-h x"
  188.    können Sie aber immerhin noch die Hdbench-Messung in einem intakten
  189.    Bereich der Platte durchführen.
  190.  
  191.  
  192. ?  Beim Aufruf des Festplatten-Benchmarks H2bench erhalte ich immer
  193.    die Fehlermeldung, daß der Timer nicht monoton laufe, und das
  194.    Programm bricht ab.
  195.  
  196. :  H2bench liest den Timer direkt aus, um mikrosekundengenaue
  197.    Zeitmessungen durchführen zu können. Bei manchen Chipsätzen ist
  198.    der Systemtimer fehlerhaft: die hinteren Bits "hoppeln" und laufen
  199.    nicht immer monoton. Betroffen ist zum Beispiel der I/O-Baustein
  200.    82378IB des Mercury/Neptun-Chipsatzes. Siehe dazu auch c't 10/95,
  201.    S. 334.
  202.  
  203.    Das verfälscht natürlich die Zeitmessungen, weswegen H2bench
  204.    zunächst den Timer überprüft. Mit der Option "-Tnocheck" können Sie
  205.    die Überprüfung des Timers unterdrücken, nicht aber den Bug.
  206.    H2bench müßte dann zwar im großen und ganzen auch richtige Werte
  207.    liefern, aber verlassen kann man sich darauf nicht. Wunden Sie sich
  208.    daher nicht, wenn Sie ab und zu mal einen negativen Wert in der
  209.    Hdbench-Messung erhalten.
  210.  
  211.  
  212. ?  Bei Angabe der Option "-e" erhalte ich die Meldung "!!! Warnung:
  213.    Blockgröße laut Phoenix-EDD-Spec 1.1 unzulässig".
  214.  
  215. :  Die Bios-Extensions, die H2bench benutzt, wurden von Phoenix
  216.    spezifiziert. In dieser Spezifikation steht, daß man mit einem
  217.    Aufruf maximal 127 Sektoren gleichzeitig übertragen darf. H2bench
  218.    arbeitet jedoch bei der Zonenmessung mit einer Blockgröße von 128
  219.    Sektoren, was mit den bisher zum Test benutzten SCSI-Adaptern von
  220.    Symbios Logic und Adaptec und dem Promise Ultra33 auch einwandfrei
  221.    funktioniert. Die von H2bench ausgegebene Warnmeldung soll auf
  222.    diesen Sachverhalt hinweisen. Es gibt Adapter (z.B. Promise
  223.    FastTrack), deren BIOS sich genau nach Spezifikation verhält und
  224.    Transfers von 128 Sektoren verweigert. Auf solchen Adaptern
  225.    funktionieren dann Zonenmessung und die Messung der
  226.    Interface-Transferrate nicht, wenn die Option -e benutzt wird.
  227.  
  228.  
  229. ?  Ich kann Ihre Messungen nicht nachvollziehen: Mit meiner
  230.    SCSI-Platte erhalte ich wesentlich niedrigere
  231.    Datenübertragungsraten beim Schreiben als Sie.
  232.  
  233. :  Wir schalten bei SCSI-Platten für unsere Messungen grundsätzlich
  234.    den Schreibcache ein. Ohne diesen erzielen die Platten beim
  235.    Schreiben nur die halbe Übertragungsrate wie beim Lesen. Von
  236.    Seagate gibt es dazu ein kleines Programm, das auch mit Festplatten
  237.    anderer Hersteller funktioniert, vorausgesetzt, Sie benutzen einen
  238.    ASPI-Treiber. Sie finden es auf
  239.    http://www.heise.de/ct/ftp/spezial.shtml oder in der c't-Mailbox
  240.    unter dem Namen Aspiid15.zip. SCSI-Platten merken sich die
  241.    Einstellung für den Schreibcache dauerhaft -- es genügt also, ihn
  242.    einmal mit diesem Programm einzuschalten.
  243.  
  244.  
  245. ?  Ich habe Version 2.15 und Version 2.3 von H2bench. Welche ist
  246.    neuer?
  247.  
  248. :  Die Nummer nach dem Punkt ist nicht als Dezimalbruch sondern als
  249.    fortlaufende Nummer zu verstehen. Nach 2.9 kam also 2.10 (zwei
  250.    punkt zehn), danach 2.11 und so weiter. Die am 20. Januar 1999
  251.    aktuelle Version hat die Nummer 2.26.
  252.  
  253.  
  254. ?  Meine Festplatte erzielt an der Onboard-EIDE-Schnittstelle meines
  255.    Pentium-II-Boards eine maximale Übertragungsrate von etwa 7
  256.    MByte/s, obwohl sie laut c't-Testbericht wesentlich schneller sein
  257.    sollte. An einem älteren Pentium-System bringt sie dagegen die
  258.    volle Leistung.
  259.  
  260. :  Der Bremsklotz ist die IDE-Schnittstelle Ihres Boards, genauer
  261.    gesagt das BIOS. Neben dem klassischen PIO-Mode (Programmed I/O,
  262.    die CPU holt jedes Datenwort einzeln von der Schnittstelle ab und
  263.    schreibt es in den Speicher) können die Onboard-IDE-Schnittstellen
  264.    gängiger Boards auch als PCI-Busmaster arbeiten und direkt auf den
  265.    Hauptspeicher zugreifen. Diese Betriebsart ist vor allem für
  266.    multitaskingfähige Betriebssysteme sinnvoll, da sie die CPU
  267.    entlastet: Während die IDE-Schnittstelle Daten überträgt, kann sich
  268.    der Prozessor mit anderen Dingen beschäftigen.
  269.  
  270.    Bei allen bisher verfügbaren Pentium-Pro- und Pentium-II-Chipsätzen
  271.    ist die IDE-Schnittstelle im PIO-Betrieb deutlich langsamer als mit
  272.    Busmastering. Dummerweise haben sich die Programmierer des weit
  273.    verbreiteten Award-BIOS jedoch nicht die Mühe gemacht, Busmastering
  274.    zu implementieren. Selbst Ultra-DMA-fähige IDE-Platten betreibt das
  275.    Award-BIOS im PIO-Mode, obwohl es beim Booten "UDMA" meldet. Nur
  276.    bei einigen wenigen Boards, deren BIOS von einem anderen Hersteller
  277.    stammt, erreicht die IDE-Schnittstelle ohne Treiber die volle
  278.    Leistung.
  279.  
  280.    Dieser Mangel des Award-BIOS wirkt sich nur auf DOS beziehungsweise
  281.    DOS-basierte Benchmarks wie H2bench aus. Andere Betriebssysteme
  282.    umgehen das BIOS und greifen über eigene Treiber auf die Festplatte
  283.    zu. Wenn diese Treiber Busmastering nutzen, sind keine
  284.    Geschwindigkeitseinbußen zu befürchten. Informationen rund um
  285.    Busmastering sowie Treiber finden Sie auf http://www.bmdrivers.com.
  286.  
  287.    Die Firma Triones vertreibt einen busmasterfähigen DOS-Treiber für
  288.    den LX- oder BX-Chipsatz. Manche Boardhersteller (z.B. Gigabyte)
  289.    legen diesen Treiber ihren Boards bei. Mit ihm erzielt H2bench die
  290.    volle Performance. Ohne einen solchen Treiber eignen sich LX- oder
  291.    BX-Boards mit Award-BIOS bis auf weiteres nicht für
  292.    Performancemessungen mit H2bench.
  293.  
  294.  
  295. ?  Meine Festplatte erzielt am Asus P/I-P55TP4XE nur eine
  296.    Dauertransferrate von ca. 6,3 MByte/s, obwohl sie laut
  297.    c't-Testbericht wesentlich schneller sein sollte. Inzwischen habe
  298.    ich die Platte ein paar Tage benutzt und die Messung wiederholt,
  299.    und siehe da: jetzt erreicht sie plötzlich die volle Leistung. Wie
  300.    kann das sein?
  301.  
  302. :  Das kann am BIOS liegen. Manche BIOS-Versionen, wie zum Beispiel
  303.    die Version 0203 für das Asus P/I-P55TP4XE, verhalten sich mit
  304.    jungfräulichen beziehungsweise durch H2bench gelöschten Festplatten
  305.    anders als mit solchen, die schon einmal partitioniert waren. Die
  306.    Ursache liegt in einem Algorithmus, den die BIOS-Entwickler für den
  307.    Fall erfunden haben, daß der Anwender die Onboard-IDE-Schnittstelle
  308.    abschaltet und einen anderen IDE-Adapter verwendet.
  309.  
  310.    Das BIOS versucht zunächst herauszufinden, ob der IDE-Adapter mit
  311.    32-Bit-Zugriffen zurechtkommt. Dazu liest es den ersten Sektor der
  312.    Festplatte, den Master Boot Record, zunächst mit 16-Bit-Zugriffen
  313.    ein. Wenn dieser eine gültige Partitionstabelle enthält (zu
  314.    erkennen an der Signatur 0aa55h in den letzen beiden Bytes), liest
  315.    es anschließend denselben Sektor mit 32-Bit-Zugriffen ein und
  316.    überprüft, ob der Inhalt identisch ist. Nur wenn das der Fall ist,
  317.    arbeitet es fortan mit 32-Bit-Zugriffen. Enthält die
  318.    Partitionstabelle dagegen von vornherein ungültige Daten, so bleibt
  319.    das BIOS vorsichtshalber bei den mit jedem IDE-Adapter kompatiblen
  320.    16-Bit-Zugriffen, was die Übertragungsrate auf 6 bis 7 MByte/s
  321.    begrenzt.
  322.  
  323.    Führen Sie daher sicherheitshalber vor der Messung mit H2bench den
  324.    Befehl 'Fdisk /mbr' aus, um die für das BIOS erforderliche Signatur
  325.    in den Master Boot Record schreiben. Nach einem Neustart läuft die
  326.    IDE-Schnittstelle dann garantiert in der schnelleren
  327.    32-Bit-Betriebsart.
  328.