From: Bill Kelly Date: 2004-10-11T13:33:19+09:00 Subject: Re: Performance of Ruby Hi, From: "David Ross" > > Remeber now.. you are using windows. You will get a faster statistic if > you are on a BSD system(doesnt mean linux). The BSD stack is one of the > fastest implementations. Is there a place to download this benchmark > program you created? The program was supposed to be attached to the message... Perhaps the attachment got stripped somehow? It seems to have come through on the mailing list OK... maybe it got stripped before making it out to Usenet? Here's a link: http://bwk.homeip.net/ftp/ruby/tcptest.rb Caution, file contains CRLF. Anyway, I have two linux boxes here next to my desk, and a mac OS X box, in addition to the win2k box... I haven't tried the program on the other systems yet... I should attempt to clarify that I'm not trying to make any claims of any nature about anything this program does, nor claiming its results are particularly significant. I wrote it because the OP's question reminded me that the program I'm working on now, in ruby, may need to handle a fair number of clients. So I just wanted to get a feel for what the, er, empirical maximum throughput rates seemed to be for my ruby code. For what it's worth, I see similar degree of degradation relating to smaller chunk sizes on Linux as win32. This is using just a single client, for 10 seconds: chunk-size: server=1024, client=2048 10.005472 seconds, MB in: 170.26 (17.02 MB/sec), MB out: 137.35 (13.73 MB/sec) chunk-size: server=1024, client=64 10.003608 seconds, MB in: 12.08 (1.21 MB/sec), MB out: 142.10 (14.20 MB/sec) Note that this is using puts(), I'll have to try send() and see whether the results differ... (And again, one would of course expect more overhead using a smaller chunk size.... But I confess to being surprised it's that significant.) Regards, Bill