Mail Archives: cygwin/2008/05/01/01:58:03
--------------060203070109030302080906
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
Corinna Vinschen wrote:
> On Apr 30 01:58, Charles Wilson wrote:
>> 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.
>
> Ok, so the ftpd using mmap is faster, one way or another.
Not according to my numbers:
mmap, topo 1, 4k buffers: 9-10 Mbps
mmap, topo 2, 4k buffers: 14-15 Mbps
NO mmap, topo 1, 4k bufs: 9-10 Mbps
NO mmap, topo 2, 4k bufs: 14-15 Mbps
>> If [disabling mmap] *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.
>
> There might be a bug lurking somewhere. Could you create a very simple
> testcase which basically behaves like ftpd for debugging?
attached.
gcc -o server server.c
gcc -o client client.c
Add an entry to /etc/services on both machines, like:
example 22725/tcp
or you could edit the two files and use a hardcoded port number, instead
of a service name and getservbyname()
And don't forget to open a hole in your server machine's firewall for
that port.
On the server machine, invoke as:
$ server <filename>
This file is the one that will be transferred to the client. This works
for me:
$ dd if=/dev/urandom of=ReallyBigFile bs=1M count=250
On the client:
$ client <hostname_of_server> <filename>
<filename> is where the client will save the transferred data.
server is a traditional daemon, which forks off a copy to handle each
new connection. That copy is the one you want to debug/strace/whatever.
With this pair of programs, I saw "sane" memory usage in all cases when
NOT using mmap, and I saw "insane" memory usage for all mmap cases
except when blocksize was 1k.
To switch among the various cases, edit the server.c file to
#define/#undef HAVE_MMAP, and change the value of LARGE_TRANSFER_BLOCKSIZE.
--
Chuck
--------------060203070109030302080906
Content-Type: application/octet-stream;
name="ftpd-mmap-troubles.tar.bz2"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
filename="ftpd-mmap-troubles.tar.bz2"
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
--------------060203070109030302080906
Content-Type: text/plain; charset=us-ascii
--
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/
--------------060203070109030302080906--
- Raw text -