ReadFile 1.50 - http://www.winimage.com/readfile.htm
Usage: READFILE                     test memcopy speed
       READFILE filespec            test file reading (bypass cache)
       READFILE filespec /d         test file reading + copy mem
       READFILE filespec /c         test file reading + compute CRC32
       READFILE filespec /s         test file reading + rec. dir parse
       READFILE filespec /l         test file reading + listing output
       READFILE filespec /b         enable the file system buffering
       READFILE filespec /m         use file mapped IO (incompat. with /t & /o)
       READFILE filespec /a         calculate Adler code
       READFILE filespec /g         calculate MD5 code
       READFILE filespec /t         using small buffer (64 KB instead 1 MB)
       READFILE filespec /r         slow CRC-32 computation
       READFILE filespec /o         using overlapped I/O
       READFILE filespec /h         using multi-thread
 filespec is file specification with joker, by example : *.*


READFILE with filespec parameter test speed of readfile file. Example :
C:\> READFILE.EXE *.ima
ReadFile 1.30 - http://www.winimage.com/readfile.htm
File=  3860 Kb/Sec with   1474560 bytes : Distwi25.ima
File=  4084 Kb/Sec with   1474560 bytes : DISTWI22.IMA
Average =   3850 Kb/Sec with   2949120 bytes (total : 765 msec)


To create a text file with a list of CRC code for a tree, use
readfile * c l S > list_crc.txt

To create a text file with a list of MD5 code for a tree, use
readfile * g l S > list_crc.txt

Without the /b parameter, the file are opened with FILE_FLAG_NO_BUFFERING
parameters, so it will not copy the file in the cache.

I suggest you test it on big (more than 1 MB), unfraggmented file for testing
the real transfer speed of your hard disk (or network unit) in sequential read.

Under Windows NT, it's VERY useful start performance monitor before use READFILE:
- Start PERFMON.EXE
- Add CPU in the chart

With Windows 95, you can use WinTop from Kernel Toys, downloadable from this URL:
http://www.microsoft.com/windows/software/krnltoy.htm

With a modern SCSI BusMaster interface (By example, Adaptec 2940), you'll have
very small CPU usage while reading (10 % of CPU for 4 MB/Sec), with a normal
IDE Interface, you'll have 100 % of CPU used by the disk operation !

The latest Pentium motherboard with Intel triton chipset, a BusMaster IDE driver 
also give you this option. The latest Bus Master IDE Triton drivers can be found at:
http://web2.airmail.net/ksm/software.htm
Note Win95 OEMSR2 (the OEM only version of Windows 95 build in August 1996) already
contain a BusMaster IDE driver.

Another usage of ReadFile is produce a listing of file with CRC (can be useful for
checking integrity). You can go to a directory and enter :
READFILE *.* /c /s /l > LISTCRC.TXT to produce a file with CRC

Multi-thread (under Win95 and WinNT) and Overlapped I/O (under WinNT) use advanced
Win32 API for compute CRC (and/or Adler) calcul and read the disk at the same times.
This is useful with a good SCSI adapter or BusMaster IDE.

The slow CRC computation, from /r2 (slow) to /r9 (very very slow) is useful. /r mean
/r3.

Gilles Vollant
info@winimage.com
