SmartVersion

What is SmartVersion?
Download SmartVersion?
Order SmartVersion?
 

WinImage

What is WinImage?
Download WinImage
Frequently asked question
Order WinImage
WinImage online documentation
WinImage Self-extractor
WinImage SDK
WinImage beta
 

Free Software

BootPart
Extract
ReadFile
Asbench
Other tools
 

Miscellaneous

Forum
Links
Personal Information

ReadFile 1.60: Read File for testing speed of file transfer

Regional mirror courtesy of
Internet.bs domain registrations
This small freeware utility allows you to test the speed of memory copy and disk transfer operations under Windows 95/98/ME and Windows NT/2000/XP/2003 server. This is a Win32 console application. C Source included. There is a page for x64 MD5 (and SHA1) optimized assembly code

You may download readfile here:

readfile161.zip (535 515 bytes). Contain both executable and souce.

readfi16.zip (495 270 bytes). Contain both executable and souce.

readfi15.zip (296 776 bytes). Contain both executable and souce.

readfi15_vs2005.zip (672 746 bytes). Contain more version of executable and souce.


There is also a page with a 64 bits performance test with readfile.

Usage :

READFILE test memory copy speed
READFILE filespec test file reading (bypass cache)
READFILE filespec /d test file reading + memory copy
READFILE filespec /c test file reading + CRC32 computation
READFILE filespec /s test file reading + recursive directory parsing
READFILE filespec /l test file reading + listing output
READFILE filespec /b enable file system buffering
READFILE filespec /m use file mapped IO (incompatible with /t & /o)
READFILE filespec /a calculate Adler code
READFILE filespec /g calculate MD5 code, using MD5 source from OpenSSL
READFILE filespec /sh calculate SHA1 code, using SHA1 source from OpenSSL
READFILE filespec /t use small buffer (64 KB instead 1 MB)
READFILE filespec /r perform slow CRC-32 computations
READFILE filespec /o use overlapped I/O
READFILE filespec /h use multi-threading
READFILE filespec /gd compute MD5 code using MD5 source from L. Peter Deutsch (see http://sourceforge.net/project/showfiles.php?group_id=42360)
READFILE filespec /c e# compute CRC32 using one of the source code, where # is :
  • 1 : CRC32 code from zLib 1.14
  • 3 : new optimized CRC32 code from zLib 1.21 (see http://www.zlib.net/ )

  • READFILE without parameters tests the speed of copying big blocks of memory (1 MB)

    READFILE with filename parameters tests the speed of reading files. For example :

    C:\> READFILE.EXE *.ima

    ReadFile 1.60 - 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)

    The files are opened with the FILE_FLAG_NO_BUFFERING parameter, so the operating system will not cache file reads.

    I suggest that you test it on big (more than 1 MB), unfragmented files for finding the real transfer speed of your hard disk (or network unit) during sequential reads.

    Under Windows NT, it's VERY useful to start the performance monitor tool before using READFILE:

    - Start PERFMON.EXE

    - Add CPU in the chart

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

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

    The latest Pentium motherboard with the Intel triton chipset, a BusMaster IDE driver, will also give you reduced CPU usage. The latest Bus Master IDE Triton drivers can be found at: http://www.bmdrivers.com. For Windows 4.0, see information about DmaCheck.

    Microsoft site contain a information about DmaCheck (KB article Q191774 with DmaCheck information, link to download DmaCheck). For hard disk greather than 8 GB, see also article Q183654 and Q197667. If you have not installer the Service Pack 4 (or greather) of Windows NT4, get updated Atapi.sys (with both large disk and Dma support with DmaCheck) on the atapi.exe link on Microsoft site.
    But on somes computers, the DmaCheck cannot enable BusMaster DMA. If your moterboard contain Intel chipset, you can try the Intel BusMaster driver 2.05 for Windows NT4 (nt205_00.exe). The benchest.com site contain a Windows NT 4 benchmark with and without busmaster enabled.


    On Windows 2000 and Windows XP, you need only check the DMA parameter in the Device Manager. (Device Manager -> IDE ATA/ATAPI controllers -> Primary and Secondary Ide Channel -> Properties -> Advanced settings).
    Note: Win95 OEMSR2 (the OEM only version of Windows 95 built in August 1996) and Win 98 already contain a BusMaster IDE driver.

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

    Multi-threading (under Win95 and WinNT) and Overlapped I/O (under WinNT) use the advanced Win32 API for computing CRC (and/or Adler) values and reading the disk at the same time. This is useful with a good SCSI adapter or a BusMaster IDE.

    The slow CRC computation option, from /r2 (slow) to /r9 (very very slow) may be useful. /r means /r3.

    If you are interrested in benchmarking, also try AsBench.

    Copyright Gilles Vollant Software, 1999-2005