home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / cpm / utils / dskutl / restorea.lbr / COMPARE.VZR / COMPARE.VER
Text File  |  1987-06-14  |  6KB  |  114 lines

  1. Below is some data comparing the various versions of the RESTORE utility.
  2. Items compared include program size, number of active directories able to be
  3. handled, amount of disk I/O done, and selected execution times.
  4.  
  5. The hardware used for all these comparisons was a 9.216 MHz SB180 with a
  6. Seagate ST225 hard disk partitioned into 4 logical drives of 5184K each.  The
  7. controller was a Xebec 1410A controlled through the SCSI port on the SB180's
  8. COMM180-M-S expansion card.  The allocation group size on this disk (the BLS
  9. value in the DPB) is 4096 bytes.
  10.  
  11. Section 1:  Program sizes.
  12.  
  13. The following sizes are the actual sizes of the assembled program, in bytes,
  14. as reported by the linker, as well as the space required to store the program
  15. on disks with BLS values of 1K, 2K, and 4K.
  16.  
  17. Program            Size             Disk Block Size
  18. Name            (bytes)        1K blocks        2K blocks        4K blocks
  19.  
  20. RESTOREI.COM        4421        5K        6K        8K
  21. RESTOREZ.COM        4225        5K        6K        8K
  22. FRESTORI.COM        3319        4K        4K        4K
  23. FRESTORZ.COM        3154        4K        4K        4K
  24.  
  25. Section 2:  Directory-size Capabilities.
  26.  
  27. The following shows the maximum number of active directory entries that each
  28. version of the program can handle.  Remember that the maximum number of
  29. directory entries that may be on the disk (the DRM value) is of no
  30. significance.  Only active directory entries are seen by the program.
  31. Included is an estimate of the amount of disk space that the indicated number
  32. of directory entries can control.  This assumes that the 'average' directory
  33. entry in the directory of a hard disk with 4K allocation groups has 2.8 blocks
  34. allocated to it.  I have found this to be an average value for the 16-19
  35. Megabytes of data that is usually on my hard disk.  All values assume a 48K
  36. TPA and 4K blocks.  You can add 32 directory entries and 352K of disk space to
  37. the numbers shown for each kilobyte of TPA over 48K that you have in your
  38. system.
  39.  
  40. Program        Max # of Active        Approximate Kbytes of disk
  41. Name        Directory Entries    storage controlled
  42.  
  43. RESTOREI.COM        1268            13948
  44. RESTOREZ.COM        1274            14014
  45. FRESTORI.COM        1174            12914
  46. FRESTORZ.COM        1179            12969
  47.  
  48. So, each version has more than enough space to handle the directory of any
  49. 'standard' CP/M disk (maximum logical disk size of 8192K), as well as most
  50. disks on 'expanded' CP/M-type systems (32 Meg per disk).  The only people who
  51. might have problems are those with large non-standard disks with a DRM of 2048
  52. and 90% of the files on the disk only have one block allocated, OR those with
  53. a block size larger than 4K.  For 8K blocks, reduce the numbers above by 256
  54. entries and 2816K each.
  55.  
  56. Section 3:  Disk Read/Write Data.
  57.  
  58. The major advantage of RESTORE over FRESTORE is the significant reduction in
  59. the amount of disk reading & writing required.  The following data shows, for
  60. each of the four partitions of my disk, the statistics printed by the
  61. indicated version of the utility after it finishes analyzing the disk, with
  62. one modification:  since both versions do read-after-write CRC verification of
  63. each group written to the disk, the number of reads shown below is twice the
  64. number of reads reported by F/RESTORE.
  65.  
  66. For each item, the values shown are for RESTORE/FRESTORE, i.e. the value
  67. printed by RESTORE, a '/', and the value printed by FRESTORE.
  68.  
  69.                         Logical Drive
  70.                        A     B       C         D
  71. # of Active Directory Entries          423    394      391        278
  72. # of Blocks Allocated             1007       973      937       1177
  73. # of Directory Entries requiring    20/       23/       23/         60/
  74.     relocation (RESTORE only)
  75. # of Groups requiring relocation
  76.     (FRESTORE only)              /1003    /922      /925        /1148
  77. # of Directory Rewrites            20/417    23/383    23/385      60/269
  78. # of Group Reads (including the       248/3348  228/3720  270/3696     794/4540
  79.     read after each write)
  80. # of Group Writes           124/1674  114/1860  135/1848     397/2270
  81.  
  82. Some totals for the entire disk:
  83.                     RESTORE        FRESTORE
  84. # of Directory Rewrites              126         1454
  85. # of Group Reads             1540        15304
  86. # of Group Writes              770         7652
  87.  
  88. In summary, FRESTORE does about 10 times as much disk I/O as RESTORE.
  89.  
  90. Section 4:  Execution times.
  91.  
  92. The times required to restore disks A & C above were as follows:
  93.  
  94. RESTORE  - Disk A        12 min 13.9 sec
  95. FRESTORE - Disk C                 1 hr 15 min 2.2 sec
  96.  
  97. So, RESTORE recovered a disk with comparable fragmentation in about one sixth
  98. of the time FRESTORE would have taken.  Note, however, that it only moved one
  99. fifteenth the amount of data.  This is because RESTORE spends about half its
  100. time (on my system) in compute-bound procedures (rebuilding the free-space
  101. table after every fourth directory rewrite).  So, on a slower CPU, RESTORE
  102. might take one fourth the time that FRESTORE would rather than a sixth.  Also,
  103. the 8080 version of RESTORE is significantly slower compared to the Z80
  104. version (about 6% slower) than the 8080 version of FRESTORE is when compared
  105. to the Z80 version of that program (less than 1% slower).
  106.  
  107. But, the advantage of RESTORE is not only in reduced execution time, but, as
  108. stated above, in reduced disk thrashing.  For those with drives that have a
  109. tendency to overheat under heavy use (see the .DOC file for comments), the new
  110. version of RESTORE should cause a markedly lower disk error rate (ideally,
  111. zero) than these users had after using the original, fully-relocating version.
  112.  
  113. Steve Dirickson        7 June 87
  114.