Cygwin Filesystem Performance degradation 1.7.5 vs 1.7.7, and methods for improving performance

Yoni Londner
Tue Sep 28 04:59:00 GMT 2010


 > What is /mnt/hgfs/C in this case? How is it mounted?

.host:/ on /mnt/hgfs type vmhgfs (rw,ttl=5)

I am now preparing an easy to use scandir/stat performance testing 
program that will perform it in various methods and printout comparison 
results in an easy to use manner.
It will compare cygwin API (to allow us to see how cygwin1.dll changes 
affect performance), and various native Windows APIs - so we can see how 
much room there is for improvement.

I hope to be able to post this program tomorrow.


~$ cat /etc/fstab
# /etc/fstab: static file system information.
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
proc            /proc           proc    defaults        0       0
/dev/sda1       /               ext3    errors=remount-ro 0       1
/dev/sda5       none            swap    sw              0       0
/dev/hda        /media/cdrom0   udf,iso9660 user,noauto     0       0
/dev/fd0        /media/floppy0  auto    rw,user,noauto  0       0
# Beginning of the block added by the VMware software
.host:/                 /mnt/hgfs               vmhgfs  defaults,ttl=5 
    0 0
# End of the block added by the VMware software

On 22/9/2010 3:44 PM, Christopher Faylor wrote:
> On Wed, Sep 22, 2010 at 07:50:14AM +0200, Yoni Londner wrote:
>> Hi,
>>> I'm not exactly concerned about Linux being way faster accessing an NTFS
>>> drive.  After all it's the OS itself and comes with it's own NTFS driver
>>> which obviously is streamlined for typical POSIX operations.
>> I did not test&  compare to using the Linux NTFS, rather I compared with
>> Linux on VMWARE using the same Windows NTFS.SYS (via the same
>> kernel32.dll APIs):
>> Cygwin: "C:/cygwin/bin/ls.exe /bin" ->  cygwin1.dll ->  kernel32.dll ->
>> NTOS kernel ->  NTFS.SYS driver ->  HD
>> linux: "/bin/ls /mnt/hgfs/C/cygwin/bin" ->  glibc ->  linux kernel ->
>> VMWARE hgfs driver ->  vmware_player.exe (on Win32) ->   kernel32.dll ->
>> NTOS kernel ->  NTFS.SYS driver ->  HD
>> As you can see the VMWARE path is much longer than Cygwin, and it passes
>> the same APIs and NTFS.SYS driver, and yet it executes much faster.
>> This helps us understand that there is a lot that still can be done in
>> Cygwin's filesystem performance.
> What is /mnt/hgfs/C in this case?  How is it mounted?
> cgf

More information about the Cygwin-patches mailing list