home *** CD-ROM | disk | FTP | other *** search
/ Club Amiga de Montreal - CAM / CAM_CD_1.iso / files / 510.lha / SPSTransfer_v1.01 / SPSTran.doc.pp / SPSTran.doc
Encoding:
Text File  |  1991-05-07  |  13.7 KB  |  334 lines

  1.  
  2.  
  3.      ------------------------------------------------------------
  4.                 SPS UTILITIES - Transfer Rate Analysis
  5.      ------------------------------------------------------------
  6.  
  7.                            SPSTransfer v1.01
  8.  
  9.                     ©1991 Silicon Prairie Software
  10.                          All Rights Reserved.
  11.  
  12.            Transfer Rate Analysis written by David Plummer.
  13.         
  14.      This  software  is  not, nor has it ever been, public domain
  15.      software.   It  is  freely  distributable software, with the
  16.      following restrictions:
  17.  
  18.         It  may  not  be  distributed  in disk collections or by
  19.         similar method if the charge for distribution, including
  20.         the media charge, exceeds seven (7) US dollars.
  21.  
  22.         It  may not be included with other software materials as
  23.         part of a commercial package without the express written
  24.         permission of the author(s).
  25.  
  26.         This  software  and  its  documentation  files  must  be
  27.         distributed together, without modification.
  28.  
  29.         Explicitly, this software may be distributed in the Fred
  30.         Fish software library.
  31.  
  32.      NOTE:   These  distribution  criteria  apply  only  to  this
  33.      particular  product  and are not indicative or applicable to
  34.      any  other  product  that  may or may not be produced by SPS
  35.      software or its agents.
  36.  
  37.  
  38.      Changes v1.01
  39.      ~~~~~~~~~~~~~
  40.  
  41.         - Changed parameter format to standard -option style.
  42.  
  43.         - Added support for explitly stating transfer block size.
  44.  
  45.         - Added support for devices that are neither OFS nor FFS.
  46.  
  47.         - Changed timing scheme slightly to provide more
  48.           consistent results.
  49.  
  50.         - Multiple devices can now be tested without exiting the
  51.           program and re-running it.
  52.  
  53.  
  54.      What is SPS-Tran?
  55.      ~~~~~~~~~~~~~~~~~
  56.  
  57.         SPS-Tran  is  a  transfer  rate  analysis program for the
  58.      Amiga  series of computers, and allows the user to determine
  59.      the  maxiumum  data  transfer  rate  for an AmigaDOS storage
  60.      device,  such  as  Hard  Drives,  Floppy Drives, CD-ROMs, or
  61.      Virtual Ram Drives.  The only requirements are:
  62.  
  63.         - The device must be block-addressabe.
  64.  
  65.      [  It  used  to  be  required that the device be OFS or FFS,
  66.      which still applies unless the -f option is specified on the
  67.      command line.  See usage notes below. ]
  68.  
  69.      As  you  can  see  this  includes  pretty  much every device
  70.      currently  available.   A  notable exception is the standard
  71.      RAM disk, which does not employ the normal filesystem.
  72.  
  73.      Why SPS-Tran?
  74.      ~~~~~~~~~~~~~
  75.  
  76.         SPS-Tran does one thing, and does it well:  it determines
  77.      the  maximum  data transfer rate, REGARDLESS OF FILE SYSTEM.
  78.      It  goes  directly  to  the  device, independant of the file
  79.      system,  and  reads blocks from the device.  It does so in a
  80.      system-legal  way,  but  avoids the overhead of directories,
  81.      hash tables, and the like.
  82.  
  83.         Why  take  this  approach?   Because  many  similar  test
  84.      programs on MS-DOS series computers take a similar approach,
  85.      such as CoreTest by Core Laboratories.  In order to make any
  86.      form  of  valid  comparison,  some  similar  method  must be
  87.      available on the Amiga.
  88.  
  89.         Many  other  existing  "hard drive speed" programs simply
  90.      create  a  large  file  on the hard drive, seek into it, and
  91.      repeatedly  read  it.   The  results are obviously dependant
  92.      upon  several  other factors, such as the file system, drive
  93.      fragmentation,   and   so  on.   SPS-Tran  eliminates  these
  94.      factors,  and  tests reads only, "ceteris peribus" (the only
  95.      Latin I know!).  It gives you results based solely upon the
  96.      CPU, controller, and drive.
  97.  
  98.         As  an  additional  benefit,  SPS-Tran  does  not need to
  99.      create  its  own test file, and therefore can test read-only
  100.      devices.
  101.  
  102.         SPS-TRAN NEED NEVER WRITE TO THE DEVICE BEING TESTED.
  103.  
  104.         If  your  drive is connected via a modern controller such
  105.      as  the  A2091  from Commodore, SPS-Tran will generally also
  106.      inform you of the make and model of the storage device.
  107.  
  108.  
  109.      Using SPS-Tran
  110.      ~~~~~~~~~~~~~~
  111.  
  112.         To  use  SPS-Tran,  simply  type "SPSTran" at the command
  113.      line prompt or double-click its icon from Workbench.
  114.  
  115.         Once  SPS-Tran  is  running,  select  a  drive  from  the
  116.      available  drive list.  You may also select QUIT to exit the
  117.      program.  All valid OFS ans FFS drives will be available for
  118.      your selection.
  119.  
  120.         As soon as you have selected the device to test, SPS-Tran
  121.      will  begin  the testing.  You will be shown all of the test
  122.      data  as  well  as  a graphical display of the read and seek
  123.      speeds.   When  you  are done reviewing the information, you
  124.      may exit the program by pressing the right mouse button.
  125.  
  126.         If you wish to run a more intensive test than the default
  127.      four second read test, you may specify the time in seconds
  128.      on the command line.  
  129.  
  130.      Example:  SPSTrans -s 60        (Runs a one minute read test)
  131.  
  132.         You may also force a specific transfer block size if you
  133.      know your drive is doing sector translation (for example,
  134.      you know your drive has 34 sectors but it reports 17).  You
  135.      can specify the transfer block size, in kilobytes, on the
  136.      command line.
  137.  
  138.      Example:  SPSTrans -t 64         (Forces a 65536 bytes block)
  139.  
  140.         For  devices  such  as CD-ROMS that do not use the OFS or
  141.      FFS  filing  systems,  you  can  optionally  specify  the -f
  142.      parameter,   which  will  enable  you  to  select  from  all
  143.      available devices.
  144.  
  145.      Data Transfer Test
  146.      ~~~~~~~~~~~~~~~~~~
  147.  
  148.         The  data  transfer  test  determines  the  maximum  data
  149.      transfer rate between the physical media and the system RAM.
  150.      The following factors will affect the maximum transfer rate:
  151.  
  152.         » Device Speed
  153.         » Controller Speed
  154.         » Computer Speed
  155.         » Device Interleave
  156.         » System Load
  157.  
  158.      as  well  as  other possible factors.  The test will run for
  159.      four  seconds, and the average continuous transfer rate will
  160.      be displayed as a graph and in numerical form.
  161.  
  162.  
  163.      Seek Test
  164.      ~~~~~~~~~
  165.  
  166.         The seek test is made up of two major portions:
  167.  
  168.         » Full Stroke Seek
  169.         » Track to Track and Back Seek
  170.  
  171.         Many programs tend to perform a few 1/3 full stroke seeks
  172.      and  call it the average seek time.  I find this test fairly
  173.      meaningless,  so  I  chose  to  combine the two above tests,
  174.      repeated 4 and 50 times, respectively, and display the total
  175.      time  elapsed.   It is _not_ a drive ms rating.  If you need
  176.      to  know  that,  look  in your drive documentation:  they'll
  177.      gladly  give  it to you, plus or minus the time for the head
  178.      to settle, etc.  Obviously, the lower the number, the faster
  179.      the seek mechanism.  Note that nothing need be read in this
  180.      test:  it is purely a test of the seek time.
  181.  
  182.         Some  devices  do  not  support  the extended device seek
  183.      command  and  will  therefore give erroneous results (ie:  0
  184.      seconds).   These  results  should  simply be ignored.  Most
  185.      devices,   such  as  scsi.device  and  trackdisk.device,  do
  186.      support this command.
  187.  
  188.  
  189.      Comparisons
  190.      ~~~~~~~~~~~
  191.  
  192.         The following results were achieved using SPS-Tran:
  193.  
  194.         SYSTEM   DRIVE          HDS SECS CYL  SEEK   READ
  195.         ---------------------------------------------------------
  196.         A500     DF0             2   11  79   5.0s     19.7 K/sec
  197.         A500     EPSON DHM-755   2   34  614  2.6s    226.3 K/sec
  198.         A2000    (A2090)         6   17  871  ----    274.2 K/sec
  199.         A500     ST157N-01       6   26  612  2.5s    593.2 K/sec
  200.         A3000    QUANTUM LP52S   1   49  2085 0.5s   1919.2 K/sec
  201.         A3000    RAD:            2   11  79   ----   3779.1 K/sec
  202.  
  203.      Notes: 
  204.  
  205.      -  The A2000 controller did not report drive identity. 
  206.      -  The Epson drive was connected via the A590 xt.device. 
  207.      -  The Seagate drive was connected via the A590 scsi.device.
  208.      -  Your mileage may vary.
  209.  
  210.  
  211.  
  212.      Technical Notes
  213.      ~~~~~~~~~~~~~~~
  214.  
  215.         Because  SPS  Tran  goes  directly  to the device without
  216.      using  a  filesystem,  it  will  provide true transfer speed
  217.      tests.  Because the filesystem overhead is removed, SPS Tran
  218.      will  provide  results  that are generally higher than other
  219.      disk-speed-type   products.    The   results  are,  however,
  220.      completely valid in the context of device to memory transfer
  221.      rates.
  222.  
  223.         The  only  major compromise I made, and I hated to do it,
  224.      was  to  use the extended device command SEEK to perform the
  225.      seek  tests.   I  only  have  documentation  for  using this
  226.      command  for  the  trackdisk  device.  Rest assured it works
  227.      equally  well  with  the  Commodore scsi device used for the
  228.      A590,  A3000,  and  A2091.   It  may even be documented as a
  229.      standard  device  command,  and  I  may not know it.  In any
  230.      event,  if you should have a device that will not handle it,
  231.      SPS  Tran will detect this and skip the seek test procedure.
  232.      In  that event, you will likely receive a seek test duration
  233.      of 0.0 or 0.1 seconds, and this result should be discarded.
  234.  
  235.  
  236.         SPS  Trans  automatically  selects  the  optimum transfer
  237.      block  size  based  on  the  geometry  of  the  drive.  This
  238.      requires  that  the  cylinder  count  from  the mountlist or
  239.      filesystem  information  be  correct.   A  drive  that lists
  240.      itself  as  1  head,  1  cylinder,  and some extremely large
  241.      sector  count may not perfrom as well as if the sector count
  242.      was   "correct",   because   the  transfer  block  size  was
  243.      incorrectly  calculated.   SPS  Tran does its best to guess,
  244.      however, and will usually select a good transfer block size.
  245.  
  246.         SPS  Tran also reads the entire transfer block (up to the
  247.      MAXTRANSFER  rating  of your device) as one contiguous unit,
  248.      unlike  some  MS-DOS  programs  that must read on a track by
  249.      track  or even sector by sector basis.  For that reason, the
  250.      Amiga may read drives faster than MS-DOS systems, everything
  251.      else being equal (ceteris peribus!).
  252.  
  253.         An additional factor to consider when comparing your read
  254.      speed  results  to  MS-DOS  systems  is  that  generally the
  255.      maximum  data  transfer  block  for  MS-DOS  systems will be
  256.      limited to 65536 bytes.  The maximum SPS-Tran transfer block
  257.      size  is  4294967295,  or  the  drive's  MAXTRANSFER rating,
  258.      whichever is the smallest.
  259.  
  260.  
  261.      Accuracy
  262.      ~~~~~~~~
  263.  
  264.         System  load will effect your results, such as moving the
  265.      mouse around during the tests.  I could do a Forbid() during
  266.      the test, but I prefer to avoid that sort of thing.  I could
  267.      provide  this  as an option, if anyone feels the need.  It's
  268.      not  that  hard  to  resist  the temptation to play with the
  269.      mouse   during   the   test...   my  results  showed  little
  270.      difference  during  the  forbidden  state as compared to the
  271.      idle state.
  272.  
  273.         Some  may feel that 4 or 6 or 8 seconds is too short of a
  274.      test  to  be  accurate.   As  long  as  system  load remains
  275.      relatively constant throughout the test, the results will be
  276.      very  accurate.   During  development, two tests were tried:
  277.      one  for six seconds, the other for six minutes.  In the six
  278.      second  test,  on  a  stock  8  MHz  Amiga,  using the A2091
  279.      controller  and  an  ST157N-01  drive,  the  sustained  data
  280.      transfer  rate  was  595722  bytes  per  second.  On the six
  281.      minute  test,  the  rate  was  596522.   This is an accuracy
  282.      rating  of  99.87%.  On a system such as the Amiga, however,
  283.      all  things  are  rarely always equal.  For that reason, you
  284.      may  wish  to  run several tests and take the average of the
  285.      runs, or better still, specify a longer test duration.
  286.  
  287.         
  288.  
  289.         There  will  be times when the timer device is pre-empted
  290.      or  the  timer message does not make it through at the exact
  291.      moment  due to some other high-priority event occuring.  You
  292.      may validate your results by successive runs.  On my system,
  293.      unless  something  high-priority  happens  or  the system is
  294.      bogged  down,  the  transfer  rating is generally consistent
  295.      down to the 10s of bytes.
  296.  
  297.         This  version  does  its  timing  in a slightly different
  298.      fashion.  Version 1.0 simply sent a timer message specifying
  299.      the  duration  (ie:   4  seconds) and kept reading until the
  300.      message  was returned from the timer.  If the transfer block
  301.      was  large,  it  was  possible that one extra transfer block
  302.      could be read in some instances if it just came in under the
  303.      wire.   Version 1.01 does the same thing, but times the read
  304.      from start to finish, via a seperate call, regardless of the
  305.      test duration.
  306.  
  307.      Comments
  308.      ~~~~~~~~
  309.  
  310.         Your  comments/criticisms/suggestions/donations  are most
  311.      gratefully accepted.  I'd love to hear what you think of SPS
  312.      Trans,  both  in terms of performance and user interface.  I
  313.      may be reached via the following:
  314.  
  315.         NON-US MAIL:      David Plummer
  316.                           2326 Francis Street
  317.                           Regina, Saskatchewan
  318.                           Canada    S4N 2P7
  319.  
  320.         INTERNET:         PLUMMERD@MAX.CC.UREGINA.CA (Preferred)
  321.                           DAVID.PLUMMER@F70.N140.Z1.FIDONET.ORG
  322.  
  323.         FIDONET:          David Plummer  F70, N140, Z1
  324.  
  325.         PHONE:            (306) 352-0358
  326.  
  327.      ============================================================
  328.                            __   
  329.                       __  ///  IBMUBMWEALLBM4IBM
  330.                       \\\///                    
  331.                        \XX/                     
  332.  
  333.      ============================================================
  334.