home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 8 Other / 08-Other.zip / dfb18c.zip / Read.Me < prev   
Text File  |  1997-02-09  |  14KB  |  295 lines

  1.  
  2.            DDDDDD    FFFFFFF  BBBBB
  3.            DDDDDDD   FFFFFFF  BBBBBBB
  4.            DD    DD   FF       BB   BB
  5.            DD    DD   FFFFF    BBBBB
  6.            DD    DD   FFFFF    BB   BB
  7.            DDDDDDD   FF       BBBBBBB
  8.            DDDDDD    FF       BBBBB
  9.  
  10.            Data Flow Benchmark V 1.8c
  11.  
  12.            (c) 1994,1995,1996,1997 by D.Engert
  13.  
  14.  
  15. 1. Legal stuff
  16.  
  17. There is no warranty. Use this software on your own risk. Due to the complexity
  18. and variety of today's hardware and software which may be used to run this
  19. program, I am not responsible for any damage or loss of data caused by use of
  20. this software. It was tested very well and is expected to work correctly, but
  21. nobody can actually guarantee this for any circumstances. And because this
  22. software is free, you get what you pay for ...
  23.  
  24. This program can be used freely for private or educational purposes. If you want
  25. to use it for commercial purposes or find any bugs or have suggestions about
  26. further enhancement, please contact the author.
  27.  
  28. DFB may be distributed freely. The current original DFB distribution archive
  29. only contains material, of which I am the exclusive owner of all rights (older
  30. archives contained SSMDD.SYS just to ease using DFB, but it's copyrighted by
  31. IBM and you should have it anyway).
  32.  
  33. In the last months, DFB appeared on several CD-ROMs. I don't mind this, if
  34. these CD-ROMS are made in the spirit of the freeware/shareware concept. I don't
  35. grant anybody the rights to raise money from DFB, so CD-ROMs or any other media
  36. containing DFB must be sold at a reasonable low prize to the end user, or DFB
  37. must be left out.
  38.  
  39. Author:  D. Engert
  40.      Gruentenweg 14
  41.      D-90471 Nuernberg
  42.      Germany
  43.  
  44. Fax:     +49-911-861319
  45. EMail:     2:2490/2576.1@fidonet
  46.      dengert@medav.de
  47.  
  48. 2. Purpose and intent of this program
  49.  
  50. Todays hardware gets more and more powerful but more complicated too. Modern
  51. motherboards using up to date chip sets may turn out to be very difficult to
  52. configure. And to make things worse, there are different manufacturers of CPU
  53. chips besides Intel now with new features and options. The memory subsystems
  54. implemented on these motherboards are even harder to configure, taking into
  55. consideration different cache strategies, RAM speeds and access modes.
  56.  
  57. Beyond the core of any computer system lay the peripherals (video, magnetic
  58. storage..) connected by a variety of bus implementations like ISA, EISA, VLB or
  59. PCI. Chip sets used on these peripherals are often of even higher complexity
  60. than the computer core.
  61.  
  62. Even skilled users are often overwhelmed by the sheer complexity and variety
  63. of options offered. Nobody will them the real power available to them by a
  64. given computer system using a particular configuration set. How should a user
  65. optimize his or her computer or how should a buyer choose between similar
  66. looking components based on hard facts ? May be this program will help you !
  67.  
  68.  
  69. 3. What will this program offer ?
  70.  
  71. Let's have a look on the output (framed) of the current version run on my own
  72. machine.
  73.  
  74. Machine configuration:
  75.  
  76.   ASUS P55TP4XE motherboard
  77.   Intel P54C-100 CPU,
  78.   Intel 'Triton' PCI/ISA chip set,
  79.   256 KByte synchronous pipelined burst cache RAM, 32 MByte of 60ns DRAM,
  80.   Diamond Stealth 64 VRAM video board, 2 MByte VRAM
  81.  
  82. All BIOS configuration settings are optimized for maximum throughput. That
  83. gives the following results:
  84.  
  85. +-----------------------------------------------------------------------------+
  86. |       Data flow benchmark v1.8                          |
  87. |                                          |
  88. |      copyright (c) 1994-1996 D.Engert                       |
  89. |                                          |
  90. | Processor         : Intel Pentium P54 (Fam:5 Mod:2 Rev:5)              |
  91. | Clock          : 99.6 MHz                           |
  92. | virtual Interrupts : present                              |
  93. | Coprocessor         : present                              |
  94. | Internal bus width : 32 bit between processor and primary cache          |
  95. | External bus width : 32 bit between primary and secondary cache          |
  96. | DRAM page size     : 4 KByte                              |
  97. | MMU cache         : 64 entries 2-way set associative, 4KByte per entry     |
  98. | Primary cache      : 8 KByte 2-way set associative                  |
  99. | Secondary cache    : 256 KByte direct mapped                      |
  100. | Cache line size    : 16 Bytes                           |
  101. | Cache strategy     : write back, no dirty tag, dirty extra waits: 0.0 clocks|
  102. +-----------------------------------------------------------------------------+
  103.  
  104. These figures are quite selfexplanatory. Type and speed of the CPU are detected,
  105. the width of the data paths between CPU core and primary cache - typically
  106. located on the same chip as the CPU core - and between the core or primary
  107. cache and the secondary cache (if present) or main memory.
  108. The program next tries to determine the effective page size, if page mode is
  109. implemented by the chip set. The following 3 lines show information about the
  110. address translation lookaside buffer (MMU cache), the primary and secondary
  111. cache. Size and associativity are checked, the length of a cache line is
  112. determined and the strategy used by the cache subsystem (write-through or write-
  113. back) is sensed.
  114.  
  115. +-----------------------------------------------------------------------------+
  116. |      Data flow and bus performance memory                      |
  117. |                                          |
  118. | --  Memory -> CPU  ---------                              |
  119. | Maximum 8K FETCH (Hits)     :    7.6µs (   756c) ->1071.2MB/s ( 0.09c/Byte) |
  120. |      8K FETCH (Miss+Hit) :   27.6µs (  2749c) -> 294.8MB/s ( 0.34c/Byte) |
  121. | Minimum 8K FETCH (Misses)   :   54.9µs (  5470c) -> 148.1MB/s ( 0.67c/Byte) |
  122. | Maximum 4K LODSD (Hits)     :   30.9µs (  3080c) -> 132.5MB/s ( 0.75c/Byte) |
  123. |      4K LODSD (Miss+Hit) :   43.9µs (  4371c) ->  93.3MB/s ( 1.07c/Byte) |
  124. | Minimum 4K LODSD (Misses)   :   67.7µs (  6741c) ->  60.5MB/s ( 1.65c/Byte) |
  125. | --  CPU -> Memory  ---------                              |
  126. | Maximum 4K STOSD (Hits)     :   10.8µs (  1079c) -> 378.2MB/s ( 0.26c/Byte) |
  127. | Minimum 4K STOSD (Misses)   :   45.8µs (  4561c) ->  89.4MB/s ( 1.11c/Byte) |
  128. | --  Memory -> Memory    ------                              |
  129. | Maximum 4K MOVSD (Hits)     :   10.6µs (  1051c) -> 388.0MB/s ( 0.26c/Byte) |
  130. |      4K MOVSD (Miss+Hit) :   63.3µs (  6301c) ->  64.7MB/s ( 1.54c/Byte) |
  131. |      4K MOVSD (Clean)    :   86.5µs (  8616c) ->  47.3MB/s ( 2.10c/Byte) |
  132. | Minimum 4K MOVSD (Misses)   :  112.2µs ( 11178c) ->  36.5MB/s ( 2.73c/Byte) |
  133. +-----------------------------------------------------------------------------+
  134.  
  135. These are the performance figures of the CPU <--> memory data path.
  136.  
  137. There are four disciplines:
  138.  - opcode fetch
  139.  - data load
  140.  - data store
  141.  - data move.
  142.  
  143. Depending on the discipline several scenarios are tested (denoted in paren-
  144. theses):
  145.  - hits in all memory caches (hits)
  146.  - hit in secondary cache, but not in primary (miss+hit)
  147.  - hit with replace in clean secondary cache, no write back necessary (clean)
  148.  - hit with replace in dirty secondary cache, write back carried out (dirty)
  149.  - misses in all caches (misses)
  150.  
  151. The first (hits) should give maximum performance down to the last (misses) with
  152. minimum speed.
  153.  
  154. The test transfer size depends on the cache and page sizes. In the case above
  155. it is 4 or 8KByte.
  156.  
  157. There are four result columns:
  158.  - absolute time needed for one test of the mentioned size
  159.  - the same in CPU clock cycles
  160.  - the resulting transfer speed in MBytes per second
  161.  - the cost of the operation in cycles per Byte
  162.  
  163. +-----------------------------------------------------------------------------+
  164. | VIO info    : SVGA, 2 MByte video memory                      |
  165. | Device info : manufacturer S3, chip set 86C968, 2 MByte video memory          |
  166. | Screen      : 1280x1024x256                              |
  167. | Aperture    : 2 MByte @ 0x88000000                          |
  168. | Bus width   : 32 bit between CPU and video memory                  |
  169. +-----------------------------------------------------------------------------+
  170.  
  171. The information about the video system is queried from different parts of OS/2,
  172. so there may be different figures for the same item. That depends more or less
  173. on how careful the developer of the video drivers did the job...
  174.  
  175. +-----------------------------------------------------------------------------+
  176. |      Data flow and bus performance video                      |
  177. |                                          |
  178. | --  Video -> CPU  ----------                              |
  179. |      4K LODSD          :  567.1µs ( 56476T) ->    7.2MB/s (13.79T/Byte) |
  180. | --  CPU -> Video  ----------                              |
  181. |      4K STOSD          :   48.4µs (  4823T) ->  84.6MB/s ( 1.18T/Byte) |
  182. | --  Memory -> Video  -------                              |
  183. | Maximum 4K MOVSD (Hits)     :   48.6µs (  4836T) ->  84.4MB/s ( 1.18T/Byte) |
  184. |      4K MOVSD (Miss+Hit) :   63.3µs (  6304T) ->  64.7MB/s ( 1.54T/Byte) |
  185. | Minimum 4K MOVSD (Misses)   :   86.6µs (  8625T) ->  47.3MB/s ( 2.11T/Byte) |
  186. | --  Video -> Memory  -------                              |
  187. |      4K MOVSD          :  603.4µs ( 60093T) ->    6.8MB/s (14.67T/Byte) |
  188. | --  Video -> Video  --------                              |
  189. |      4K MOVSD          :  941.9µs ( 93813T) ->    4.3MB/s (22.90T/Byte) |
  190. +-----------------------------------------------------------------------------+
  191.  
  192. This is the same as above, obviously the discipline opcode fetch is left out,
  193. but there are more transfer data paths.
  194.  
  195. The figures for data store and move from primary cache into video memory are
  196. more or less senseless on local bus systems and coprocessed video cards, but
  197. give at least an idea how careful these buses are implemented.
  198.  
  199. I don't comment the actual figures, because each - and most probably your -
  200. system is different. Compare yourself, I only say this system is a fast one in
  201. its category...
  202.  
  203.  
  204. 4. How do I start this program ?
  205.  
  206. That's easy: go to a command line and type
  207.  
  208. DFB [options]
  209.  
  210. The following options are currently implemented:
  211.  
  212.   /NOV[ideo] : suppress video testing
  213.   /CC:number : set country code to number, default is from CONFIG.SYS
  214.       49 : Germany         (deutsch)
  215.       43 : Austria         (deutsch)
  216.       39 : Italy         (italiano)  [DFBITA.MSG required]
  217.     else : international (english)
  218.   /MORE      : stops output after each section to ease reading
  219.   /DMP         : dump test values to stderr
  220.            may be redirected to file via 'DFB /DMP [...] 2>filename'
  221.  
  222. Options are not case sensitive !
  223.  
  224. The commands 'help DFB0000' or 'DFB /?' will give you the same information about
  225. the usage of the latest version of DFB.
  226.  
  227. If you have configured your desktop according to your favourite language, DFB
  228. uses this setting (OS2.INI/PM_National/iLanguageFam) before looking at the
  229. country code in CONFIG.SYS. This setting is not present until you touch the
  230. language object in the system setup folder!
  231.  
  232. If you start DFB in a full screen session, video testing will be left out,
  233. since there is no video aperture available. Better use a windowed OS/2 box.
  234.  
  235. To access memory and video for testing, the device driver SSMDD.SYS must be
  236. loaded. It is part of MMPM/2. Be sure, the statement
  237.  
  238. DEVICE=[path]\SSMDD.SYS
  239.  
  240. is in your config.sys file. DFB will tell you if it is not. In this case, only
  241. a small part of the DFB functionality is available (basic CPU type checking).
  242.  
  243. If you don't have MMPM/2 installed but like to get the full DFB functionality,
  244. you must grab SSMDD.SYS from your OS/2 installation media. OS/2 2.1 user find
  245. this driver in the MMPM subdirectory. OS/2 WARP user first need to create a
  246. subdirectory x:\MMTEMP on any partition and then issue the command
  247.  
  248. UNPACK [path]\PACK0 /N:SSMDD.SYS ([path] is path to install media).
  249.  
  250. SSMDD.SYS is then to be found in x:\MMTEMP. Place the driver in any location
  251. you like and insert the DEVICE statement above into your CONFIG.SYS.
  252.  
  253. If you create a minimum boot disk with floppy support only, there is enough
  254. room left to put SSMDD.SYS and DFB.EXE onto it too. So you may enter your
  255. favourite computer shop and check out the different machines offered by a mere
  256. boot from this floppy disk.
  257.  
  258.  
  259. 5. Is there danger to use this program ?
  260.  
  261. Yes, there is !
  262.  
  263. First, I am human so I am error prone :-)
  264.  
  265. Second, DFB goes to the bones of your computer. Therefore I don't guarantee that
  266. it will interact with any running program or any active device in a totally
  267. harmless manner. If you plan to start DFB, I recommend to stop any other running
  268. user process and wait until all sensitive devices are idle. That is not a must
  269. but reduces any risks (I run DFB in parallel to my communications software,
  270. active CD-ROM and active audio system).
  271.  
  272.  
  273. 6. A wish of the author
  274.  
  275. Since I have access only to Intel machines, I would appreciate if you run the
  276. tests using the dump option and drop me an email with a description of your
  277. system and the resulting dump output. The command to achive this is
  278.  
  279. DFB /DMP 1> anyname.RES 2> anyname.DMP
  280.  
  281. If you can't reach me through Internet or Fidonet you may send your message to
  282. Compuserve 100275,3253 (take this as a last resort only, it's a friends account,
  283. so this route will take some time). I am interested in any AMD (the new K5/K6-
  284. types only!)/IBM/UMC/CYRIX/TI/ST CPU and the brand new P24, P55, M2 and what
  285. else may come. Everybody who provides me *new* information may consider him-/
  286. herself as a registered user of a forthcoming shareware version (if there will
  287. be one ...).
  288.  
  289. Since there were so many people, who sent me their results and expressed their
  290. feelings about DFB, I could not respond to all of them individually in my scarse
  291. spare time. So I'd like to say 'thank you very much!' this way. I case of
  292. problems (they are more seldom with every new release) I try to investigate
  293. them and assist as much as I can.
  294. ---
  295.