Second speed test

Jim Levie jim at ENTROPHY-FREE.NET
Sun Sep 22 22:43:28 IST 2002

On Sun, 2002-09-22 at 15:09, Julian Field wrote:
> I have fixed a couple of bugs today, and it's now even faster.
> Same hardware as before, same configuration, same dataset.
> 4.00.0a3 processed 20,000 messages in 104.6 minutes.
> This scales up to 275,334 messages per day.
I think it might be even better than that, based on the tests that I've
been doing. The test box is a 1Ghz Pentium III w/384Mb and a single IDE
drive. A laptop actually, so the disk speed is on the low side. Using a
parallelism of 4 I'm seeing sustained scanning rates (Sophos &
SpamAssassin) of about 9400 messages/hour. That scales to some 225,600
messages per day. Due to limitations on the laptop it's a struggle to
keep the input queue full all the time with the V4 code. So the actual
scanning rate is probably a bit better than I'm reporting. And I'd
expect to even better performance on a Dual processor box with fast SCSI

The test that I'm running isn't using and RBL checks but is using a High
Score delete at 15. My test set up feeds messages in one "batch" sized
at at time and keeps the Incoming Queue Dir at or a bit greater than the
parallelism * batch size. That makes things look more like a real world

I haven't yet tried any other degrees of parallelism to see where the
sweet spot is, but based of running parallel makes I'd expect it to be
near 4 for a single CPU.

Based on other tests that I've run with the V3 code, I suspect that
large input queues cause MailScanner to run slower than it's capable of
in a real world scenario. On the same test box and with the same
messages and as similar MailScanner V3 configuration as possible I see
sustained scanning rates of 4000 messages per hour when using a batch
size of 100. I haven't done extensive testing, but it looks like smaller
batches are better, something like 50-100 messages and that seem to hold
true for both V3 & V4.

When I slam 15k messages into the input queue I don't get scanning rates
nearly as good. I didn't keep the numbers for a single large queue run
because I was more interested in determining the performance of what one
sees on a real mail server. Perhaps I'll re-run my sample with a monster

BTW: If you'd like my test scenario code (a couple of perl scripts) I'd
be glad to share them.
The instructions said to use Windows 98 or better, so I installed

More information about the MailScanner mailing list