Subject: RE: Cygwin Performance - especially on a network
From: [email-masked] (Earnie Boyd)

10 Apr 1998 09:20:45 -0700
Message-ID: <[email-masked]>
Content-Type: text/plain
To: [email-masked]
Cc: [email-masked]

>From: Kevin Hughes <[email-masked]>
>Reply-To: "[email-masked]" <[email-masked]>
>To: "'Earnie Boyd'" <[email-masked]>
>Cc: "[email-masked]" <[email-masked]>
>Subject: RE: Cygwin Performance - especially on a network
>Date: Wed, 8 Apr 1998 13:34:47 +0100
>
>Earnie,
>	sorry about the long delay but I have been refining the measures etc. 
and 
>doing other work.

That's ok, I've been to busy to notice any delay, except for the mailing 
list delay.

>
>The latest set of results for the open/fstat/close sequence are as 
follows: 
>(where times are in milliseconds (I hope))
>
>
>Local file access
>
>	Min	"Typical"	Max
>Gnu/Cygnus	2.8	3.0	4.4
>Gnu/NT	0.73	0.8	1.7
>VC++	0.75	0.8	2.85

Do you mean "Mingw32" when you say "Gnu/NT"?  If so, I can believe it 
based on packages I've ported to Mingw32.

>
>Remote file access
>
>	Min	"Typical	Max
>Gnu/Cygnus	10.8	11.0	18.6
>Gnu/NT	3.4	3.5	5.0
>VC++	3.4	3.5	6.0
>
>I have also looked at the file accesses per open/fstat/close

Did you catch the "Memory Leak" post concerning open/close?  16 bytes of 
memory lost per issue of open/close pairs.

>
>	Local	Remote
>Gnu/Cygnus	20	23
>Gnu/NT	5	7
>VC++	5	7
>
>The cost and accesses ration perfectly - the cost is all down to the 
extra 
>accesses that the cygnus layer issues.
>

Sounds correct to me.

>I guess this is all to do with the emulation of the Unix filestore 
>semantics but I do not understand why. I would have thought that a 
simple 
>stat to determine if its a link and then an open would be sufficient - 
but 
>I am very naive in this.
>
>Any information much appreciated.

Have a look at the documentation for Win32 stat and fstat.  Inode is 
returned as 0, so cygwin32 emulates it.  There is no true "link" on 
Win32 and lstat isn't supplied in the libraries by MS.  File privilege 
bit masks have to be emulated to the extent of getting a true UNIX 
filesystem emulation.  And, the directory has to be mapped against the 
cygwin32 mount table to find the file.  I'm sure there are other things 
going on to; but, don't know what as yet.

>
>Kevin
>
>PS - I have read that NtOpenFile bypasses the win32 layer and allows 
mixed 
>case file names to be passed.
>

I think that Sergey has already incorporated Mixed Case on NTFS into the 
cygwin32.dll based on earlier posts.

-        \\||//
---o0O0--Earnie--0O0o----
[email-masked]
------ooo0O--O0ooo-------

PS: Did you try your test on a FAT file system?

______________________________________________________
Get Your Private, Free Email at http://www.hotmail.com
-
For help on using this list (especially unsubscribing), send a message to
"[email-masked]" with one line of text: "help".