On Fri, 07 Sep 2001, Henning Brauer wrote:

> On Fri, Sep 07, 2001 at 08:49:14PM +0200, Matthias Andree wrote:
> > > Furthermore, what makes you think QMQP is not faster than SMTP? 
> > Benchmarks. QMQP vs. SMTP made no difference on a K6-2/300 running
> > FreeBSD 4.x (The limiting factor is qmail's ineffective queue design,
> > combined with the unability to use good file systems such as softupdates
> > ffs or Linux' ext3 or reiserfs which would boost throughput of incoming
> > mail by a factor of 2 roughly).
> 
> What's that for a benchmark?

One aimed at figuring how efficient one-to-one-mailings over low-latency
links are, neglecting most of DNS and SMTP client overhead.

Inject 1000 mails via SMTP through 20 concurrent connections. Have qmail
deliver them to a different, faster machine in the same network segment
(10base2) that extracts the mail, counts and discards it (smtp-sink).
Wait until queue is empty, clock the entire process. Redo via QMQP.
Enable soft-updates, redo the test with Postfix, and without QMQP with
Sendmail and Exim.  Figure qmail ramps up delivery rate big time after
it has done preprocessing.

qmail needs 30,000 write operations for these 1,000 mails, Postfix needs
6,250. Exim needs 10,000, Sendmail about 9,500. (These figures per mount
-v on FreeBSD).

All for SMTP:

qmail on the average writes 3.2 mails/s, it would do around 6 - 7 if it
was safe on softupdates. exim doesn't cope with the highly concurrent
injection and does 2.7 (it does 9.3 when only 5 processes inject).
sendmail delivers 8.5 mails/s in this benchmark, Postfix 15.3. Remote
machine accepts 152 mails/s. mails as counted by recipients altogether.

After that, do a similar test, injecting 100 mails to 10 recipients each,
without VERP. 10 recipients are on the same machine.

In the 100/10 case: exim 91/s, postfix 125/s, qmail 24/s, sendmail 56/s.
Remote accepts 1111 mails/s.

For QMQP:

500/1 injected by 20 processes: Postfix does 2500 writes, qmail 15200.
Postfix employs softupdates, safe, regardless of what Dan may tell you
to justify qmail's inefficient queue, since Postfix has support for
softupdates. Postfix sends 17.2 mails/s, qmail 3.3 mails/s.

100/10: Postfix 167/s, 500 writes, qmail 25/s, 3000 writes.

Note the entire test is pretty I/O bound.
Micropolis 4345WS (7200/min UWSCSI) attached to an AM53C974 (Fast SCSI)
based controller, FreeBSD 4.3-RELEASE (4.4-RC for the QMQP and sendmail
tests). ffs.

Now, who's telling that local I/O is not the bottleneck again? Those
write figures speak for themselves.

> I must admit I didn't benchmark, but on my systems (with dedicated fast SCSI
> disks for the queue) qmail-ldap's in-cluster-deliveries are noticeable
> faster if not ways faster than SMTP deliveries.

Whatever the unofficial qmail-ldap is. I didn't benchmark that, I used
the FreeBSD qmail port. That's an "original" qmail.

"in-cluster" somewhat reeks of getting rid of local I/O. Care to
explain?

Reply via email to