home *** CD-ROM | disk | FTP | other *** search
/ Game Help / GameHelpVolume1_1994 / GAMEHELP.ISO / divutil / cmess / cmess.doc next >
Encoding:
Text File  |  1994-03-10  |  3.3 KB  |  88 lines

  1. Ursprüngliche Aufgabe von CMESS war es, bei
  2. Write-Back-Caches das Vorhandensein oder Fehlen des
  3. sogenannten Dirty-Tags zu ermitteln. Die Rechner laufen
  4. auch ohne dieses zusätzliche SRAM, aber langsamer (insbesondere
  5. unter OS/2, NT, Linux, NextStep ..).
  6.  
  7. Daneben eignet sich CMESS hervorragend, um die Performance
  8. des Datenflusses der CPU/Cache/Hauptspeicher-Implementation zu
  9. bestimmen. CMESS schlüsselt auf, ob Cache Hits oder
  10. Cache Misses, Dirty- oder Clean-Zugriffe
  11. vorliegen und bestimmt mit einer durch Simulation gewonnenen
  12. Gewichtung einen Mittelwert für typische DOS- (640 KB) und
  13. Windows-Anwendungen (4 MByte).
  14.  
  15. Für die Schreibzugriffe benötigt CMESS sehr viel Heap
  16. (2*L1-Cachesize + 1* L2-CacheSize). 486er mit externem
  17. L2-Cache von 512 KB brauchen daher einen Heap von 528 KB.
  18. Diese lassen sich somit nicht aus dieser Turbo-Vison-Shell heraus
  19. aufrufen, sondern nur auf der Kommando-Ebene und auch nur dann, wenn
  20. keine größeren Treiber (außer ggf. HIMEM.SYS) und TSRs eingebunden
  21. sind und DOS (ab Version 5.0) in der HMA weilt.
  22.  
  23. !! Voraussetzungen und Einschränkungen !!
  24.  
  25.  Caches nur bis max. 512 KByte
  26.  L2-Cache muß direct mapped sein
  27.  Interner Cache (486er, Pentium) muß eingeschaltet sein
  28.  keine aktiven Watchdog-Timer und SMM-Interrrupts
  29.  
  30.  
  31. Zur Messung ist der unbedingt der Real-Mode nötig! DOS-Boxen von
  32. Windows, OS/2, NT fallen daher aus, ebenso Memory Manager à la Qemm,
  33. Max und EMM386
  34.  
  35. Defaultmäßig stoppt CMESS den Transfer-Befehl REP MOVSB aus, der
  36. derzeit immer noch mit am häufigsten gebraucht wird.
  37. Version 1.0  veröffentlicht in c't 1/93
  38. Version 1.1  Fassung auf der Heft-Sammeldisk/Mailbox ct0193.zip
  39.              (Korrekturen dazu sieh c't 4/93 S.12)
  40. Version 1.3  Fassung auf der ctsi-Info-Disk V1.0
  41. Version 1.3a Weniger Trashing zwischen Meßcode und Daten
  42.              leicht geänderte Cache-Routine
  43.         1.3c Letzte Änderung war "Verschlimmbesserung", führte dazu, daß
  44.          in schnellen Systemen der L2-Cache auf die doppelte Größe
  45.          bestimmt wurde. Eine neue Änderung führt zu einer kürzeren
  46.          Meßschleife, so daß Timing-Unterschiede prozentual größer
  47.          und daher besser erkannt werden.
  48.          Gleichzeitig wurde für >486-Systeme die Diskriminate für
  49.          Write-Back-Erkennung von 1.1 auf 1.04 und für L2-Erkennung
  50.          von 1.2 auf 1.1 reduziert.
  51.  
  52.          Einbindung von iDX4. Dieser wurde von < V1.3c wg. der
  53.          16 KByte Cache als IBM486SCL/DLC  erkannt.
  54.  
  55. (veröffentlicht in Version 1.0 in c't 1/93)
  56.  
  57.  Name     : ctCM.exe
  58.  DOS      : ab DOS 3.x
  59.  Proz     : ab 386SX
  60.  Parameter: [Transfertyp][Timer][Cachegröße]
  61.  
  62.   Transfertyp:
  63.           MOVSB   (Default),
  64.           MOVSW
  65.           MOVSD
  66.           STOSB
  67.           STOSW
  68.           STOSD
  69.           LODSB
  70.           LODSW
  71.           LODSD
  72.  
  73. Timer:    T0     (Default) System-Timer 0
  74.           T1     Refresh-Timer 1 - ist exakter,
  75.                  kann aber zu Parity-Problemem führen
  76.                  !!! nicht für PS/2 !!!
  77.           T2     Timer 2
  78.  
  79. Cachegröße:
  80.           L1=xxx  in KB, übersteuert die ermittelte L1-Cachegröße
  81.           L2=xxx  in KB, übersteuert die ermittelte L2-Cachegröße
  82.  
  83. VideoTransfer:
  84.           Vid     Mißt Transfers von und zum Videospeicher
  85.                   (Default Videomodus = $13);
  86.           Vid=xxx Mißt im Videomodus xxx (dezimal) oder $XXX
  87.                   (hexadezimal)
  88.