Charles, > Well, one of the differences between ftpd-1.3.2 and ftpd-1.5 is that > the newer version uses mmap on the (local) file. ftpd.c is the /only/ > source file in inetutils that uses mmap. > > So, I recompiled with HAVE_MMAP turned off (but still using 4k > chunks). Give this a try: > > http://cygwin.cwilson.fastmail.fm/ITP/ftpd-no-mmap-4k.exe.bz2 > > I get behavior here which is very similar to what I reported for the > 4k-WITH-mmap version: > (1) sane memory profile > (2) topology one, 9-10 Mbps 2-3% cpu > (3) topology two, 14-15 Mbps, 4-6% cpu [*] > > I'm not sure what benefit mmap has in this case -- unless you can > exploit some zero-copy kernel code for transferring data from disk to > ethernet device. But I don't think Windows has anything like that. I > certainly don't *see* any benefit, in my limited testing on this set > of hardware. > > If this *does* fix the problem, it may point to an issue with > cygwin-1.5's mmap implementation, or with XP's handling of the > underlying NtCreateSection()...mmap is not supposed to be > CPU-intensive.
Ok, with this version memory stays at a constant 3600kb, cpu usage hovers at around 50%, and performance is quick (55 seconds to transfer the file). Its *possible* that the cpu usage is a red herring - the server is running in VMware and that may introduce some peculiarities of its own; however in.ftpd from inetutils 1.3.6 did maintain very low cpu usage. Thanks, Ant. -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/