help-smalltalk
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Help-smalltalk] [bug] Performance degradation in TCP.Socket


From: Robin Redeker
Subject: [Help-smalltalk] [bug] Performance degradation in TCP.Socket
Date: Fri, 02 Nov 2007 11:23:36 -0700

Issue status update for http://smalltalk.gnu.org/node/119 Post a follow up: http://smalltalk.gnu.org/project/comments/add/119

Project:      GNU Smalltalk
Version:      <none>
Component:    Bindings (other)
Category:     bug reports
Priority:     normal
Assigned to:  Unassigned
Reported by:  elmex
Updated by:   elmex
Status:       active

I've encountered a problem with datatransfer with sockets.
When more data than readBuffer or writeBuffer is being
handled in the following smalltalk program a serious
performance degradation occurs:

http://www.ta-sa.org/files/txt/9de8fcc9b170b42440f087db036736a3.txt

I've written a Perl script which measures how many times per second one
can send a specific amount of data to the smalltalk echo server in the
example above.
See:

http://www.ta-sa.org/files/data/echo_performance_test

You will need the AnyEvent module from CPAN and the Event module
probably (maybe also works without).

Here is a sample run with default buffer sizes:

http://www.ta-sa.org/files/txt/a00d8a9d093a8bf8d4acb17ad5a9bf9c.txt

I've discovered that 256 is exactly the writeBuffer size of a
TCP.Socket. Setting that to a higher value increases the performance
for 257 byte packets and bigger packets,
until it hits the readBuffer size, then the performance goes down as
before.

It's maybe some weird interaction between the writer and reader thread,
I don't really know.






reply via email to

[Prev in Thread] Current Thread [Next in Thread]