home *** CD-ROM | disk | FTP | other *** search
/ The Datafile PD-CD 5 / DATAFILE_PDCD5.iso / utilities / c1 / cdspeed / !CDSpeed / !Help / Help7 < prev   
Encoding:
Text File  |  1996-11-24  |  5.2 KB  |  118 lines

  1. Hilfedatei für CDSpeed
  2.  
  3.  
  4. Autor: Peter Teichmann
  5.        Fritz-Löffler-Str.12/A010
  6.        01069 Dresden
  7.         
  8. Email: sol@mail.wh1.tu-dresden.de
  9.  oder: teich-p@rcs.urz.tu-dresden.de
  10.                         
  11. Das Programm darf frei kopiert werden, jedoch nur ohne irgend
  12. welche Dateien zu verändern.
  13. Der Zweck dieses Programms ist es, wie man sicher unschwer errät,
  14. CD-Rom-Laufwerke zu testen. Haftung für auftretende Schäden
  15. wird nicht übernommen. Man sollte vor dem Start sicherheitshalber
  16. alle noch nicht gespeicherten Daten sichern.
  17.  
  18. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  19. !!!!                                                         !!!!
  20. !!!! BEI EINEM ABSTURZ DES PROGRAMMS WÄHREND DES TESTS MUSS  !!!!
  21. !!!!      UNWEIGERLICH DER GANZE RECHNER ABSCHMIEREN.        !!!!
  22. !!!!                                                         !!!!
  23. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  24.  
  25. Das liegt daran, daß eine Timerinterrupt verbogen wird, und vor
  26. Programmende zurückgebogen werden muß, da sonst die Zieladresse
  27. nicht mehr existent ist! Beim Absturz ist das nicht
  28. gewährleistet.
  29.  
  30. Während des Test wird öfter mal der Wimp-Poll aufgerufen, wenn
  31. es möglich ist (wenn der Timer gerade nicht gebraucht wird).
  32. Das kann man nutzen, um durch Schließen des Fensters oder klicken
  33. auf Cancel den Test abzubrechen, falls er einem zu lange dauert.
  34.  
  35. Einige Beispieldateien befinden sich im Verzeichnis
  36. !CDSpeed.SpeedLog. Wer die von seinem Laufwerk auch dort sehen
  37. will, sollte sie mir zuschicken.
  38.  
  39. Technische Details:
  40.  
  41. Die Anzahl der angeschlossenen Laufwerke wird nicht über
  42. CDFS_GetNumberOfDrives ermittelt, da dieser Wert nur der konfigu-
  43. rierten Anzahl von  Laufwerken entspricht, was nicht unbedingt
  44. der Wahrheit entsprechen muß. Statt dessen wird auf jedem Lauf-
  45. werk beginnend bei 0 eine Operation ausgeführt, zu der keine CD
  46. nötig ist, im konkreten Fall wird geguckt, ob die Lade zu ist.
  47.  
  48. Die Zeitmessung geschieht mittels Timer auf 1/1000000 Sekunde
  49. genau. Gelesen wird mittels CD_ReadData.
  50.  
  51. Die Datentransferrate wird getestet, indem direkt vor der zu
  52. testenden Stelle erst mal 2 kB gelesen werden, um den Kopf
  53. schon dort hinzubewegen, und die Drehzahl anzupassen. Gleich
  54. danach werden nochmal 512 kB gelesen, dafür wird die Zeit
  55. gemessen und die Transferrate errechnet. Die Werte sind gut
  56. reproduzierbar und schwanken um weniger als 1%.
  57.  
  58. Die Cache-Transferrate wird gemessen, indem wieder vor der zu
  59. testenden Stelle 2 kB gelesen werden. Dann wird etwas länger
  60. gewartet, als das Laufwerk brauchen würde, um einen vorhandenen
  61. Read-Ahead-Cache soweit zu füllen, wie der zu übertragende
  62. Block groß ist. Danach wird dieser Block gelesen, und die Zeit
  63. gemessen. Das wird in 16-kB-Schritten bis maximal 512 kB Block-
  64. größe getan, und der Maximalwert wird ausgegeben.
  65.  
  66. Die durchschnittliche Zugriffszeit wird ermittelt, indem von 100
  67. zufällige Positionen auf der CD 2kB gelesen werden. Dafür wird
  68. die Zeit gemessen und durch 100 geteilt. Es wird nicht nur der
  69. Kopf bewegt, da dies zu unrealistisch kurzen Zugriffszeiten
  70. führt. Die Zugriffszeit ist leider nicht sehr gut reproduzierbar,
  71. sie schwankt in einem bereich von bis zu 10%. Das läßt sich auch
  72. nicht verbessern, wenn man die Anzahl erhöht, Gott allein weiß
  73. warum.
  74.  
  75. Die nachfolgende Grafik gibt an, wie lange es vom CD-Anfang, vom
  76. Ende und von der Mitte dauert, bis der Kopf verschiedene
  77. Positionen angefahren hat. Diese Grafik schwankt auch ziemlich
  78. stark, wobei jedoch komischerweise oft der recht gut reproduzier-
  79. bare Fall auftritt, daß für kürzere Wege längere Zeiten be-
  80. nötigt werden. Sehr gut kann man auch erkennen, daß die Zugriffs-
  81. zeiten im CD-Inneren größer sind als im Äußeren.
  82.  
  83. Die letzte Grafik gibt an, welche Datentransferraten bei
  84. verschiedener CPU-Auslastung und Blockgröße erreicht werden.
  85. Das wird gemessen, indem Blöcke geladen werden, und danach eine
  86. gewisse Zeit gewartet wird, bis wieder der nächste Block geladen
  87. wird. Man gibt also dem Read-Ahead-Cache Zeit, sich zu füllen.
  88. im Prinzip hängt das also stark von der Cache-Transferrate ab.
  89. In der Praxis tritt dieser Fall etwa beim Abspielen von Replay-
  90. Filmen auf, wo in der Pause der Film entpackt und angezeigt
  91. wird. Die Grafik ist ziemlich gut reproduzierbar.
  92. Eigentümlich ist hier, daß z.B. beim Sony CDU-55S bei 128 kB
  93. Blockgröße bei 10% CPU-Last ein besserer Wert als bei 20%
  94. erzielt wird... Das ist auch immer reproduzerbar...
  95.  
  96. Der Index wird folgendermaßen berechnet:
  97.  
  98.                      5
  99.   ---------------------------------------------
  100.        150          150
  101.   ------------ + --------- + 0.006*Zugriffszeit
  102.   Transferrate   Cacherate
  103.   
  104.   
  105. Bei einem Singlespeed-Laufwerk mit 500ms mittlerer Zugriffszeit
  106. ohne Read-Ahead-Cache kommt der Faktor 1 heraus, mit einer
  107. Wichtung von Transferrate:Cacherate:Zugriffszeit=1:1:3.
  108.  
  109. Ein Laufwerk mit 500 ms Zugriffszeit kann nach dieser Formel
  110. nie einen Index größer als 1,67 haben, selbst wenn es ein
  111. zehnfach-Speed-Laufwerk sein sollte. Andererseits kann ein
  112. Laufwerk mit 150 kB Transferrate und 150 kB Cacherate nie
  113. einen Index größer als 2,5 bekommen, und wenn es eine Zugriffs-
  114. zeit von 10ms haben sollte. Man sieht also, daß die Zugriffs-
  115. zeit stärker in die Wichtung eingeht. Ich denke aber, daß das
  116. für den Archimedes mit seinen vielen kleinen Bootdateien durchaus
  117. gerechtfertigt ist.
  118.