B19, performance using fopen()/fclose() on FAT16

Larry Hall lhall@rfk.com
Wed Dec 23 20:10:00 GMT 1998

You're going to see some slow-down as a result of the emulation 
environment (Cygwin).  Still, there are some configuration issues
that may be effecting your performance.  First, make sure your 
CYGWIN32 environment variable does not specify "ntea".  Second,
you might want to make sure you have a user directory specified
in your passwd file, that it exists, and that HOME points to it.
I suggest unsetting MAILCHECK too.  These last two relate to 
whether Cygwin "mistakenly" checks mail and/or accesses the network
during operations.  If you watch for network activity during your
tests and see some, this would indicate at least part of your trouble.
The fact that FAT is so much longer than NTFS indicates to me that 
"ntea" is set...


John Blanton wrote:
> Conducting performance tests of several porting tools we noticed
> dramatically poor performance for the following case using FAT16 on
> Windows NT:
>     for (count = 0; count < (int) REPETITIONS; count++)
>     {
>         fi = fopen("testfiles/file1", "a");
>         fclose(fi);
>     }
> REPETITIONS is set to 100,000.  The test requires over an hour to
> complete.  There is constant disk activity.  Here are some test timings:
> GNU-Win32           398.3
> Linux (FAT)                6.2
> Linux (Linux FS)          6.1
> U/WIN                      41.0
> Win32                       14.8
> The times are in seconds and are combined user and system time as
> reported by the UNIX time utility.  Wall clock time for GNU-Win32 is
> over an hour, as mentioned.
> The tests were conducted again using NTFS on Windows NT, and the time
> for GNU-Win32 dropped to about 70 seconds, still much higher than the
> others.
> John Blanton
> Alcatel Corporate Research Center
> Richardson, TX
> 972-996-2956
> -
> For help on using this list (especially unsubscribing), send a message to
> "gnu-win32-request@cygnus.com" with one line of text: "help".
For help on using this list (especially unsubscribing), send a message to
"gnu-win32-request@cygnus.com" with one line of text: "help".

More information about the Cygwin mailing list